Shadowrocket 速度慢怎麼辦?節點、線路、協定與本機網路分層排查

Shadowrocket 速度變慢,可能與節點、線路、協定或本機網路有關。本文逐層排查,並提供可直接在 iPhone 上驗證的方法。

本文摘要

延遲數值正常,不代表傳輸速度也正常。排查時先固定測試目標,分辨是首次開啟慢、持續傳輸慢,還是間歇斷線,再依序檢查本機網路、現有節點、連往節點的線路、協定參數及規則命中情形。本文適用於已有自己的服務商與訂閱的使用者;每次只變更一個條件,記錄結果後再決定是否保留變更。

先釐清:延遲、傳輸量與首次開啟時間

Shadowrocket 的連線測試反映特定測試方式下的可連線狀態或回應時間,不能取代持續傳輸測試。連線可能很快建立,但後續資料仍會受到壅塞、封包遺失、伺服器負載或目標網站限制影響。不同測試方式測得的延遲也不宜直接比較。

先選一個平常能正常使用的網站,以及一份有權存取、大小固定的檔案。網頁用來觀察首次回應,檔案用來觀察持續傳輸量;不要將不同網站的結果當成同一條線路的對照,也不要同時執行多個傳輸工作。

可觀察到的情況優先檢查項目驗證方式
首次開啟需等待,開啟後正常DNS、連線建立、目標回應比較首次與再次開啟同一頁面
檔案持續傳輸速度很慢線路、節點負載、目標限速連續觀察同一檔案 30 秒
傳輸速度忽快忽停封包遺失、無線訊號、壅塞固定節點,比較 Wi-Fi 與行動網路
只有一個網站速度慢網站本身、規則、通往目標的線路使用同一節點存取另一個不同網站

注意單位:Mbps 是每秒兆位元,MB/s 是每秒兆位元組。單純換算時,8 Mbps = 1 MB/s;實際傳輸還包含協定額外負荷。例如「延遲 80 ms,檔案速度 0.5 MB/s」只是一種可能的紀錄組合,無法據此判定節點正常或異常。本文數字僅用於說明紀錄方式,並非實測結果。

第一層:固定條件,檢查 iPhone 本機網路

先確認速度慢是否也發生在 Shadowrocket 之外。對不需代理即可存取的同一個目標,先中斷連線,再進行基準測試;這一步會透過本機網路直接存取,請選擇適合直接連線的內容。若本機基準測試也很慢,應先檢查 Wi-Fi、行動訊號或網路本身。

  1. 記錄目前狀態

    在 Home 記下選取的節點,並在 Home → Global Routing 記下目前模式;同時記錄使用 Wi-Fi 或行動網路、測試目標及時間。先不要清除設定。

  2. 暫停自動連線

    前往 Settings → On Demand,記下原有設定後暫時關閉 On Demand,再回到 Home 關閉連線開關。確認系統沒有立即重新建立連線,以免將代理連線誤當成直接連線的基準。

  3. 檢查本機基準

    暫停裝置上的其他大量流量工作,靠近路由器後存取固定目標。若 Wi-Fi 需要網頁認證,請先完成認證;訊號格數較多,並不代表網路出口沒有壅塞。

  4. 切換接入網路

    重新連線 Shadowrocket 並維持同一節點,分別透過 Wi-Fi 與行動網路測試同一目標,每種條件重複三次。行動網路測試會使用行動數據,請依照自己的資費方案控制測試量。

  5. 還原原有設定

    記錄結果後,還原需要使用的 Global Routing 與 On Demand 設定。若只有一種接入網路速度慢,優先檢查該網路,不要同時修改節點協定與 DNS。

切換 Wi-Fi 與行動網路也會改變電信業者的出口,因此這項對照只能協助定位「本機接入及其後續路徑」,不能單憑結果認定路由器故障。若靠近路由器後速度明顯改善,且同一網路的其他條件未變,才值得優先檢查無線涵蓋範圍或干擾。

第二層:區分節點端點與通往節點的線路

節點是連線的伺服器端點;線路則是裝置到該端點,以及端點到目標之間的資料路徑。節點延遲低,只代表某次探測回應很快;無法說明伺服器可用頻寬、目前負載,或伺服器存取目標網站的速度。地理位置較近,也不一定代表實際路由較短。

更新訂閱會重新取得服務商發布的節點資訊,不會自動增加頻寬。只有自己的服務商確認端點資訊已變更時,才需要在 Home 更新對應訂閱,並確認所選節點仍是預期的項目。更新成功與速度改善是兩回事;更新後應重新記錄端點,避免將節點變更誤認為其他設定的效果。

第三層:核對協定參數,不要盲目更改連接埠

Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuard 各自採用不同的連線與傳輸機制,客戶端參數必須與自己的伺服器設定一致。這些協定不是能在同一節點上任意切換的速度模式。若伺服器只提供一種協定,單獨修改客戶端的 Type 通常會導致連線失敗。

本機接入連線至節點協定交握資料傳輸目標回應

在 Home 開啟目前節點的編輯頁面,依照服務商提供的資訊核對位址、連接埠、認證資料,以及該協定實際使用的 TLS、Server Name、傳輸路徑等參數。只核對適用於目前節點的欄位,不要為了追求速度而額外啟用不相符的選項。

