本文適用於已在 Shadowrocket(小火箭)設定自己的伺服器或訂閱,且能連線但瀏覽速度緩慢的情況。依序檢查本機網路、流量路徑、個別伺服器、協定參數、DNS 與自動連線條件;每次只變更一項,用相同目標重新測試,區分延遲、傳輸速度與連線失敗,最後留下可供複查的故障紀錄。
一、先釐清「慢」的狀況:連線等待還是傳輸速度低
開關已開啟,只能表示系統隧道已啟用,無法證明目標伺服器到網站之間的整條路徑都正常。網頁初次開啟要等很久、開始下載後速度很慢、影片播放時斷時續,都是不同情況。測試前先記下發生時間、目前使用的 Wi-Fi 或行動網路、Home 選取的伺服器,以及 Global Routing 目前的選項。
連線測試通常只涵蓋路徑中的一部分。單次延遲數值較低,不代表持續傳輸一定較快;某個網站回應緩慢,也不代表所有伺服器都無法使用。不要直接用延遲數值推算下載速度。
| 觀察到的狀況 | 優先檢查項目 | 紀錄方式 |
|---|---|---|
| 首次開啟等待較久,載入後正常 | DNS、建立連線、TLS 交握 | 記錄首次與再次造訪的差異 |
| 持續傳輸速度偏低 | 本機頻寬、伺服器負載、出口線路 | 在相同網路下,以相同資源連續重測 |
| 頻繁中斷或逾時 | 網路封包遺失、伺服器連接埠、UDP 可連線性 | 記錄切換網路前後的結果 |
| 只有一個網站速度慢 | 該網域的規則與目標網站狀態 | 再選一個不同網域作為對照 |
二、本機網路:先比較 Wi-Fi 與行動網路
本機網路是後續所有測試的共同前提。公共 Wi-Fi 尚未完成網頁認證、路由器壅塞或無線訊號不穩,都可能造成 Shadowrocket 連線後速度緩慢。以下以 iPhone 為例;iPad 的行動網路對照測試,須視裝置本身是否具備相應功能而定。
- 在 Home 關閉連線開關,使用 Safari 開啟目前網路原本就能直接瀏覽的網頁。如果這時也很慢,先處理本機網路,不要立刻修改伺服器參數。
- 完成 Wi-Fi 網頁認證,暫停裝置上的大量流量作業;靠近路由器後再測一次。不要同時修改 DNS 或 Global Routing。
- 返回 Home,重新選取原本的伺服器並開啟開關,以相同目標重新測試。
- 關閉 Wi-Fi,確認已切換至行動網路,再以相同伺服器與相同 Global Routing 選項測試。請留意行動數據用量。
- 記錄兩種網路下是否能建立連線、是否只有首次造訪較慢,以及持續傳輸時是否中斷。
結論:先固定能重現問題的網路
如果同一伺服器只有在特定 Wi-Fi 下持續異常,優先檢查該網路的認證、壅塞與傳輸限制;先別用更換協定來掩蓋本機網路問題。
三、Global Routing:確認流量是否經過預期路徑
在 Home 開啟 Global Routing,記下目前使用的是 Proxy、Direct、Config 還是 Scene。排查前先記錄原本的設定,測試後再還原。不要把切換模式當成加速手段:模式只決定流量如何選擇路徑,不會憑空增加線路頻寬。
| 選項 | 排查時的用途 | 確認方式 |
|---|---|---|
| Proxy | 以全域代理路徑作為對照 | 確認 Home 目前選取的伺服器,再瀏覽相同目標 |
| Direct | 以直接連線作為對照 | 只測試目前網路原本就能直接連線的目標 |
| Config | 依目前設定的規則與策略分流 | 前往 Config,確認實際啟用的檔案 |
| Scene | 依設定的場景條件套用相應設定 | 檢查目前網路所對應的場景,不要將其視為固定的代理路徑 |
如果使用 Proxy 時正常、切換到 Config 後變慢,接著應檢查目標網域符合哪條規則,以及規則指定的策略實際選用了哪台伺服器。在 Config 中查看目前使用的設定,依序確認 DOMAIN-SUFFIX、IP-CIDR、GEOIP 與 FINAL;FINAL 是前面沒有規則符合時才使用的預設規則,不能取代已先符合的規則。
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY
以上僅示範規則語法,不是建議直接取代的完整設定。example.com 是示例網域;實際排查時應以發生問題的目標為準。若使用策略群組,也要檢查群組內目前選取的項目,不要只因規則末尾寫著 PROXY,就認定流量使用了 Home 中預期的伺服器。
四、個別伺服器與線路:交叉比對現有設定
本文所說的伺服器或「節點」,都是指使用者現有服務中的連線項目。伺服器入口、入口到出口之間的線路,以及出口到目標網站的路徑,任何一處壅塞都可能降低速度。用戶端顯示的延遲,無法單獨判斷是哪一段發生壅塞。
- 在 Home 對目前的伺服器執行 Connectivity Test,記下測試方式、結果與時間;測得延遲不代表已驗證大量資料傳輸。
- 保持本機網路與 Global Routing 不變,切換至自己現有的另一台伺服器,瀏覽相同目標。
- 如果只有一台伺服器異常,開啟其編輯頁面,對照原始資料核對位址、連接埠、協定與認證參數。
- 如果多台伺服器都只有在連線至同一個網站時速度緩慢,再測試另一個目標,以區分出口至目標的路徑問題與普遍的傳輸問題。
- 在不同時段重複相同測試。若只有晚間出現異常,可視為負載或壅塞的線索,但仍須以伺服器端狀態或線路紀錄佐證。
訂閱網址可能包含存取憑證。向自己的服務業者回報時,提供伺服器別名、時間、網路類型與測試結果即可;不要在公開紀錄中附上完整訂閱網址、密碼或私鑰。本手冊僅說明如何檢查自己現有的服務。
五、協定參數:先確認連線條件,再判斷傳輸表現
Shadowsocks、VMess、VLESS、Trojan、Hysteria2 與 WireGuard 的連線條件各不相同,不能只修改協定名稱就拿來比較。測試其他協定必須已有對應的伺服器端設定;連接埠號碼相同,也不代表協定可以互換。例如,連接埠 443 只是連接埠識別,無法據此判斷使用了哪種協定或傳輸方式。
| 協定 | 須與伺服器端一致的項目 | 容易誤判的狀況 |
|---|---|---|
| Shadowsocks | 位址、連接埠、加密方式與密碼 | 認證不符會造成連線失敗,不代表頻寬不足 |
| VMess / VLESS | 使用者識別碼、傳輸類型,以及相應的 TLS、Host、Path 參數 | 傳輸路徑設定錯誤,可能在建立連線時逾時 |
| Trojan | 密碼、TLS 與伺服器端要求的 Server Name | TLS 交握失敗可能會表現為頁面持續載入 |
| Hysteria2 | 認證、TLS、UDP 可連線性與相應的頻寬設定 | 以 QUIC 為基礎的連線會受到目前網路 UDP 條件影響 |
| WireGuard | 金鑰、Endpoint、隧道位址及路由相關參數 | 有設定項目不代表 UDP 交握已完成 |
在 Home 開啟伺服器編輯頁面,逐項比對自己保存的原始設定。不要為了測試而關閉憑證驗證;應修正伺服器名稱、憑證或裝置時間等實際問題。也不要將 MTU 和頻寬參數任意設成很大的值:MTU 會影響封包大小,頻寬參數應依相應服務的說明設定,並非通用的加速開關。
錯誤:connection refused
原因與解法:目標連接埠或中間設備主動拒絕連線;先在 Home 的伺服器編輯頁面確認位址與連接埠,再請自己的服務業者確認該連接埠正在監聽。反覆修改分流規則無法解決連接埠遭拒的問題。
錯誤:i/o timeout
原因與解法:某次讀寫未能在期限內完成,單憑這則訊息無法判斷原因是壅塞還是無法連線;記錄錯誤發生於測試、交握或傳輸階段,切換本機網路後再用原伺服器測試。
以上是連線過程中可能出現的錯誤訊息;實際顯示內容會依失敗環節與底層實作而異,並非所有連線失敗都會顯示相同文字。回報時請保留實際錯誤原文,不要把所有異常都一概稱為「速度慢」。
六、DNS 與 On Demand:處理首次造訪慢及切換網路後的異常
DNS 會影響網域解析;連線重複使用、解析快取與目標網站快取,也會改變再次造訪時的表現。因此,首次開啟較慢、重新整理後變快,只能作為解析或建立連線問題的線索。直接將 HTTPS 網址改成 IP 也不是可靠的驗證方式,因為憑證、Server Name 與網站分流可能隨之改變。
- 在 Settings 中檢查 DNS 相關設定,同時檢查 Config 目前檔案中的 DNS 設定,先記下現有的解析位址與覆寫項目。
- 確認目前網路能否連線至所設定的解析服務,以及代理路徑與直接連線是否有不同結果。不要同時更換多個解析位址與分流規則。
- 只調整一個已確認有問題的項目,重新連線後造訪相同網域,並記錄首次與後續造訪的差異。
- 如果只有在切換 Wi-Fi 或行動網路後出現異常,請前往 Settings → On Demand,記下目前的自動連線條件。
- 暫時關閉 On Demand,在 Home 手動中斷連線後再重新連線,確認目前網路下的實際結果;測試完成後還原原有的自動連線設定。
結論:分開檢查自動連線與傳輸效能
如果手動重新連線後恢復正常,但切換網路後再次出現異常,先確認 On Demand 條件與 Scene 對應的設定,不要直接將問題歸因於協定傳輸效能。
七、常見問題與可提交的排查紀錄
為什麼延遲較低的伺服器,下載速度反而比較慢?
延遲測試與持續傳輸測量的是不同項目。固定 Global Routing 與目標資源,在 Home 切換兩台現有伺服器並分別重複測試;記錄傳輸是否穩定,不要只依單次延遲排序。
只有晚上速度變慢,是不是選錯協定?
先使用原協定、原伺服器與相同目標,在兩個時段重新測試,再切換本機網路。若多次出現相同時段規律,將紀錄交給自己的服務業者確認負載與線路;不能只憑發生時間就判定是協定問題。
切換至 Proxy 就正常,之後都要這樣用嗎?
先切回 Config,並在 Config 目前使用的檔案中查找目標網域對應的規則與策略群組選取項目。修正錯誤比對或失效策略後再測試;Proxy 是用來對照的條件,不是必須長期保留的修正方式。
更新訂閱後速度變慢,需要重新新增嗎?
先確認 Home 目前選取的項目是否有變化,再開啟該項目核對位址、連接埠與協定。若服務業者已調整參數,請以有效設定為準;不要為了恢復舊的測速結果而反覆覆寫現有項目。
完成排查後,紀錄應能讓其他檢查者重現當時的條件,而不只是寫著「很卡」。請依照下方清單記錄本次實際觀察,不必提供認證資訊。
- 發生時間與網路:記錄當地時間,說明使用 Wi-Fi 或行動網路,以及切換網路後的結果。
- 連線條件:伺服器別名、協定、連接埠、Global Routing 選項與 Config 目前使用的檔名。
- 目標與狀況:網域、首次載入等待或持續傳輸問題,以及是否只影響單一網站。
- 對照結果:另一種網路、另一台現有伺服器,以及暫時切換至 Proxy 後是否有變化。
- 錯誤紀錄:保留實際錯誤原文,提交前移除訂閱 token、使用者識別碼、密碼與金鑰。
Shadowrocket 是 Apple 平台的付費用戶端,主要供 iPhone、iPad 使用,唯一取得管道為 App Store。開發者為 Shadow Launch Technology Limited,App ID 為 932747118。用戶端一次性購買費用與使用者現有服務的線路費用分開計算;系統需求、支援購買的裝置與適用範圍,請以 App Store 頁面標示為準。