不確定 Shadowrocket(小火箭)的 Global Routing 該選哪一種,常見原因是把「連線是否啟動」和「請求要走哪條路徑」混在一起。Global Routing 決定交由 Shadowrocket 處理的流量如何選擇去向;它不等同於 VPN 開關,也不保證裝置上的每一項網路活動都必然經過同一條路徑。本文整理 Config、Proxy、Direct、Scene 四種模式,並以 iPhone 的操作流程說明如何選擇及驗證。
本文適合已在 Shadowrocket 使用自己的訂閱,想依日常瀏覽、規則分流或問題排查選擇 Global Routing 的使用者。先了解四種模式的流量處理方式,再從 Home 切換並以相同目標重新測試。若不確定某個請求為何走特定路徑,先使用 Config 並檢查目前生效的設定檔與規則;不要只根據 VPN 狀態圖示判斷流量去向。
四種 Global Routing 模式分別控制什麼
在 iPhone 上,Global Routing 通常可從 Shadowrocket 的 Home 頁面查看或切換。不同版面可能讓選項呈現位置略有差異,請辨認介面上的英文名稱,不要只憑圖示或排列位置判斷。四種模式中,Config 依目前選取的設定檔規則處理請求;Proxy 將交由 App 處理的流量導向代理路徑;Direct 使用直接連線路徑;Scene 則依已設定並選取的情境運作。
這裡的 Config 是 Global Routing 的一種模式;Config 頁面則是管理設定檔的入口。兩者名稱相同,但不是同一個操作。選擇 Config 模式,不代表設定檔中的每一條規則都正確,也不代表清單裡最近匯入的檔案已經選取。判斷分流結果前,應先確認目前生效的檔案及其中的規則。
| 模式 | 處理方向 | 適合情境 | 切換前檢查 |
|---|---|---|---|
| Config | 依目前設定檔中的規則選擇策略 | 日常使用,需要不同目標依規則分流 | 確認選取的設定檔、規則順序及 FINAL |
| Proxy | 將交由 App 處理的流量導向代理路徑 | 短時間測試代理路徑,或對照 Config 結果 | 確認 Home 中選取的連線可用 |
| Direct | 讓交由 App 處理的流量使用直接連線 | 確認目標能否透過目前網路直接存取 | 確認目前網路允許直接連線至目標 |
| Scene | 依已設定並選取的情境安排路由 | 已建立情境,且清楚了解其條件與行為 | 確認所選 Scene 及其設定內容 |
表格中的「交由 App 處理」是重要限制:Global Routing 的選擇不應被理解為能取代所有系統網路設定。Proxy 也不會憑空提供可用連線;它仍須有正確且可用的連線資料。Scene 若沒有先確認其設定內容,就不能只看名稱推斷特定網站會走 Proxy 或 Direct。
按使用情境選擇,不必把 Proxy 當成預設答案
若已有內容清楚、符合需求的設定檔,日常優先考慮 Config。它讓規則決定不同請求的策略,而不是把所有請求都固定導向同一條路徑。使用者可以在設定檔中檢查 DOMAIN、DOMAIN-SUFFIX、GEOIP 及 FINAL 等項目,確認規則的比對範圍和順序是否符合預期。某個網站走錯路徑時,先查該請求實際符合哪一條規則,再考慮是否需要調整模式。
Proxy 適合短時間做路徑對照,例如確認某個請求在 Config 下無法載入時,改成 Proxy 後是否有不同結果。它不是「自動選最快伺服器」的選項,也不會修復失效的訂閱、錯誤的伺服器資料或目標網站本身的限制。完成測試後,若平常依賴設定檔分流,應切回 Config,避免忘記全域代理狀態。
Direct 可用來確認目前 Wi-Fi 或行動網路是否能直接連到目標。若某個頁面在 Direct 下正常、Config 下失敗,這只能說明兩種模式的結果不同;接下來仍要檢查 Config 的規則、策略及連線狀態,不能因此推斷所有流量都應改為 Direct。Scene 則更適合已經建立明確情境的人員;若不清楚 Scene 的條件或選取狀態,先不要把它當成一般規則模式使用。
兩種常見選擇:日常分流與短時間排查
日常依規則使用
- 在 Config 確認目前選取的設定檔。
- 檢查與目標相關的規則及其先後順序。
- 確認前面未命中時如何處理,並核對 FINAL。
- 在 Home 選擇 Config,使用固定目標進行測試。
短時間比較路徑
- 先記下目前模式及 Home 中選取的連線。
- 只切換到 Proxy 或 Direct 其中一種。
- 重新建立同一個目標的請求,記錄結果。
- 測試完成後切回日常使用的模式。
先明確說出測試目的:要驗證規則、代理路徑,還是直接連線;再選能回答該問題的模式。
若已設定 Scene,可在同一輪測試中把它視為另一種待確認狀態:先記下目前選取的情境,再檢視情境內的路由條件與預期結果。不要同時更換 Scene、伺服器和設定檔,否則即使結果改變,也難以知道是哪項變更造成。設定內容不明時,回到已確認的 Config 比較容易逐條追查。
iPhone 上切換模式的操作步驟
以下步驟適用於已經在 Shadowrocket 中設定好自己的連線資料,並具備所需設定檔或 Scene 的情況。Global Routing 只改變流量處理方式,不會替代連線資料,也不會自動補齊規則。切換前先記下原本模式,測試完畢即可還原。
-
確認連線資料
開啟 Home,查看目前選取的連線與連線狀態。若接下來要測試 Proxy,先確認所選連線是自己已有且可用的設定;不要把「清單中有項目」當作「目前已連線」。
-
確認設定檔
若要使用 Config,開啟 Config,確認預計使用的檔案確實處於選取狀態。查看與測試目標相關的規則,並確認規則順序及未命中時的處理方式;檔案已匯入不代表它正在生效。
-
切換路由模式
回到 Home,開啟 Global Routing 選項,選擇 Config、Proxy、Direct 或已設定的 Scene。選擇後再次查看目前顯示的模式,並記下變更前後狀態。不同版面上的入口位置可能不同,以英文介面名稱辨認。
-
重新送出請求
使用相同網路、相同目標和相同測試方式重新操作。若目標 App 或瀏覽器仍沿用既有連線,先關閉並重新開啟目標 App,或重新載入頁面,再觀察新請求的結果。
-
記錄並還原
記下模式、連線狀態、測試目標及結果。若這次只是排查,測試完成後切回原本的日常模式;若結果仍異常,保持其他設定不變,再檢查規則或連線資料。
切換模式後,請求結果未必會在既有長連線上立即改變。某些 App 會重用已建立的連線或快取內容,因此測試時要產生新的請求。若同一個目標在相同環境下仍呈現不一致結果,可在不同時間重測並記錄;不要只憑一次載入或單一狀態圖示得出結論。
切換後如何確認結果並避免誤判
驗證時分開記錄三件事:Global Routing 顯示的模式、Home 顯示的連線狀態,以及目標請求的實際結果。VPN 狀態顯示已連線,不能單獨證明某個請求走 Proxy;反過來,選擇 Direct 也不必然代表 VPN 開關已關閉。連線狀態與路由策略是不同層次,需分別確認。
- Config 下路徑不如預期:先確認目前選取的設定檔,再查目標符合的規則、策略名稱及規則先後順序。若前面已有較廣泛的規則先匹配,後方較具體的例外可能不會執行。
- Proxy 下仍無法載入:確認 Home 中的連線是否可用,再用相同目標重新測試。Proxy 會改變請求的路由方向,但無法保證目標服務可用,也不能替代有效的連線設定。
- Direct 下仍顯示 VPN:不要只看系統狀態圖示;另外確認 Global Routing 選項及新請求結果。Direct 描述的是相關請求的出站路徑,不等於關閉連線開關。
- Scene 的結果難以解釋:確認目前選取的 Scene 及其設定內容,並將測試目標與預期條件逐項對照。若設定不明,先切回已核對過的模式作為基準。
切到 Proxy,為什麼網頁還是打不開?
先回到 Home 確認目前選取的連線及狀態,再用同一個網址建立新請求。若仍失敗,查看連線資料與目標服務狀態;單靠切換 Global Routing 無法修復不可用的連線。
選了 Direct,VPN 圖示為什麼還在?
VPN 圖示反映系統通道狀態,不足以判定每個請求的出站策略。回到 Home 核對 Global Routing,再重新載入目標,分別記錄通道狀態與頁面結果。
Config 已選取,為什麼還是走錯規則?
進入 Config 確認啟用檔案,搜尋目標相關的 DOMAIN 或 DOMAIN-SUFFIX 規則,檢查是否被前面的規則先匹配,並確認最後的處理方式。完成核對後重新建立請求再測試。
實用的選擇原則是:日常需要依規則分流且已檢查設定檔時用 Config;要短時間比較代理路徑時用 Proxy;要確認目前網路能否直接到達目標時用 Direct;只有在已了解情境內容時才使用 Scene。每次測試固定網路與目標、一次只改一項,並在排查後還原日常設定,才能讓結果具有可比較性。