Shadowrocket(小火箭)的連線開關已開啟,只能表示用戶端已開始連線流程,不能據此判定伺服器、DNS 和網站都能正常使用。本文適合已有服務商與訂閱、能開啟用戶端但無法正常瀏覽網頁的使用者。依照「基本網路 → 伺服器 → Global Routing → DNS → Rule」逐項檢查,每次只調整一個變數,並用同一網址重新測試,最後留下能說明故障原因的紀錄。
先建立可重複測試的基準
排查前記錄目前使用的網路、Home 中選取的伺服器、Global Routing 設定,以及 Config 中正在使用的設定檔。先備份設定,再開始修改。不要一開始就同時更新訂閱、更換伺服器和替換 DNS;否則即使恢復正常,也無法判斷是哪個步驟生效。
以下以 iPhone / iPad 介面中的 Home、Config、Settings 作為操作參考。其他平台請確認相應設定項目,不要把行動裝置的系統 VPN 提示當成所有裝置都相同的畫面。測試時請使用平時能存取、目前確實遇到問題的網站,不要用陌生連結作為判斷依據。
-
暫停按需連線
先記下 Settings → On Demand 原本的狀態,排查期間暫停自動觸發,避免手動關閉連線後又被自動開啟。測試完成後恢復原設定。
-
檢查基本網路
關閉 Home 的連線開關,開啟平時可直接瀏覽的網頁。若仍無法開啟,先處理 Wi-Fi 登入驗證、路由器斷線或行動數據權限,不要繼續修改規則。
-
固定測試目標
選一個可直接瀏覽的網址和一個無法開啟的網址,分別記錄結果。每輪測試都重新載入相同的完整網址,避免混淆不同網站的狀態。
-
重新建立連線
確認沒有其他 VPN 連線同時執行,再開啟 Shadowrocket 連線開關。切換設定後重新送出請求,不要以瀏覽器已快取的頁面判定是否恢復正常。
確認伺服器確實可用
Home 中有伺服器項目,不代表該伺服器仍然有效。先確認選取的是預計使用的項目,再執行 Connectivity Test。測試結果會因測試方式和目標而異:出現延遲只代表這次測試通過,無法證明所有網域、協定和網站都能存取;一次逾時也不能直接證明整份訂閱失效。
開啟項目的編輯資訊,逐項比對服務商提供的參數。位址、連接埠、驗證資訊、加密方式和 TLS 相關欄位應相互配合。伺服器連接埠沒有通用預設值,不要把網頁常用的 443 當成所有協定的連接埠。若伺服器位址使用網域名稱,也要先確認該網域能正常解析。
- 所有項目都逾時:先從 Wi-Fi 切換到行動網路重新測試。若只有其中一種網路失敗,請檢查該網路的存取限制,而非批次修改伺服器參數。
- 只有一個項目失敗:使用訂閱中另一個已知可用的項目比對;並向原服務商確認失敗項目的狀態、流量額度與有效期限。
- 更新後仍指向舊位址:在 Home 更新自己的訂閱,並核對更新結果與項目內容;更新成功只表示資料已取得並解析,不代表遠端服務可用。
- 更新本身失敗:保留原有設定,先確認自己的訂閱連結有效且網路可正常存取。不要將私人訂閱 URL 貼到公開討論區,其中的 token 可能具有帳戶權限。
若錯誤詳細資訊中出現以下原文,可依相應方向縮小排查範圍。不同協定和系統可能顯示不同提示;以下是錯誤線索,不代表介面一定會出現完全相同的文字。
錯誤:connection refused
原因與處理方式:遠端或中間設備明確拒絕連線,常見原因是連接埠未監聽或存取政策拒絕。請核對伺服器位址與連接埠,並向自己的服務商確認監聽狀態;不要靠反覆修改 DNS 處理連接埠遭拒的問題。
錯誤:i/o timeout
原因與處理方式:作業未能在時限內完成,可能與網路路徑、遠端回應或解析等待有關。先確認記錄中是哪個階段逾時,再切換網路或使用自己已有的可用項目比對;不能只憑這項提示判定密碼錯誤。
錯誤:no such host
原因與處理方式:網域解析未取得可用結果。先確認錯誤中的網域是伺服器網域還是目標網站網域,再檢查拼字、DNS 設定及該網域是否仍然存在。
使用模式區分規則問題
進入 Home → Global Routing,先查看目前設定,再進行短時間比對。Proxy、Direct、Config、Scene 不是連線品質等級,也不代表越後面的模式越穩定。尤其不要因為連線開關已開啟,就認定目前請求一定經過代理伺服器。
| 設定值 | 檢查說明 | 排查方式 |
|---|---|---|
Proxy | 透過代理路徑處理請求,不依照一般設定規則逐條分流。 | 用來確認選取的伺服器能否完成目標存取;仍須考量 DNS、協定和系統路由等因素。 |
Direct | 透過直連路徑處理請求。 | 用來比對目前網路的直接存取能力;連線開關開啟不會自動將請求改為代理存取。 |
Config | 依照目前設定的規則決定請求策略。 | 若 Proxy 正常、Config 失敗,優先檢查規則命中結果與選取的策略。 |
Scene | 依據已設定的情境條件選擇處理方式。 | 檢查目前觸發的情境及其設定;為減少變數,可暫時切換至明確的 Proxy 或 Config 進行比對。 |
判斷方向:先保留成功的連線方式
在相同網路、伺服器和網址下,若 Proxy 能開啟網頁、Config 卻不行,先保留伺服器參數,改查目前設定的命中規則和策略群組;不要先重新安裝應用程式或重新匯入所有訂閱。
若 Proxy 和 Config 都失敗,不能直接歸咎於規則。請先回頭測試伺服器,再檢查 DNS。完成比對後,恢復原本需要的 Global Routing 設定,不要把暫時使用的測試模式當成已修復的正式設定。
區分解析與連線問題
DNS 負責將網域名稱解析為位址,但後續連線仍可能在伺服器、TLS 或目標網站階段失敗。瀏覽器一直轉圈,不能單獨證明是 DNS 出錯;反過來,DNS 有回傳位址,也不代表能連上該位址對應的服務。請根據請求記錄中的網域、解析結果和錯誤階段綜合判斷。
在 Config 找到目前使用的設定,開啟編輯內容,檢查 [General] 下的 dns-server。若已有自訂 DNS,先備份原值,再單獨進行比對。以下只展示使用系統 DNS 的設定寫法,並非要將整份設定檔替換成這兩行。
[General]
dns-server = system
- 先測試系統 DNS:儲存修改並重新連線,再瀏覽同一個故障網址。若恢復正常,接著確認原自訂 DNS 是否可連線及其存取路徑,不要因此認定所有自訂 DNS 都有問題。
- 留意解析的前置需求:若伺服器位址是網域名稱,連上代理前可能就需要先解析。若此步驟失敗,單純切換目標網站規則無法建立伺服器連線。
- 排除快取干擾:重新送出請求,必要時重新連線或重新啟動相關應用程式。不要連續更換多個 DNS,再以一次成功的結果推斷所有原因。
- 不要直接以 IP 取代 HTTPS 網域:這可能導致憑證名稱或 SNI 不符,產生新的錯誤,不能作為通用的 DNS 驗證方法。
檢查規則順序與 FINAL
當 Global Routing 設為 Config 時,請進入 Config 確認實際啟用的檔案,不要只編輯未選取的副本。規則通常依序比對,前面的寬泛規則可能先於後面的精確規則生效;列表末尾的 FINAL 則為未命中的請求指定預設策略。
以下是用來理解比對順序的最小範例。example.com 是示例網域,不能拿來取代實際發生問題的網站。使用這段內容測試前請先備份;它未涵蓋日常瀏覽的所有需求,也不會自動修復伺服器或 DNS。
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,DIRECT
| 規則關鍵字 | 範例說明 | 容易忽略的檢查項目 |
|---|---|---|
DOMAIN-SUFFIX | 比對指定網域及其子網域。 | 填寫網域本身,不含通訊協定、路徑或連接埠;並確認網站實際請求的其他網域。 |
IP-CIDR | 依 IPv4 網段比對;範例為一個私人位址範圍。 | no-resolve 表示不因這條 IP 規則主動觸發網域解析,不代表全域停用 DNS。 |
GEOIP | 依據 IP 地理位置資料庫進行比對。 | 分類結果可能受解析結果和資料庫影響,不能直接等同於網域所屬地區。 |
FINAL | 為先前都未命中的請求指定策略。 | 放在規則列表末尾;範例為 DIRECT,未命中前面規則的請求會直接連線。 |
遇到「部分網站無法開啟」時,檢查請求記錄中的命中規則與最終策略。若預期經過代理的網站命中 FINAL,DIRECT,應先修正該網域的分流規則。若命中自訂策略群組,還要確認該群組目前選取的伺服器是否有效:規則比對正確,不代表策略群組中的出口可用。
- 將明確的網域規則放在相關的寬泛比對規則之前,避免請求先被其他規則攔截。
- 確認自訂策略名稱確實存在且拼字一致,不要把註解中的名稱誤認為有效策略。
- 修改後儲存,確認該檔案仍處於啟用狀態,再重新送出請求,查看命中結果是否如預期變化。
依照實際狀況完成復測
縮小故障範圍後,恢復 On Demand 等日常設定,再重新測試一次。特別是從 Wi-Fi 切換到行動網路後,請確認情境條件和自動連線設定不會讓剛才的判斷失效。以下問題可協助判斷接下來應保留或檢查哪些設定。
有延遲數值,為什麼網頁還是打不開?
延遲測試和實際瀏覽網頁的目標及流程可能不同。保持使用同一台伺服器,在 Home → Global Routing 暫時切換至 Proxy 測試故障網址,再檢查 DNS 和錯誤階段;不要把延遲數值當成已成功瀏覽網頁。
只有某個網站打不開,需要重新安裝嗎?
先不用重新安裝。在 Config 檢查該網站實際命中的規則與策略;若使用 Proxy 時也只有該網站失敗,再確認網站本身的狀態、憑證有效期限,以及是否顯示存取限制提示。
Wi-Fi 無法使用、行動網路可以,該改哪裡?
保持伺服器和設定不變,在兩種網路下測試相同網址。先完成 Wi-Fi 登入驗證,再檢查該網路的 DNS 和存取限制;接著核對 Settings → On Demand 和 Scene 的網路條件,不要批次修改訂閱參數。
更新訂閱後還是無法連線,接下來怎麼做?
在 Home 確認已選取新項目,並核對服務有效期限、流量額度和位址。若其他既有項目可用,請將故障時間、網路類型和已移除敏感資訊的錯誤內容提供給自己的服務商,不要公開完整訂閱連結或驗證資訊。
若要繼續定位問題,請整理「網路類型、Global Routing 設定、伺服器測試結果、DNS 比對結果、命中規則、最終策略、錯誤原文」七項紀錄。分享前請移除訂閱 token、密碼、UUID 和其他驗證資訊。設定關鍵字的說明可參閱設定欄位,不要貼上來路不明的整份設定,以掩蓋尚未找出的故障。