本文重點

已有自己的服務商與訂閱,準備在 Shadowrocket(小火箭)中選擇分流方式時,請先確認伺服器可正常使用,再選擇 Global Routing。日常建議使用已核對過的 Config;Proxy 適合暫時統一經代理連線或比對排查;Direct 則用於檢查直接連線。本文將說明三者的差異、切換步驟與規則檢查方式,並區分 Scene 和 On Demand,避免混淆連線開關、分流模式與自動連線。

先看結論:日常以 Config 為起點

Global Routing 決定進入 Shadowrocket 處理範圍的流量要如何選擇去向,不會建立服務,也無法修復失效的伺服器參數。日常若需要部分連線直接存取、部分連線透過代理轉送,建議選擇 Config,前提是目前設定檔中的規則與最終匹配項符合需求。Config 並非「自動選擇最快線路」,也不保證所有目標都會依預期分流。

Config

建議

依目前設定檔中的規則與策略處理連線。匹配結果可能是 DIRECT、代理策略或其他已定義的動作;若未符合前面的規則,則由最終匹配項決定去向。

適用情境:日常分流已核對規則,且需要同時保留直接連線與代理連線。

Proxy

進入處理範圍的流量一律採用代理模式,不再依 Config 的一般分流規則逐項選擇 DIRECT 或代理。DNS 與系統層級的行為仍需另外確認。

適用情境:暫時統一透過代理連線,或與 Config 比對以縮小規則問題範圍。

Direct

進入處理範圍的流量一律採用直接連線,不透過所選代理伺服器轉送。這是路由模式,不代表已關閉 Shadowrocket 的連線開關。

適用情境:檢查目前 Wi-Fi 或行動網路能否直接存取。

此處比較的是三種基本模式,並非 Global Routing 所有選項的完整清單。如果介面還顯示 Scene,它是依場景條件選擇處理方式的入口;排查時應確認目前場景及其設定,別把 Scene 當成 Config 的另一種名稱。

在 Home 切換模式前,先固定其他條件

Home 用來查看目前伺服器與連線狀態;Config 用來管理設定檔;Settings 用來調整 App 設定。在 Home 將 Global Routing 設為 Config,與進入 Config 頁面選擇檔案,是兩個不同的操作。只有確認路由模式與生效中的檔案,才能知道要求會依據哪一組規則處理。

  1. 確認伺服器

    開啟 Home,確認選取的是現有服務中的目標伺服器。先核對位址、連接埠、驗證資訊與協定參數,切換模式時不要同時更換伺服器。

  2. 確認設定檔

    進入 Config,確認目前使用的設定檔;修改前請先保留原有內容。僅匯入或更新伺服器訂閱,不代表已選取新的分流設定檔。

  3. 選擇模式

    返回 Home → Global Routing,選擇 Config、Proxy 或 Direct,再回到 Home 確認顯示結果。請勿只憑上次使用的印象判斷目前選項。

  4. 重新送出要求

    確認連線開關狀態,並在測試 App 中重新開啟目標頁面。必要時結束舊連線或重新連線 Shadowrocket,避免沿用舊工作階段而誤判切換結果。

  5. 記錄並還原

    記下網路類型、模式、伺服器與頁面結果。比對完成後,返回 Home → Global Routing → Config,並確認日常使用的設定檔仍在生效。

Config 的關鍵:規則順序與 FINAL

Config 會依設定檔中的規則處理要求,通常由上往下尋找匹配項。同一目標可能同時符合網域與位址條件,因此應將具體規則排在前面、範圍較廣的規則排在後面,避免寬泛條件先攔截要求。FINAL 是最後的兜底規則,不是「再次檢查前面的結果」。

DOMAIN-SUFFIX
依網域後綴匹配
IP-CIDR
依 IPv4 位址範圍匹配
GEOIP
依 IP 地理資料庫匹配
FINAL
處理先前未匹配的要求

以下僅為說明規則順序的片段,並非完整設定檔。範例網域 example.com 用於說明語法;其中的 PROXY 必須在實際設定中對應至可解析的策略。若使用其他策略名稱,請替換為設定檔中已定義的名稱,不要直接貼上後就假設能正常運作。

[Rule]
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
GEOIP,CN,DIRECT
FINAL,PROXY
  • DOMAIN-SUFFIX,example.com,PROXY:將該網域及其子網域交由 PROXY 策略處理,不會自動涵蓋名稱相似的其他網域。
  • IP-CIDR,192.168.0.0/16,DIRECT,no-resolve:依指定的位址範圍直接連線;no-resolve 表示這條位址規則不會額外觸發網域解析。
  • GEOIP,CN,DIRECT:依據可用的 IP 地理資料庫判斷目標 IP 所屬地區,而非依照品牌或網域後綴判斷。
  • FINAL,PROXY:將先前未匹配的要求交由 PROXY 處理;若改為 FINAL,DIRECT,兜底行為也會隨之改變。

因此,「Config 會讓其餘流量全部直接連線」並不成立。其餘流量如何處理,必須查看 FINAL。排查單一網站時,也要留意頁面可能會存取多個網域:主頁面符合某條規則,不代表圖片、登入介面與其他資源也會符合同一條規則。

Proxy 與 Direct:建立可比較的測試

切換模式是為了縮小問題範圍,不能用一次成功就證明整套設定正確。請使用同一台裝置、同一個網路、同一台伺服器,存取同一個目標;每輪只變更一項設定。測試期間不要同時更新訂閱、替換 DNS 或編輯規則,否則無法判斷是哪項變更影響結果。

