Shadowrocket(小火箭)開關開啟,只代表連線功能已啟用,無法證明遠端服務、網域解析與規則路徑都正常。本文適用於已匯入自己的服務商設定,卻遇到整台裝置無法上網或部分 App 無法開啟的使用者。先確認中斷連線時的網路基準,再依序檢查伺服器、Global Routing(全域路由)、DNS 與 Config(設定檔),每次只變更一項設定。
一、先確認無法上網的範圍,保留可還原的設定
先不要刪除 App 或清除設定,以免遺失伺服器參數、目前規則與診斷線索。先記下 Home(首頁)中選取的伺服器、Global Routing 目前的設定,以及 Config 中正在使用的設定檔;含有憑證的截圖只留存在本機。
這條鏈路用來說明排查範圍,不代表所有連線都會依照完全相同的內部順序執行。不同規則可能在比對時觸發解析;伺服器網域本身也可能需要先解析。系統顯示 VPN 標記,不代表鏈路末端已收到回應。
- 關閉 Shadowrocket 連線。先開啟平常可直接瀏覽的網站,再前往路由器管理頁等本機目標,區分網際網路故障與區域網路故障。
- 若中斷連線後仍無法上網,先處理 Wi-Fi 登入驗證、行動數據權限、路由器或電信業者連線問題。此時修改規則通常無法恢復基本網路。
- 確認基本網路正常後再開啟連線,使用同一個網址重新測試。記錄是所有網站都無法開啟,還是只有特定網域、App 或視訊通話失敗。
- 分別使用 Wi-Fi 與行動數據重新測試。若只有一種網路無法使用,優先檢查該網路是否能連到伺服器位址、連接埠或 UDP。
二、檢查伺服器狀態:延遲測試有結果,不代表網頁可瀏覽
在 Home 確認目前選取的是要測試的伺服器,再使用 Connectivity Test(連線測試)查看結果。測試有回應,只能證明當時對應的測試路徑有收到回應,不能據此認定所有目標、DNS 查詢與 UDP 流量都能正常通過。不要只看延遲數字,就略過伺服器參數檢查。
- 位址與連接埠:依照自己的服務商提供的資訊,核對伺服器主機名稱與連接埠。連接埠應填寫遠端服務實際監聽的值,不要把本機代理程式的監聽連接埠當成遠端連接埠。
- 協定與憑證:Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuard 的欄位要求各不相同。保留原有協定,核對密碼、UUID、金鑰或其他驗證欄位,不要為了測試而隨意更換協定。
- TLS 參數:依照原始設定核對伺服器名稱、憑證與裝置時間。伺服器位址可連線,不代表 TLS 驗證一定會通過;不要藉由關閉憑證驗證來掩蓋錯誤。
- 服務狀態:確認帳戶有效、用量尚可使用,且遠端服務正常。若已有的訂閱曾更新,先確認更新成功,再重新選取伺服器,避免繼續測試舊項目。
錯誤:Connection refused
原因:目標端或中間設備明確拒絕連線,常見原因是連接埠沒有服務監聽,或存取政策拒絕連線。
解決方式:先核對遠端連接埠與服務狀態,再請自己的服務商確認監聽與防火牆設定;反覆修改 DNS 無法解決已收到的拒絕回應。
錯誤:Connection timed out
原因:連線未能在指定時間內完成,可能是位址無法連線、封包遺失、遭到過濾或遠端沒有回應。
解決方式:保持設定不變,切換網路後重新測試同一台伺服器,再與自己已有的其他可用設定比對,縮小問題可能出在網路或伺服器的範圍。
錯誤:certificate verify failed
原因:TLS 憑證驗證未通過,可能與憑證鏈、伺服器名稱或裝置時間有關。
解決方式:開啟系統的自動設定日期與時間,核對原始 TLS 參數,並請伺服器管理者修復憑證問題。
以上是連線工具或底層記錄中可能出現的英文錯誤訊息,實際大小寫與前綴可能不同。回報問題時請保留原文,並確認錯誤來自瀏覽器、訂閱更新或代理連線;三者的請求路徑可能不同。
三、檢查 Global Routing:透過短時間比對找出分流問題
在 Home 開啟 Global Routing,先記下原本的選項。Proxy(代理)、Direct(直連)、Config(依設定)與 Scene(情境)代表不同的路由模式,不是四種連線協定。即使伺服器參數正確,路由選擇仍可能將請求送往不適合的出口。
| 模式 | 排查時要注意的行為 | 如何解讀結果 |
|---|---|---|
| Proxy | 以代理連線作為主要路徑進行比對。 | 若同一網址在 Proxy 可用、在 Config 無法使用,接著檢查規則與策略選擇。 |
| Direct | 使用直連路徑,不會以選取的代理伺服器作為出口。 | 若目標原本就需要代理,在此模式下無法開啟,不能證明伺服器故障。 |
| Config | 依照目前設定檔中的規則決定流量去向。 | 查看目標命中的是 DIRECT、代理策略或拒絕動作。 |
| Scene | 依照已設定的情境條件決定路由行為。 | 確認目前網路觸發了哪種情境;不能只因選取了 Scene 就推斷最終出口。 |
- 保持同一台伺服器與同一個測試網址,暫時切換至 Proxy,再重新送出請求。
- 接著切回 Config,重新載入同一個目標。必要時關閉並重新開啟測試 App,避免繼續使用舊連線。
- 若只有 Config 無法使用,檢查目前設定的比對順序與策略;若兩者都無法使用,繼續檢查伺服器與 DNS,不要直接斷定是規則錯誤。
Proxy 下可用只是協助定位問題的線索,不代表必須長期採用此設定來修復。測試結束後請還原原本模式;若需要存取區域網路裝置,也應再次確認本機位址實際使用的出口路徑。
四、排查 DNS:分別確認解析失敗與連線失敗
DNS(網域名稱系統)負責將網域名稱解析為位址。網域解析失敗時,瀏覽器可能會顯示網頁無法開啟,但原因不一定出在遠端代理。先檢查 Settings → DNS,再查看 Config 中啟用的設定檔所含 DNS 項目,確認實際生效的設定及覆寫關係。不要只修改未啟用的設定檔。
這些是協定常用的連接埠值,不表示要將伺服器連接埠改成這些數字。使用加密 DNS 時,上游解析服務也必須能透過目前的網路路徑連線。若建立代理連線前需要先解析伺服器網域,而解析服務又依賴尚未建立的代理,就可能形成啟動依賴問題。
- 先記下原設定:記錄 DNS 上游位址、解析相關選項與啟用中的設定檔,避免多次嘗試後無法還原。
- 再逐項比對:暫時還原先前可用的 DNS 設定,或改用目前網路確實可以連線的解析服務。不要同時更改解析服務、規則與伺服器設定。
- 排除 App 快取影響:變更後重新連線,並關閉再重新開啟測試 App。瀏覽器的安全 DNS、系統加密 DNS 描述檔與 App 快取都可能影響測試結果。
- 檢查 IPv6:若網域解析出 IPv6 位址,但目前出口沒有可用的 IPv6 路徑,應檢查解析結果與路由是否一致;不要將所有雙協定堆疊故障都歸因於伺服器離線。
五、檢查規則順序:確認命中項目與最終出口
只有在 Global Routing 設為 Config 時,目前設定檔中的規則才是本次排查重點。先到 Config 確認啟用中的檔案,再查看失敗目標對應的請求記錄,記下網域、目標位址、命中規則與實際出站策略。若記錄中沒有網域,不要只憑共用 IP 判斷網站身分。
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY
以上僅示範比對順序,並非可完整匯入的設定檔。example.com 是範例網域;PROXY 必須對應實際可用的策略名稱或內建策略。192.168.0.0/16 僅涵蓋一個私有位址範圍,不代表所有區域網路範圍。
DOMAIN-SUFFIX可比對指定網域及其子網域。請將針對性規則放在可能先命中的廣泛規則之前。IP-CIDR依照目標 IP 網段進行比對;範例中的no-resolve表示不因這條 IP 規則主動觸發網域解析,並不代表全域停用 DNS。GEOIP依據 IP 地理位置資料進行比對。它不是網域內容分類器,無法保證某個網站的所有連線都採用相同路徑。FINAL是之前的規則都未命中時採用的最終去向,應放在末尾。若前面的廣泛規則已命中,修改 FINAL 不會改變該請求。
若首頁可以開啟,但登入、圖片或影片載入失敗,請分別查看這些請求。一個頁面可能連到多個網域,主網域規則正確不代表其他資源也會採用相同策略。只修正有證據的目標,並檢查策略組目前選擇是否有效;不要一開始就將整份規則改成同一個出口。
六、依常見情況進一步縮小問題範圍
開關已開啟,也有 VPN 標記,為什麼還是完全無法上網?
先關閉連線,確認基本網路正常,再回到 Home 確認選取的伺服器。使用同一個網址比較 Proxy 與 Config;兩者都無法使用時,先檢查服務狀態、驗證資訊與 DNS,不要只看系統的 VPN 標記。
網頁可以開啟,但語音通話或遊戲連不上?
檢查無法連線的 App 是否依賴 UDP,以及目前的協定設定、伺服器端與所在網路是否允許相應流量。TCP 網頁連線正常,不代表 UDP 也正常。保持伺服器不變,切換 Wi-Fi 與行動數據進行比對,並查看對應的請求記錄。
訂閱更新成功,為什麼連線仍然逾時?
訂閱更新成功只表示設定網址可連線並已取得內容,不代表其中每台伺服器都能使用。返回 Home 重新確認選取的項目,再核對服務商提供的狀態。不要將訂閱網址填入單一伺服器的位址欄位。
鎖定螢幕後或切換 Wi-Fi 後,又無法使用了?
記下故障發生時是否切換網路,檢查 Settings → On Demand 的條件,以及 Global Routing 是否使用 Scene。暫時固定網路並採用明確的路由模式重新測試,再逐項還原自動連線條件。
只有一個 App 無法使用,需要重新安裝 Shadowrocket 嗎?
先比較瀏覽器與該 App 存取同一服務時的情況,檢查該 App 的網路權限、獨立 DNS 設定與請求記錄。若其他 App 正常,優先檢查該 App 相關的連線路徑;重新安裝會移除線索,無法取代問題定位。
七、還原設定並整理可重現的問題回報
找出原因後,先撤銷與問題無關的測試設定。還原原本需要的 On Demand 條件與路由模式,保留已確認有效的單項修正。接著重新連線,在日常使用的網路上測試網頁、登入與需要 UDP 的 App,確認修正沒有影響其他連線。
- 記錄系統平台、網路類型、故障時間,以及是否發生網路切換;版本資訊請從 App 實際介面讀取,不要憑印象填寫。
- 提供可重現的操作順序,例如「中斷連線時可存取;開啟後 Config 無法使用;同一台伺服器下 Proxy 可存取」。並說明每一步是否重新建立連線。
- 附上必要的英文錯誤訊息、命中規則與出站策略。傳送前請遮蔽訂閱 token、密碼、UUID、私鑰與個人網路資訊。
- 伺服器無法使用或帳戶狀態異常時,請聯絡自己的服務商;如有設定理解上的問題,可繼續參閱本站使用手冊與常見問題。
本文假設使用者已經有自己的服務商與訂閱。本站僅說明用戶端設定與故障排查。取得用戶端與線路服務是兩回事;用戶端買斷 ≠ 線路方案。