Shadowrocket(小火箭)的全域代理與規則分流,差別在於每一筆網路請求如何選擇路徑。全域代理會以代理方式處理流量;規則分流則依目前設定檔中的規則,讓不同請求採用不同策略。兩者不是「有沒有選伺服器」的差別,也不代表切換後一定能連上目標網站。以下以你已備妥自己的連線設定為前提,說明模式位置、常見使用情境與簡單的切換驗證方式。
本文適合剛開始使用 Shadowrocket(小火箭)、想知道 Global Routing 該選哪一項的使用者。你會了解 Home 中的 Proxy、Direct、Config 與 Scene 各代表什麼,並透過設定步驟和範例判斷日常使用、臨時排查時該採用哪種路由方式。規則範例僅說明分流原理,不含連線服務。
一、先認識 Global Routing:改變的是流量處理方式
在 Home 頁面選擇伺服器項目,代表指定需要使用代理時所採用的連線設定;Home → Global Routing 則決定流量如何選擇策略。這兩項設定彼此相關,但用途不同。即使已選取伺服器,也不代表所有請求都會經過代理;請求最後採用哪種方式,還要看目前的 Global Routing 選項。
本文所說的「全域代理」對應 Proxy,也就是以代理方式處理流量;「規則分流」通常對應 Config,依目前生效設定檔中的規則選擇策略。選項名稱與實際設定可能因版本或設定檔而有所差異;操作時請以 App 目前顯示的項目為準。Direct 是直連,Scene 則依已設定的場景決定路由方式。
| 選項 | 流量處理方式 | 常見用途 | 需要確認 |
|---|---|---|---|
Proxy |
以代理方式處理流量,不以一般規則逐項選擇代理或直連。 | 暫時以代理方式測試,或排查 Config 規則是否造成差異。 | Home 是否已選取有效的伺服器;連線是否已啟動。 |
Config |
依目前使用的設定檔與規則決定每筆請求採用的策略。 | 日常依目標網域或 IP 分流。 | 目前生效的設定檔、規則順序與未命中規則時的處理方式。 |
Direct |
以直連方式處理流量。 | 確認某項服務在直連狀態下的連線情況。 | 若原本預期透過代理,確認是否誤選此項。 |
Scene |
依已設定的場景決定路由行為。 | 使用者已建立場景,並希望依場景套用設定時。 | 目前啟用的場景及其路由設定。 |
使用 Config 時,規則是依設定順序檢查;符合條件後,便採用該條規則指定的策略。若請求未符合前面的規則,通常要再查看設定中的兜底規則,例如 FINAL。因此,切換到 Config 不等於「所有流量都自動走代理」:實際結果取決於目前生效的規則和設定。
Proxy:暫時統一走代理
- 入口
- Home → Global Routing → Proxy
- 用途
- 以代理方式處理流量,作為模式比較或臨時測試
- 前提
- Home 已選取可用的伺服器,且連線已啟動
- 不代表
- 訂閱、伺服器或目標網站必定正常
Proxy 用於對照路由方式,不會替你修正失效的連線資料或網路問題。
Config:依規則分流
- 入口
- Home → Global Routing → Config
- 依據
- 目前生效設定檔中的規則
- 規則策略
PROXY、DIRECT等- 檢查順序
- 由上而下匹配,並確認最後的兜底規則
編輯 Config 頁面的設定檔後,也要確認該檔案已被選用,否則修改可能不會影響目前路由。
二、日常使用與排查時,怎麼選比較合適
如果你希望不同網域依照自己的規則分別採用代理或直連,通常選 Config 作為日常模式。比如,設定檔可將一個示例網域指定為 PROXY,另一個示例網域指定為 DIRECT。這些只是規則策略的示意;實際應如何分流,應依自己的需求和設定檔內容決定。
DOMAIN-SUFFIX,example.com,PROXY
DOMAIN-SUFFIX,example.net,DIRECT
FINAL,PROXY
以上示例中,DOMAIN-SUFFIX,example.com,PROXY 會讓指定網域及其子網域採用 PROXY;第二條將另一個示例網域交給 DIRECT;最後的 FINAL 則處理未符合前面規則的請求。假如你自己的設定檔以其他策略作為兜底,未命中規則的流量就會依該設定處理,不能直接套用示例結論。
若要排查「某個網站在 Config 下無法開啟」,可暫時切換到 Proxy,在相同網路、相同伺服器和相同網址下測試一次。如果切換後結果不同,這提供了縮小範圍的線索,接下來應檢查該網域命中的規則、規則順序及設定檔是否生效;它本身不是故障原因的證明。測試完成後,記得切回原本的模式,避免讓臨時設定取代日常分流。
由設定檔規則判斷不同請求採用 PROXY、DIRECT 或其他已設定策略。
適合:已備妥規則,並需要依目標分流
以代理方式處理流量,方便與 Config 的測試結果作對照;不會逐條驗證分流規則。
適合:暫時排查規則或比較路由結果
以直連方式處理流量,可協助確認不經代理時的連線狀況。
適合:已知需要直連,或進行有目的的對照測試
判斷重點:用 Proxy 對照,不要把它當成修復
同一個網址在 Proxy 與 Config 下結果不同時,優先核對 Config 的命中規則與生效設定檔;兩種模式都失敗時,則繼續檢查連線狀態、所選伺服器及基本網路,不要只反覆切換模式。
三、切換 Global Routing 的操作步驟
切換前先記下原本選項,測試時保持網路、伺服器和測試網址不變。這樣結果較容易比較,也方便在測試後還原。以下步驟只涉及 Home 的路由選項,不要求你重新匯入或修改整份設定檔。
-
確認目前連線
前往 Home,記下目前顯示的連線狀態與已選取的伺服器項目。若仍是
Not Connected,先處理連線啟動問題,避免將未建立連線造成的失敗誤判為分流規則問題。 -
記下原有模式
開啟 Home → Global Routing,記下目前是
Config、Proxy、Direct或Scene。同時確認 Config 測試時使用的設定檔已在 Config 頁面選用。 -
選擇比較模式
排查規則時,可短暫選
Proxy作為對照;需要確認直連結果時,可選Direct。若是日常按規則分流,則選Config,不要把測試模式長期留在與原用途不符的選項。 -
重複測試網址
使用同一個網址重新載入,並分別記錄所選模式、連線狀態及結果。Connectivity Test 可作為參考,但測試結果不等於該網站的網域解析、規則匹配與頁面載入都已正常。
-
完成後還原
測試結束後,回到 Home → Global Routing,選回記錄的日常模式。若發現 Config 與 Proxy 結果不同,再檢查規則及其順序;一次只修改一項,並用原本的網址再次驗證。
四、常見誤解:選了代理,不代表請求一定成功
第一個常見誤解,是把伺服器選取、VPN 連線狀態與網站可用性當成同一件事。選取伺服器只是指定代理目標;Connected 表示連線狀態已建立;網站是否能正常開啟,還涉及網域解析、規則選擇、傳輸連線及目標服務回應。這幾項應分別確認。
第二個誤解,是認為 Proxy 等於「所有網路功能都一定正常」。切換模式不會更新或修正自己的訂閱,不會讓失效的伺服器資料自動恢復,也不會保證每個目標網站都能連線。若某個應用程式仍無法使用,應記錄實際失敗的網域和錯誤訊息,再判斷是單一網域規則、DNS、連線目標,還是其他環節。
第三個誤解,是以為更改規則後,所有請求立刻都會採用新結果。請確認修改的是目前使用中的設定檔,規則沒有放在更早命中的規則之後,並查看是否有更廣泛的規則或 FINAL 先行處理請求。需要理解規則匹配範圍時,可從網域規則、IP 規則和規則順序逐項檢查。
我選了 Proxy,為什麼網站還是打不開?
先在 Home 確認顯示 Connected,並確認已選取正確伺服器。接著記下該網站的錯誤訊息,使用同一網路與網址測試;若仍失敗,繼續檢查 DNS、連線設定與目標網站回應,不要直接判定是 Config 規則造成。
切換到 Config 後,部分網站走了直連?
前往 Config 確認目前生效的設定檔,檢查該網站的網域或 IP 是否命中 DIRECT 規則,以及規則前方是否已有更廣泛的匹配項目。再確認未命中時採用的兜底策略。
排查完要留在 Proxy 嗎?
若平常需要依規則分流,請回到 Home → Global Routing 選回 Config。只有在你明確需要該路由方式時,才保留其他選項;切換前記下原設定,可避免測試狀態被誤當成日常設定。
簡單記法是:要依規則決定不同請求的路徑,使用 Config;要暫時以代理方式作比較,使用 Proxy;要查看直連結果,使用 Direct。選項只是路由處理方式,不能代替對連線狀態、設定檔、規則和實際網路結果的逐項確認。