Shadowrocket 連線後無法上網?依序排查伺服器、模式、DNS 與規則

顯示已連線卻無法瀏覽網頁?依序檢查伺服器連通性、Global Routing 模式、DNS 設定與規則命中。

本文速覽

Shadowrocket(小火箭)顯示已連線,只代表裝置上的 VPN 隧道已啟動,無法證明遠端伺服器、DNS 與目標網站都能正常使用。本文適合已有自己的服務商與訂閱的使用者,依序從基本網路、伺服器、Global Routing、DNS 到規則逐步縮小問題範圍;每次只變更一項,並以相同網址重新測試,最後還原日常設定。

一、顯示已連線,為什麼還是無法瀏覽網頁?

先確認問題發生在哪個環節。裝置建立本機 VPN 隧道、連上遠端伺服器、解析目標網域,以及成功載入網頁,是不同的步驟。Home 中的連線開關已開啟,或系統顯示 VPN 圖示,都不代表特定網站已透過整條連線路徑成功載入內容。

第一步該做什麼?先建立基本網路對照。記下目前使用的網路、所選伺服器、Global Routing 模式與設定檔,接著暫時中斷 Shadowrocket,並開啟一個在目前網路通常可直接瀏覽的網站。如果仍無法連線,應先處理 Wi-Fi 登入、行動數據權限或網路本身的問題,不要急著修改規則。

  1. 記錄目前狀態

    在 Home 記下所選伺服器與目前的 Global Routing 值,在 Config 記下正在使用的設定檔。先保留設定檔副本,避免排查後無法還原。

  2. 暫停自動連線

    前往 Settings → On Demand,記下目前設定後暫時關閉 On Demand,再關閉 Home 的連線開關,避免測試直連時隧道自動重新啟用。

  3. 測試基本網路

    用 Safari 開啟平時可直接瀏覽的網站。如果 Wi-Fi 需要網頁認證,請先完成登入;接著用行動網路測試相同網址,作為對照。

  4. 重新建立連線

    確認基本網路正常後,返回 Home 開啟連線,並用相同網址重新測試。之後每次修改設定,都要重新建立連線並送出新的請求。

切換 Wi-Fi 與行動網路後,結果不同代表什麼?這表示問題可能與網路路徑有關,但還不能直接判定是某個協定故障。伺服器連接埠是否可連、DNS 與網路認證狀態,都可能因網路而異;先記下差異,再繼續下一項對照。

二、伺服器測試有結果,就代表可以上網嗎?

不一定。先在 Home 對目前使用的伺服器執行連通性測試,並確認測試方式。只測試連接埠能否建立連線,與透過代理伺服器測試網址,涵蓋的環節並不相同;測得一個延遲數值,也無法保證所有網域、傳輸方式與目標連接埠都能使用。

測試失敗時,應先修改哪些欄位?開啟目前伺服器的編輯畫面,對照服務商提供的原始資訊,逐項檢查位址、連接埠、Type 與認證參數。不要憑經驗一律改成 443:443 是 HTTPS 常用的連接埠,遠端代理服務的監聽連接埠必須與伺服器設定一致。

檢查項目核對內容容易誤判的情況
位址與連接埠完整主機名稱或 IP、實際監聽連接埠填入網站的 443,不代表這就是代理服務的連接埠
Shadowsocks加密方式與密碼須和伺服器端一致位址可連通,不代表認證與加密參數正確
VMess / VLESSUUID、傳輸方式及相關傳輸參數UUID 正確,傳輸設定仍可能不相符
Trojan 與 TLS密碼、服務要求的 TLS 設定與伺服器名稱連到 IP 後,仍可能因憑證名稱驗證失敗
Hysteria2 / WireGuard依服務資料檢查認證、金鑰與相關參數只涵蓋 TCP 的測試結果,無法用來判斷 UDP 路徑

該手動修改,還是更新訂閱?如果伺服器來自自己的訂閱,先確認訂閱更新成功,且目前選取的項目仍在服務有效範圍內。更新訂閱只會刷新連線資訊,不代表遠端服務已確認可用;也不要在未保留副本的情況下反覆覆寫設定。本文不提供連線資源,參數是否有效請向自己的服務商確認。

錯誤關鍵字:Connection timed out

原因與處理方式:連線未能在指定時間內完成,可能與位址、連接埠或網路路徑有關;先核對伺服器資訊,再分別透過 Wi-Fi 與行動網路測試,不能只憑逾時就判定服務已停用。

錯誤關鍵字:Connection refused

原因與處理方式:目標端或中間設備明確拒絕連線,可能是連接埠沒有監聽,或連線遭到政策拒絕;請核對連接埠,並向自己的服務商確認監聽狀態。

錯誤關鍵字:No such host

原因與處理方式:相關主機名稱無法解析。先確認無法解析的是伺服器位址還是目標網站網域,再檢查拼字與目前使用的 DNS,避免把解析失敗誤認為密碼錯誤。

在哪裡查看這些錯誤訊息?可在應用程式的連線記錄、診斷資訊或系統網路錯誤中查看,並保留實際顯示的原文與發生時間;不同請求可能出現不同訊息。若沒有看到相同文字,不要把本文範例當成裝置已提供的診斷結果。

