本文適合已在 Shadowrocket(小火箭)匯入自己訂閱的使用者。選擇伺服器時,先以相同的測試方式排除無法連線的項目,再依目標服務所需地區、協定參數及實際連線狀況判斷。閱讀本文後,可建立一套可重複使用的測試紀錄,而非只依列表中最低的毫秒數切換。本文以使用者已有自己的服務商與訂閱為前提,不討論服務來源的選擇。
一、先確認測試對象與實際連線一致
Home 中選取的伺服器、Global Routing 的目前模式,以及 Config 中的規則,都會影響實際請求的出口。列表中某個伺服器測試成功,不代表開啟網頁時一定會經過該伺服器。尤其在 Config 模式下,目標網域可能符合 DIRECT 規則;此時以網頁開啟速度評估該伺服器,結論便會偏離測試對象。
開始前先暫停大型檔案傳輸,並固定使用同一個 Wi-Fi 或行動網路進行測試。不要一邊切換網路,一邊比較兩台伺服器,否則無線訊號、電信業者路由與伺服器本身的影響會混在一起。
-
確認列表
進入 Home,確認自己的訂閱已展開,且伺服器列表不是空白。若剛更新訂閱,請先重新確認項目名稱與設定,不要假設舊項目仍對應原本的伺服器。
-
固定模式
進入 Home → Global Routing。需要排除規則影響時,可暫時選擇 Proxy,測試後再恢復原本的 Config 等設定。Direct 不適合用來驗證代理伺服器的網頁連線狀況;Scene 的實際行為則須配合所選場景確認。
-
執行測試
返回 Home,執行 Connectivity Test。記錄本次使用的測試方式;ICMP、TCP 與 HTTP 的結果代表不同意義,不要將不同測試方式得到的毫秒數放在一起排名。
-
逐項驗證
選擇一台候選伺服器並啟用連線,再瀏覽固定的目標網頁。對其他候選項重複相同操作,同時記錄連線成功、逾時、首屏等待時間及持續載入狀況。
-
還原設定
比較完成後,恢復日常使用的 Global Routing 模式,並在該模式下再次開啟目標服務。如果結果有變,請優先檢查規則是否符合及所用策略,而不是繼續盲目切換伺服器。
二、延遲數字測到了什麼,沒測到什麼
延遲是特定探測在特定時間完成所需的時間,不代表頻寬,也不是網頁完整載入時間。ICMP 主要反映網路層探測的回應,伺服器可能會限制這類封包;TCP 探測主要檢查指定連接埠的連線狀況;HTTP 測試則還受測試網址、應用程式層回應及所選測試路徑影響。必須先確認測試方式,數字才有比較意義。
列表探測紀錄
- 網路連線
- 使用同一個 Wi-Fi,測試期間不切換行動網路
- 測試方式
- 固定使用同一種方式,不混用結果
- 測試次數
- 每個候選項連續測試 3 次,並保留失敗紀錄
- 判斷重點
- 是否能持續成功,以及結果是否大幅波動
此處建議測試 3 次,僅為操作建議,並非應用程式固定的測試次數。
實際連線紀錄
- 路由模式
- 暫時使用 Proxy,排除 DIRECT 規則的影響
- 目標網址
- 每輪使用相同網頁或同一項資源
- 觀察項目
- 首次開啟、持續載入狀況,以及是否中途停頓
- 複測時段
- 在日常使用時段再測一輪
網頁快取與連線重複使用都會影響結果,不能只比較第二次開啟的速度。
例如,假設某組測試紀錄中,候選 A 的 TCP 結果為 45、48、210 ms,候選 B 則為 85、88、86 ms。這只表示本輪測試中 B 的探測結果較穩定,不代表 B 的下載速度一定較快。這是讀數範例,並非本站對任何伺服器進行的實測。如果 A 瀏覽網頁時也經常停頓,才有更多依據暫時將它移出候選列表。
- 數字低但網頁慢:繼續檢查網域解析、TLS 握手、目標網站回應與伺服器出口負載,不能只靠單一延遲數值判斷故障原因。
- 偶爾逾時:保留逾時紀錄。只挑選成功結果中的最低值,會掩蓋間歇性無法連線的狀況。
- 持續傳輸速度慢:延遲探測傳輸的資料量很小,無法取代持續傳輸測試;頻寬限制與網路壅塞需要另外驗證。
三、選擇地區要看出口用途,不只看距離
伺服器名稱中的地區只是設定標籤,不能單獨用來確認出口位置。入口位址所在位置、實際傳輸路徑,以及目標網站識別的出口 IP 地區,可能各不相同。物理距離較近通常有助於縮短傳輸時間,但繞路、跨網互連與壅塞都可能抵銷這項優勢。
若目標服務設有地區限制,應以該服務實際識別的地區與連線結果為準。帳號地區、定位權限、過往工作階段或目標網站資料庫也可能影響頁面內容。不要只因首頁語言改變,就認定網路出口已成功切換。
- 日常瀏覽:在符合連線需求的候選項中,優先比較穩定性與實際首屏等待時間,而不要預設某個地區永遠比較快。
- 有地區需求的服務:先確認所需的出口地區,再比較同一地區內的候選項。延遲低但不符合用途的項目,沒有比較價值。
- 行動網路情境:在家用 Wi-Fi 表現正常,不代表行動網路下也一樣。切換網路後,應重新執行相同測試。
- 長時間工作階段:登入、通話或持續傳輸期間,減少來回切換出口,避免將工作階段中斷誤判為伺服器無法使用。
四、協定類型看相容條件,不依名稱判斷速度
Shadowsocks、VMess、VLESS、Trojan、Hysteria2 與 WireGuard 的連線方式及參數要求各不相同。協定名稱本身無法決定速度;伺服器部署方式、傳輸方式、網路是否允許對應流量,以及參數是否完整,通常更直接影響可用性。現有訂閱通常已包含這些參數,應先保留原設定進行驗證。
Trojan 通常使用 TLS;VMess、VLESS 的實際傳輸方式與 TLS 設定須配合設定檢查,不能只從協定名稱推斷。Hysteria2 是否可用與 UDP 路徑有關;WireGuard 還需要正確的金鑰、對端及位址設定。TCP 探測無法完整證明 UDP 協定工作階段可用,也不能取代協定驗證。
- 連接埠:443 並非通用的修復值。如果自己的伺服器實際監聽其他連接埠,擅自改成 443 會導致連線失敗。
- TLS:確認設定中的伺服器名稱與憑證要求,日常排除問題時不要以關閉憑證驗證作為處理方式。
- 驗證:密碼、UUID 或金鑰必須與自己的伺服器端設定一致;連接埠可連線不代表驗證成功。
- 傳輸:更改 Type 不會將伺服器轉換成另一種協定,協定與相關參數必須相互配合。
五、依層排查常見狀況
排除問題時,先確認網路連線,再確認伺服器是否可連線,接著檢查協定連線與目標服務。每次只變更一個項目,變更後使用相同目標重新測試。如果同時更換地區、修改協定、更新訂閱又調整規則,即使恢復連線,也很難判斷是哪個步驟起了作用。
延遲很低,為什麼網頁一直載入?
先在 Home → Global Routing 暫時選擇 Proxy,選取該伺服器後重新測試原本的網頁。若仍無法連線,請確認協定驗證、TLS 參數及目標服務是否可連線;若恢復正常,請返回 Config 檢查規則與策略。測試結束後,恢復原本的路由模式。
同一台伺服器在家裡能用,行動網路卻不行?
分別在 Wi-Fi 與行動網路下執行相同測試,並記錄使用的協定。若使用 Hysteria2 或 WireGuard,請特別檢查 UDP 路徑是否受限;也要確認系統是否允許 Shadowrocket 使用行動數據,避免只憑一次逾時就判定伺服器端故障。
剛更新訂閱,原本選取的項目怎麼變了?
返回 Home 確認更新後的列表,重新選擇候選項,並確認 Type、伺服器位址與連接埠。訂閱內容可能會變更名稱或替換伺服器,不能直接沿用舊的測試紀錄。請勿將完整訂閱網址或驗證參數放入公開的問題排除紀錄。
切換伺服器後,為什麼目標網站看起來沒有變?
先確認 Global Routing 不是 Direct,再檢查 Config 是否讓目標流量走 DIRECT。接著關閉舊網頁工作階段並重新瀏覽。如果連線會自動恢復,或切換時受到影響,請前往 Settings → On Demand 確認現有的自動連線條件,避免將自動行為與手動測試混為一談。
六、留下可重複使用的選擇紀錄
最終選擇應同時符合三個條件:目標服務可用、實際連線穩定,以及日常網路環境下的表現可重複。最低延遲可作為初步篩選依據,但不應是唯一標準。建議保留一個日常使用的候選項,以及一個已驗證的備用項;發生問題時先重新測試,再切換伺服器,避免將短暫波動當成長期結論。
- 記錄網路連線、測試時段、測試方式、候選項目及三次探測結果,失敗也要記錄。
- 補充出口用途是否符合需求、固定網頁是否成功,以及載入期間是否停頓;不要記錄密碼、金鑰或完整訂閱網址。
- 訂閱更新或網路連線變更後,重新進行驗證,不要沿用舊項目的速度排名。
- 臨時測試結束後,恢復 Config 等日常設定,並確認目標請求仍採用預期策略。