比對方式:固定目標,只變更 Global Routing

Proxy 比對
  • 保留原伺服器,切換至 Home → Global Routing → Proxy。
  • 重新送出先前無法載入頁面的要求,記錄頁面能否載入及具體錯誤訊息。
  • 若 Proxy 可用、Config 不可用,優先檢查規則匹配、策略選擇與 DNS 差異。
Direct 比對
  • 在相同網路中切換至 Home → Global Routing → Direct。
  • 選擇目前網路理應能直接存取的目標,重新送出要求。
  • 若 Direct 可用、Proxy 不可用,優先檢查伺服器連線,以及目標透過代理存取時的情況。

比對結果只能提供排查方向;測試結束後請恢復 Config,並以新的要求確認日常分流。

觀察到的情況下一步檢查
Proxy 可用,Config 無法使用確認目標匹配的規則、規則所引用的策略及 FINAL;不要直接斷定是伺服器故障。
Direct 可用,Proxy 無法使用檢查伺服器位址、連接埠、驗證資訊與必要的傳輸參數,再確認目標是否拒絕該出口。
三種模式都無法使用先確認底層網路與目標網站狀態,再檢查解析情況;必要時可關閉連線開關作為額外比對。
切換後舊頁面沒有變化重新建立連線,排除快取與舊工作階段的影響;不要連續快速切換後,只查看頁面殘留的內容。

表格描述的是條件判斷,並非本站實測資料。Direct 仍可能受到 App 內 DNS 設定影響,因此 Direct 失敗不能單獨證明 Wi-Fi 或行動網路已中斷;關閉連線開關後的測試屬於另一組條件,應另外記錄。

區分 DNS、Scene 與 On Demand

Global Routing 回答「要求如何選擇去向」,DNS 回答「網域如何解析」,On Demand 則回答「何時依條件觸發連線」。三者彼此相關,但不能互相取代。例如切換至 Proxy 不會自動修正錯誤的解析設定;保持 Config 也不代表系統一定會自動建立連線。

  • DNS:先確認網域能否解析,再判斷目標連線的路徑。位址規則能否匹配,也與要求使用的位址及相關解析行為有關,不能只看規則文字。
  • Scene:若使用 Home → Global Routing → Scene,請進一步確認所選場景與條件。若要取得明確的比對結果,可暫時手動選擇 Config、Proxy 或 Direct,測試後再還原原本的場景設定。
  • On Demand:請在 Settings → On Demand 確認已儲存的條件。它會影響連線觸發方式,不能取代 Config 檔案中的 DOMAIN-SUFFIX、IP-CIDR 或 FINAL。

更新訂閱後,重新確認分流設定

本文以使用者已有自己的服務商與訂閱為前提。伺服器訂閱更新主要涉及服務項目,不應視為已自動修復 Config 中的規則、策略引用與 FINAL。若更新造成項目名稱或可用伺服器變動,可能需要重新確認原有策略選擇。

協定也不能取代 Global Routing。Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuard 描述的是連線協定或通道方式;選擇某種協定,不代表已選擇 Proxy 或 Config。協定參數應依據使用者現有服務所提供的資訊設定,不要只憑協定名稱猜測連接埠或驗證方式。

  • 在 Home 確認更新後的服務項目仍可使用,且選取的伺服器符合本次測試條件。
  • 在 Config 確認生效中的檔案,並檢查規則引用的策略名稱是否存在、策略實際選擇是否符合預期。
  • 在 Home → Global Routing 確認目前模式,避免上次排查後仍停留在 Proxy 或 Direct。
  • 分別測試一個預期直接連線的目標,以及一個預期透過代理連線的目標;若結果不符,請逐條檢查規則,而不是反覆更新訂閱。

日常選擇與還原檢查

日常預設使用 Config,是以「設定檔已核對且符合需求」為前提的建議,不代表任意匯入的檔案都適用。如果目前只有伺服器項目、尚未整理規則,應先確認設定內容與兜底行為,再將 Config 作為長期設定。Proxy 和 Direct 各有明確用途,但不宜讓臨時測試模式在不知情的情況下成為日常設定。

Proxy 是否代表裝置的所有連線都會透過代理?

不能如此一概而論。Proxy 描述的是 Shadowrocket 處理範圍內的代理模式;系統路由範圍、DNS 設定與具體連線類型仍可能影響實際路徑。若要確認某項要求的路徑,應查看該要求的診斷資訊,而不是只看模式名稱。

Config 比 Proxy 慢,是否應該一直使用 Proxy?

先確認兩種模式存取同一目標時,是否選用了相同策略與伺服器。若 Config 匹配到不同出口或 DIRECT,就不是在比較同一條路徑的速度。請先確認規則、解析與連線重用情況,再決定是否修改設定。

排查完成後要還原哪些項目?

還原至 Home → Global Routing → Config,確認 Config 中生效的檔案,並還原測試前記錄的 DNS 與 Settings → On Demand 設定,再重新送出要求。如果日常原本使用 Scene,請還原原本的 Scene 並確認其條件,不要一律套用 Config。

本站是 Shadowrocket 官方網站,本文屬於官方手冊。Shadowrocket 是閉源商業 App,唯一取得管道為 App Store;iPhone、iPad 及其他 Apple 裝置的相容性、系統需求與一般購買適用性,請以 App Store 頁面標示為準。App 一次性買斷與線路方案是兩回事,本文僅說明使用者現有服務下的 App 設定。