三、如何使用 Global Routing 進行對照測試?

如何選擇模式以利定位?前往 Home → Global Routing,先記下目前模式,再分別使用 Direct、Proxy、Config 對相同網址送出新的請求。這只是短時間的診斷方式,不代表應長期使用特定模式;測試 Direct 時,應選擇目前網路允許直接瀏覽的目標。

4 項
Global Routing:Proxy / Direct / Config / Scene
3 組
基本對照:Direct、Proxy、Config
1 項
每輪只變更一項設定,並使用相同網址測試
模式或現象意義與下一步
Direct用於直連對照;這不等於關閉整個 VPN,也無法排除應用程式內 DNS 設定的影響。
Proxy用於檢查目前的代理路徑;確認實際使用的伺服器或策略,避免選取的項目已經變更。
Config依目前設定檔中的規則分流;若 Proxy 正常但 Config 失敗,優先檢查命中的規則與策略。
Scene依場景設定選擇路由行為;排查時先確認目前場景,再暫時切換到明確的對照模式。
Direct 正常,Proxy 失敗優先檢查代理伺服器、認證、傳輸參數,以及伺服器網域解析。
Proxy 正常,Config 失敗檢查規則是否將目標導向不合適的路徑,或引用了無法使用的策略。

結論:先固定路徑,再修改規則

若 Proxy 能開啟相同網址,但 Config 不行,先保留伺服器參數不變,改為檢查命中的規則。這樣可避免修改已確認可用的伺服器設定。

四、如何判斷是否為 DNS 解析失敗?

網頁一直載入中,就一定是 DNS 問題嗎?不一定。判斷 DNS 故障需要解析記錄或明確的解析錯誤作為依據。還要區分兩種對象:若伺服器位址是網域名稱,就必須先解析;目標網站網域也可能透過不同的解析路徑處理。前者解析失敗時,代理連線本身可能就無法建立。

要從哪裡檢查?前往 Config,開啟目前使用的設定檔,查看 DNS 相關內容。先儲存副本,再檢查 [General] 中的 dns-server,以及是否另有適用於特定網域的 DNS 設定。只修改系統 Wi-Fi 的 DNS,不一定會影響設定檔指定的解析路徑。

可以直接輸入網站 IP 來排除 DNS 嗎?不能只憑這項測試下結論。HTTPS 會以網域名稱進行憑證驗證與虛擬主機選擇,直接連到 IP 可能出現憑證錯誤,或開啟不同網站。建議先確認網域是否取得有效的解析結果,再檢查後續連線是否成功。

五、規則命中錯誤時,應檢查哪些關鍵字?

使用 Config 模式時只有部分網站無法瀏覽,該先看什麼?在 Config 確認選取的設定檔,再查看失敗請求的連線記錄:目標網域或 IP、命中的規則、最終策略及使用的伺服器。Shadowrocket 會依規則順序比對,符合條件的前置規則會影響結果;只確認檔案中曾寫入該網域還不夠。

關鍵字比對範圍排查重點
DOMAIN完整網域主網域與不同子網域都需要分別確認。
DOMAIN-SUFFIX網域本身及其子網域後綴範圍是否過廣,或是否被前面的規則攔截。
GEOIP依 IP 地理資料庫的結果比對應核對目標 IP 的歸屬,而非透過網域後綴推斷地區。
IP-CIDRIPv4 位址範圍確認子網路遮罩範圍正確,且解析出的位址落在該範圍內。
FINAL未符合前置規則的請求確認最終策略可用,且符合預期。

如何核對規則語法?以下僅示範三類規則及其順序,不建議直接匯入作為設定。example.com 與 192.0.2.0/24 是文件範例;PROXY 實際使用的代理出口也須在自己的設定中確認。

[Rule]
DOMAIN-SUFFIX,example.com,DIRECT
IP-CIDR,192.0.2.0/24,DIRECT,no-resolve
FINAL,PROXY

這裡為什麼使用 no-resolve?它套用於該 IP 規則,表示不會為了比對這條規則而主動觸發網域解析;並非全域停用 DNS。也不要把 FINAL 放在仍需繼續比對的規則之前,否則後續規則將無法發揮預期的分流作用。

六、排查完成後,如何還原設定並保留有效證據?

問題消失後,可以馬上結束排查嗎?先還原日常使用的 Global Routing 模式,再確認 Config 使用的是預期設定檔;若平時使用 On Demand,請前往 Settings → On Demand 還原原有條件,並分別測試 Wi-Fi、行動網路,以及切換網路後的狀況。不要將暫時使用的診斷模式當成最終設定。

仍無法找出原因時,應提供哪些資訊?整理成可重現的步驟,不要只回報「已連線但無法瀏覽」。服務商負責確認服務參數與服務狀態;應用程式內的設定則須搭配模式、設定檔與連線記錄判斷。對外傳送資料前,請遮蔽訂閱權杖、密碼、UUID、私鑰及其他認證資訊。

結論:透過可重現的差異確認問題已修復

只有在相同網路、相同網址下,還原某項設定會穩定重現故障,重新調整後又能恢復,才有依據將問題歸因於該設定;單次重新整理成功,不能作為最終結論。

App Store 正版查核開發者與應用程式 ID