官方手冊 · 功能與設定

Shadowrocket
代理模式與常用設定

先確認 Global Routing,再檢查規則、伺服器與自動連線條件。

  • Config 依設定檔分流
  • Proxy 透過代理連線
  • Direct 直接連線

Global Routing 三種模式

連線開關控制是否建立連線,Global Routing 則決定接管流量後的處理方式。

日常需要依規則分流時選 Config;暫時檢查代理連線路徑時用 Proxy;需要確認直接連線狀況時用 Direct。這三個選項不會新增伺服器,也不會更新訂閱。在 Home 開啟 Global Routing 後選擇所需模式,再返回 Home 確認預設伺服器與連線開關。切換模式後,請重新發起目標連線,避免把既有長連線的狀況誤認為新模式的結果。

設定/代理/直連分別對應介面中的 Config/Proxy/Direct。此處的 Config 模式與底部的 Config 頁面有關,但兩者不是同一個操作:前者選擇流量處理方式,後者用來管理設定檔。匯入設定檔不代表已選用該檔案,也不代表 Global Routing 已切換至 Config。

選項處理方式適用情境優先確認
Config
設定檔
依據目前設定檔中的規則與策略處理請求。依網域、位址等條件區分連線路徑。目前啟用的設定檔、規則順序與最終策略。
Proxy
代理
將接管的流量交由所選代理路徑處理;仍須留意系統與設定檔中的排除項目。確認預設伺服器能否連上目標。是否已選取伺服器,以及參數是否有效。
Direct
直連
將接管的流量直接連至目標,不經所選代理伺服器轉送。對照目前網路的直接連線狀況。連線開關狀態,以及目前網路是否能連上目標。

模式不保證連線成功

Proxy 仍須有有效的伺服器資訊與可連線的網路;Config 仍須有正確的規則;Direct 也會受目前網路與目標服務狀態影響。遇到問題時,先記下原本的模式,再一次只變更一個變因。若 Proxy 可以連線而 Config 不行,應優先檢查規則是否命中及 DNS,而不是立即重新匯入所有伺服器。

比較完成後,請恢復符合日常需求的模式。不要長時間維持暫時測試狀態,否則 Data 中的流量分布、區域網路存取與後續排查結果都可能不如預期。

規則類型與策略

規則用來判斷「符合什麼條件」,策略則決定「符合後如何處理」。

規則分流以 Config 頁面目前選用的設定檔為基礎。編輯前請先保留可還原的副本,檢查設定檔的 [Rule] 區段,再確認 Home 的 Global Routing 設為 Config。一般來說,應將條件明確的規則排在前面,讓最終規則處理前面都未命中的請求。

DOMAIN 比對完整網域名稱;DOMAIN-SUFFIX 比對指定網域後綴及其子網域;DOMAIN-KEYWORD 依網域中的關鍵字比對。位址類規則包括 IP-CIDR 與 IP-CIDR6,分別用於相應的位址範圍;GEOIP 依據位址歸屬資料進行比對,結果取決於資料庫與解析出的位址,不能視為目標服務實際部署位置的絕對證明。

策略中的 PROXY 表示使用代理連線,DIRECT 表示直接連線,REJECT 表示拒絕請求。這些是規則的處理結果,不是通訊協定名稱。若設定檔使用自訂策略群組,規則末端也可能指向群組名稱,此時還要檢查群組內的選擇,不能只看規則中是否出現 PROXY。

設定檔文字範例 · 非應用程式介面
[Rule]
DOMAIN,example.com,PROXY
DOMAIN-SUFFIX,example.org,DIRECT
IP-CIDR,10.0.0.0/8,DIRECT
FINAL,PROXY

由上而下檢查比對;FINAL 負責處理前面都未命中的請求。範例網域僅用於說明語法。

先縮小比對範圍,再調整最終策略

測試規則前,先確認目標是完整網域、子網域還是 IP 位址。關鍵字規則涵蓋範圍較廣,容易影響原本不打算處理的網域;位址規則則可能需要先完成 DNS 解析。不要一次新增多條彼此重疊的規則,否則即使連線恢復,也難以判斷是哪條規則發揮作用。

USER-AGENT 須能取得相應的請求資訊才可使用,不適合作為涵蓋所有 App 流量的通用依據。若無法確認請求資訊,請優先檢查網域或位址層級的比對。其他關鍵字說明請參閱概念速查,完整設定流程請見完整手冊。

訂閱與伺服器管理

伺服器資訊決定連線目標;訂閱則用於管理既有伺服器項目。