若要比較協定,只比較自己的服務商已提供且參數完整的連線,並盡量固定端點地區、目標、網路與時段。即使其中一項速度較快,結論也只適用於這組測試條件,不能推論某種協定在所有網路環境下都更快。

第四層:確認 Global Routing 與規則的實際命中情形

排查速度前,先確認要求是否經過預期路徑。在 Home → Global Routing 中,Proxy 會將可代理的流量交由代理處理,Direct 使用直接連線路徑,Config 則依目前設定處理。若使用 Scene,請先確認目前場景實際套用的設定與策略;切換場景會讓兩次測試的條件不再一致。

可以暫時使用 Proxy 與 Config,針對同一個目標進行比較,測試後再還原原有設定。如果 Proxy 正常而 Config 緩慢,請優先檢查目標命中哪條規則、使用哪個策略,以及策略最後選取了哪個節點。Proxy 也不代表所有網域的解析方式必定相同,仍須一併檢查 DNS 設定。

[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT
GEOIP,CN,DIRECT
FINAL,PROXY

以上僅為規則段落的語法示意,不建議直接整段取代現有設定。DOMAIN-SUFFIX 依網域後綴比對,IP-CIDR 依 IP 位址範圍比對,GEOIP 依 IP 地理位置比對,FINAL 接收前面規則都未命中的要求。規則會依序檢查;自訂策略名稱也必須在完整設定中有相應定義。

錯誤紀錄:分開處理連線失敗與速度慢

若實際問題是反覆連線失敗,請先排除連線問題,再測試速度。以下是網路記錄中可能出現的錯誤片段;實際內容會依連線階段與底層回傳資訊而異,不保證每次都出現相同文字。記錄錯誤時,請一併保存發生時間、網路與節點資訊。

錯誤:i/o timeout

原因與解法:某個網路讀寫步驟超過等待時間,可能是封包遺失、路徑無法連通或遠端沒有回應。先判斷錯誤發生於解析、連線還是傳輸階段,再固定節點並切換接入網路進行比較;不要只因逾時就重設設定。

錯誤:connection refused

原因與解法:目標端點或路徑中的設備明確拒絕了連線要求,常見原因是該連接埠沒有相應服務。請核對目前節點的位址與連接埠,並向自己的服務商確認端點是否可用。

錯誤:no such host

原因與解法:目前的解析程序未取得所需的主機位址,可能與網域拼寫、DNS 記錄或解析器有關。先確認錯誤中的網域是節點還是目標網站,再檢查相應網域與 DNS 設定。

提交紀錄前,請隱藏訂閱連結、token、密碼、私密金鑰及其他認證資訊。可以保留協定名稱、錯誤片段、網路類型、發生階段與對照結果;這些資訊通常比只有延遲數字的螢幕截圖更有助於找出問題。

常見問題:如何判斷排查結果

延遲很低,為什麼影片仍會緩衝?

延遲只涵蓋探測要求;播放影片還需要穩定的持續頻寬、低封包遺失率,以及內容伺服器正常運作。維持同一節點,分別測試另一段影片與一個固定檔案;若只有某個內容來源速度慢,先檢查該來源及其規則命中情形,不要把低延遲視為頻寬保證。

換一個節點後馬上變快,就能確定原節點有問題嗎?

這表示兩條連線的整體條件不同,但節點負載、路徑和目標出口都可能有所變化。切回原節點再測一次,並維持目標與網路相同;只有在差異能重複出現時,才適合將紀錄提供給自己的服務商進一步確認。

關閉連線後又自動連上,該如何進行基準測試?

先前往 Settings → On Demand,記錄設定後暫時關閉自動連線,再回到 Home 中斷連線。如果裝置還有其他受管理的連線規則,應先確認其狀態。完成基準測試後還原原有設定,避免影響後續日常連線。

所有現有節點都很慢,需要重新購買客戶端嗎?

客戶端購買與線路頻寬是兩回事。先完成本機基準測試,並比較另一種接入網路,再檢查共用的設定與目標。客戶端買斷 ≠ 線路方案;重複購買無法取代對線路、端點與設定的排查。

結尾:保留可重現的對照紀錄

排查結束後,只保留經過重複驗證確實有效的變更,並還原暫時切換的模式與開關。無法確認效果的變更應予以還原,避免多個變因互相疊加,導致下次發生問題時無法比較。可依照下列格式記錄,不必填寫任何認證資訊。

測試目標:同一個網頁或固定檔案
測試條件:同一部 iPhone,暫停其他大量流量工作
接入網路:Wi-Fi / 行動網路
所選連線:自己的節點標籤,不含認證資料
Global Routing:Config / Proxy / Direct / Scene
實際命中:規則、策略、最後的連線出口
觀察時間:每輪 30 秒,每組重複 3 次
紀錄內容:首次回應、持續速度、是否斷線
單項變更:本輪只更換一個條件
還原檢查:設定、模式、On Demand

可靠的結論應明確說明適用條件,例如「同一節點在行動網路正常,在目前的 Wi-Fi 下持續停頓」,而不是直接寫「軟體速度慢」。前者能明確指出下一步檢查方向;後者將本機網路、線路、協定與目標服務混為一談,難以重現。

前往 App Store