已有可用的連線資訊與規則設定時,日常可在 Shadowrocket(小火箭)選用 Config;懷疑規則將目標導向錯誤時,可暫切 Proxy 比較;要確認目前網路能否直連目標,則可切換 Direct。本文說明如何選擇模式、檢查規則順序,以及一次只調整一個項目的排查方式,並區分路由模式、連線開關與 On Demand。
一、Config、Proxy、Direct 各自會改變什麼
Global Routing 決定 Shadowrocket 接管的流量採用哪種路由方式。它不提供連線服務,也不是協定選擇器。日常使用 Config 的前提是:目前設定已啟用、規則符合實際需求,而且規則引用的策略或策略組可正常使用。若不符合這些條件,單獨切換至 Config 並不會自動產生合適的分流結果。
Config
建議依目前設定中的規則進行比對,結果可能是 PROXY、DIRECT、REJECT,或設定中定義的策略組。未符合特定規則的流量會由 FINAL 等兜底設定處理,不一定會自動直連。
適用情況:已有正確規則,日常需要分別處理不同目標。
Proxy
將接管範圍內的一般流量統一交由代理路徑處理,不再依 Config 中的分流規則逐條決定出口。所選連線是否可用,仍會影響存取結果。
適用情況:暫時檢查代理路徑,或與 Config 比較以找出分流問題。
Direct
將接管範圍內的一般流量直接連線,不經代理伺服器轉送。目標能否開啟,取決於目前網路的實際連線能力。
適用情況:檢查直連是否正常,或暫時確認本地網路的存取狀況。
此處的「全部」指的是路由模式,不代表裝置上的每個網路封包都必定經過同一路徑。系統流量、設定中的略過選項及 DNS 處理方式,可能各有不同。若要判斷特定要求實際經過哪條路徑,應查看連線記錄,不要只根據畫面上的 VPN 狀態推測。
二、從 Home 選擇模式,建立測試基準
在 iPhone 與 iPad 上,可前往 Home → Global Routing 選擇 Config、Proxy 或 Direct。若介面也列出 Scene,它是另一種依情境使用的模式,並非 Config 的別稱。本文先固定使用上述三種模式,避免情境條件影響比較結果。介面配置請以實際安裝的 App 為準。
- 開啟 Home,確認 SERVER 清單中已有自己的連線資訊;若要測試代理,請先確認已選取準備使用的連線。
- 前往 Config,確認目前使用的設定。檔案存在不代表它已成為目前生效的設定,請確認其已被選取。
- 返回 Home → Global Routing,選擇 Config,再回到 Home 確認顯示結果。
- 開啟連線開關。首次使用時,依系統提示允許加入 VPN 設定,接著確認連線狀態,不要只確認已完成授權。
- 選定一個完整的測試網址,記錄目前網路、所選連線與路由模式。後續比較時維持這些條件不變,每次只調整一個設定。
Home 中的 Connectivity Test 可協助判斷連線的基本可達性,但測試成功不代表目標網站的 DNS、TLS 與服務要求都正常。請繼續開啟實際目標網址驗證,尤其不要直接將測試延遲解讀為網頁載入速度。
三、使用 Config 時,為什麼要一併檢查規則順序與 FINAL
Config 的重點不是「自動判斷網站類型」,而是依目前設定執行規則。一般規則會由上而下比對,符合第一條規則後便採用對應策略。因此,精確例外應排在適用範圍較廣的規則之前,FINAL 則應放在最後。以下是教學範例,網域僅供示意,不代表可用的連線服務,也不應直接用來取代完整設定。
[Rule]
DOMAIN,account.example.com,DIRECT
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT
account.example.com會先符合 DOMAIN 並採用 DIRECT,不會繼續套用後面的網域後綴規則。www.example.com符合 DOMAIN-SUFFIX 並採用 PROXY;example.com本身也在此後綴規則的範圍內。- 不在前兩條規則範圍內的其他目標,會套用
FINAL,DIRECT,以直連方式處理。 - 若將兜底規則改為
FINAL,PROXY,未符合前面規則的目標就會改走代理。因此不能一概而論,認為 Config 一定會讓「其他流量直連」。
DOMAIN 與 DOMAIN-SUFFIX 用於比對網域範圍,IP-CIDR 用於比對指定 IP 網段,GEOIP 則依 IP 地理位置資料進行比對。混用網域與 IP 類規則時,還需考量實際要求是否帶有網域、何時完成解析,以及規則選項。若發現流量分流錯誤,應先確認符合哪條規則,而不是盲目新增重複項目。
四、使用 Proxy 與 Direct 進行兩組比較
排查前先釐清問題是「特定目標無法開啟」,還是「所有目標都不正常」。Proxy 與 Direct 可減少規則分流這項變數,但不應長期取代正確設定。兩組測試都應使用相同網路與目標網址;測試代理時,也要維持所選連線不變。
比較方式:固定網路與目標,只切換路由模式
比較 Config 與 Proxy
- 先在 Config 模式重現問題,並記錄目標網域。
- 切換至 Proxy,重新送出相同要求。
- 若 Proxy 正常、Config 失敗,請優先檢查規則比對結果、策略組選擇與 FINAL。
- 若兩者都失敗,請繼續檢查連線參數、DNS、目標狀態及目前網路。
比較 Config 與 Direct
- 選擇預期可直連的目標,先記錄 Config 模式下的結果。
- 切換至 Direct,重新送出相同要求。
- 若 Direct 正常、Config 失敗,請檢查目標是否被錯誤導向代理或 REJECT。
- 若 Direct 也失敗,請先確認目前網路能否直接連線至該目標。
比較結果只能縮小問題範圍,無法單獨證明故障原因。測試完成後請切回 Config,並確認目標要求依預期規則處理。
例如,Config 失敗而 Proxy 成功,可能是缺少網域規則,也可能是 Config 指向的策略組選用了另一條連線。只有比對規則命中結果與實際使用的出口,才能區分這兩種情況。不要在同一輪測試中同時更換網路、連線並修改 DNS,否則無法判斷是哪項變更帶來效果。
五、別混淆連線開關、On Demand 與訂閱更新
Global Routing 說明「連線建立後如何處理流量」,Home 的開關則表示「目前是否啟用連線」。Direct 仍是一種路由模式,不代表已關閉 VPN;同樣地,選擇 Proxy 也不表示連線開關已開啟。這兩種狀態需要分開確認。
- On Demand:前往 Settings → On Demand 檢查依條件連線的設定。這會影響連線的觸發時機,不能取代 Config 中的網域與 IP 規則。進行固定條件測試時,請留意切換網路是否造成連線狀態變化。
- Subscribe:更新自己已有的訂閱,可刷新相關連線資訊;規則設定則有獨立的來源與生效狀態。連線資訊更新成功,不代表目前的規則檔也同步變更。
- 協定:Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuard 等名稱描述連線方式;Config、Proxy、Direct 描述路由方式。切換路由模式不會修正協定中的位址、連接埠或驗證資訊。
- 網路:從 Wi-Fi 切換至行動網路後,請重新確認連線狀態與目標可達性。先前網路下的測試結果不能直接套用到新網路。
若更新訂閱後出現異常,請先確認目前選取的連線是否仍存在、參數是否已更新,再檢查規則引用的策略組。不要直接將 Global Routing 永久切換至 Proxy 來掩蓋設定引用問題;這可能使原本應直連的要求也改走代理路徑。
六、常見問題:選對模式仍無法開啟時怎麼辦
已選擇 Config,為什麼看起來所有網站都走代理?
前往 Config 檢查目前使用的檔案,先確認結尾是否為 FINAL,PROXY,再檢查前面是否有適用範圍很廣的規則,以及相關策略組目前的選項。Config 代表依設定執行,不保證代理流量占固定比例。
Proxy 可以開啟,Config 卻不行,是否代表連線沒問題?
這表示該次要求透過 Proxy 使用的路徑可以完成,但無法排除其他連線問題。返回 Config,確認目標符合的策略;若策略組實際使用另一條連線,請先統一出口再比較,避免將策略組差異誤判為規則語法錯誤。
切換至 Direct 後仍顯示 VPN,要怎麼關閉?
Direct 改變的是流量處理方式。若要停止連線,請回到 Home 關閉連線開關,並檢查 Settings → On Demand 是否會依條件重新觸發。VPN 標示只能輔助確認連線狀態,不能證明特定要求一定經過代理伺服器。
切換模式後網頁結果沒變,需要不斷重新連線嗎?
請先重新送出要求,必要時關閉測試中的 App 再重新開啟,避免沿用既有連線或快取頁面。若結果仍無變化,請確認 Home → Global Routing 的選擇已保留,並查看實際要求記錄。每輪記錄結果,比連續切換多個開關更容易找出問題。
七、日常使用前的恢復檢查
排查完成後,請將暫時使用的模式切回預定使用的 Config,確認規則與策略組狀態,再各自驗證一個預期直連目標與代理目標。能開啟網頁只是第一步,也要確認出口符合規則預期。若問題持續,可參閱故障排查指南,進一步區分連線、DNS 與規則問題。
- Home → Global Routing:確認選用 Config,而不是仍停留在 Proxy 或 Direct。
- Config:確認目前設定與 FINAL 的兜底方向,並檢查是否要保留暫時新增的規則。
- Home:確認所選連線與策略組符合預期,再檢查連線狀態。
- Settings → On Demand:確認自動連線條件符合日常網路環境,並重新驗證實際要求。
Shadowrocket 是 Apple 平台上的閉源商業 App,主要供 iPhone 與 iPad 使用,唯一取得管道為 App Store。開發者為 Shadow Launch Technology Limited,App ID 為 932747118;系統需求、相容性與通用購買範圍請以 App Store 頁面標示為準。一次買斷 App ≠ 購買連線方案;連線資訊與規則設定仍須依各自用途管理。