在 Home 點選 Add Server,加入自己已有的伺服器資訊;若持有服務提供者提供的訂閱連結,請依介面選擇 Subscribe 並填入連結。匯入前請確認資料類型:單一伺服器分享資訊、訂閱連結與完整設定檔並不相同,不能因為都是一段文字就填入同一欄位。

手動填寫時,先選擇與資料相符的通訊協定,再逐項確認位址、連接埠、驗證資訊及傳輸相關欄位。Shadowsocks、VMess、VLESS、Trojan、WireGuard、Hysteria2,以及 HTTP、SOCKS5 的參數並不完全相同,不應將一種通訊協定的填寫方式直接套用到另一種。若缺少欄位,請向原始資料提供者確認,不要自行猜測。

匯入、更新、選取是三件事

匯入後,先確認 Home 是否出現預期項目,再點選要使用的預設伺服器,並確認選取標記。更新訂閱只會重新取得伺服器清單,不代表每個項目都已通過可用性驗證,也不代表目前的預設伺服器已更換。更新後請再次確認目前選取的項目,尤其是項目名稱或數量有變動時。

更新失敗時,先確認目前網路能否連上訂閱網址、連結是否完整,以及服務是否仍有效。訂閱連結可能含有存取憑證,請勿將完整連結放進公開截圖、記錄或留言。刪除舊訂閱前,先確認哪些項目屬於該訂閱,以免失去仍在使用的設定依據。

伺服器測試結果僅反映相應測試方式與當時的網路狀況。數值較小不代表連線所有目標都更快;測試有回應,也不代表驗證、傳輸與目標服務的整段連線都正常。選取項目後,還需實際連線並確認能否存取目標。

On Demand 按需連線

先確認手動連線正常,再新增自動觸發條件。

On Demand 用於依設定條件觸發連線,不會代替使用者選擇正確的伺服器參數或分流規則。在 Settings 找到 On Demand,先查看現有條件,再依實際需求設定 Wi-Fi、行動網路或網域相關條件;可選欄位以目前 App 介面為準。

開始設定前,先用 Home 的連線開關手動測試一次:確認預設伺服器有效、Global Routing 符合預期,且能成功存取目標。接著一次只新增一個條件。例如依 Wi-Fi 名稱設定時,請確認網路名稱拼寫正確;依網域設定時,請明確指定觸發目標,不要將自動連線條件誤認為 [Rule] 中的分流規則。

分開檢查自動連線與流量分流

On Demand 著重於何時建立或觸發連線;Global Routing 與設定檔規則則決定連線建立後如何處理流量。自動連線成功不代表某個網域最後一定會走 PROXY;同樣地,既有連線仍可使用,也不代表自動觸發條件已經驗證。

測試時請實際切換至對應網路,觀察連線狀態,再進行符合條件的存取。若有多個條件,請確認清單順序與各項動作,避免範圍較廣的條件蓋過更具體的條件。若發生關閉後又重新連線的情況,先暫停 On Demand 進行比較,再檢查系統 VPN 狀態;不要反覆修改伺服器資訊來處理自動觸發問題。

裝置進入睡眠、切換網路與系統排程都會影響觀察到的連線行為。建議記錄觸發條件、網路類型與實際結果,逐一重現。Wi-Fi、行動網路與網域的設定說明,請參閱On Demand 按需連線設定。

Data 流量統計

用來查看 App 記錄的連線與流量,不可取代服務提供者的計費紀錄。

Data 頁面可查看 App 提供的流量統計與相關連線資訊。排查前,先留意頁面目前顯示的統計範圍、分類與紀錄內容,再進行一次明確的目標存取,確認是否出現相應變化。不同統計項目的累計範圍可能不同,請以介面標示為準,不要直接將某個累計數字解讀為此次存取的用量。

若要比較 Config 與 Proxy 的狀況,先記下目前模式與統計讀數,再進行相同的存取。若紀錄中有目標、策略或伺服器資訊,請與預期規則比對。僅憑總流量增加無法確認某條規則已命中,因為背景工作也可能同時產生請求。

統計用於排查,不適合推算方案餘額

App 記錄與服務提供者計費之間,可能因統計時段、通訊協定額外流量與計費方式不同而有差異。Data 的數字不應直接視為訂閱餘額,也無法證明某個目標的全部流量都經由同一路徑傳輸。若要確認帳戶用量,請查看服務提供者提供的紀錄。

清除紀錄或重設統計前,先保留本次排查所需資訊。分享紀錄時,請遮蔽伺服器位址、帳號及其他敏感欄位;通常只需提供問題發生時間、目前模式、使用的通訊協定與失敗狀況,就能逐步縮小問題範圍。

Settings 常用項目

每次只調整一個項目,保留原值,並在相同網路環境下重新測試。

DNS:先確認實際生效的位置

DNS 會將網域名稱解析為位址,也會影響部分位址類規則的判斷。檢查 Settings 中與 DNS 相關的選項時,也要確認目前 Config 是否設定了 DNS 參數;不要只修改一個介面,就假設所有解析行為都已改變。使用系統解析的設定方式可以是 dns-server = system。

需要自訂解析時,請依目前 App 支援的格式填寫,並確認解析服務在目前網路中可連線。DNS over HTTPS 改變的是解析請求的傳輸方式,不會自行修正伺服器驗證錯誤。修改後請重新建立連線並存取目標,分別確認解析與連線是否成功。相關設定取捨請參閱DNS 設定說明。

Test Method:確認延遲測試的項目

在 Settings 的 Test Method 查看目前測試方式,再返回 Home 測試既有伺服器。不同方式關注的連線階段不同,因此測試讀數只適合在方法相同、時間相近且網路一致的情況下有限比較。更換 Test Method 後,不宜直接將新讀數與先前另一種方式的結果排序比較。

若測試有回應但網頁無法開啟,請繼續檢查驗證參數、目標規則、DNS 與實際請求結果;若測試沒有回應,也要分辨是測試目標受限,還是伺服器完全無法使用。最終仍以能否正常存取所需目標為準。

Today Widget:快捷操作仍須確認狀態

在 Settings 查看 Today Widget 相關選項,並依裝置系統提供的方式設定相應的小工具入口。它可供快速查看或操作 App 提供的連線功能,實際可用內容以目前 App 與系統介面為準。首次使用前,請先在 Home 完成伺服器選取與連線授權。

透過小工具操作後,返回 App 確認連線開關與目前伺服器。小工具不是獨立的連線設定,也不能取代 Global Routing 的選擇。若裝置未顯示預期入口,請先確認系統小工具清單與 App 設定,不要因此判定訂閱匯入失敗。

iCloud 同步:同步不等於驗證或完整備份

在 Settings 檢查 iCloud 同步相關開關,同時確認裝置已登入自己的 Apple 帳號,且已允許使用相應的 iCloud 功能。同步範圍以目前 App 列出的項目為準,不要假設連線狀態、診斷紀錄與所有本機資料都會一併轉移。

在另一部裝置開啟 App 後,逐項確認伺服器、設定檔與目前選取項目,再進行連線測試。大量刪除或修改設定前請先保留副本,因為同步可能會將變更套用到其他裝置。App 購買紀錄還原與設定資料同步是兩回事;購買問題請參閱已購項目還原說明。

Diagnostics:針對單次故障收集資訊

在 Settings 找到 Diagnostics,依介面提供的診斷項目檢查目前連線環境。開始前記錄網路類型、Global Routing、所選伺服器與無法存取的目標;接著只重現一次明確問題,再查看該時段的診斷結果。避免將大量不相關的歷史資訊混在同一次排查中。

診斷結果應與 Home 的 Connectivity Test、實際目標存取及 Data 中的紀錄交叉比對。記錄中的單一失敗不一定代表所有連線都失敗;同樣地,某項測試通過也不代表所有 App 都能正常存取。匯出或分享資料前,請先確認是否包含訂閱連結、驗證欄位或個人存取紀錄。

設定檢查順序

分開確認自動觸發、伺服器連線與規則命中。

  1. 保留目前狀態。記下 Global Routing、選取的伺服器、啟用的設定檔與 On Demand 條件;修改設定前先保留副本。
  2. 先測試手動連線。暫時排除自動觸發條件的影響,在 Home 選取預設伺服器,開啟連線開關,並依系統提示完成 VPN 設定授權。
  3. 接著測試實際存取。執行 Connectivity Test 後存取所需目標,區分測試失敗、網域解析失敗與目標服務本身沒有回應。
  4. 比對模式與規則。必要時暫時比較 Proxy 和 Config 的結果,檢查規則順序、最終策略與 DNS;一次只調整一項設定。
  5. 最後恢復自動條件。確認手動連線與流量分流正常後,再恢復 On Demand,並透過實際切換網路確認觸發行為。

若仍無法找出問題,請保留能重現狀況的最少步驟,依完整手冊逐階段檢查。首次設定可從連線教學開始;購買、系統需求與相容性資訊請前往App Store 正版查核頁查看。系統需求與適用裝置均以 App Store 頁面標示為準。