官方手冊 / 功能與設定

Shadowrocket 功能介紹
分流、連線與診斷設定

先確認流量的處理方式,再設定連線時機,最後透過測試與記錄核對結果。以下說明適用於 iPhone 和 iPad 的常見操作。

需要依規則分流時選擇 Config;Proxy 與 Direct 則適合明確的全域需求或臨時對照測試。Global Routing 設定的是整體流量處理方式,不是伺服器清單,也不代表目前已建立連線。切換模式後,仍須確認 Home 中選擇的伺服器、連線開關及目標連線結果。

介面選項 處理方式 適用情境 檢查重點
Config(設定檔) 依目前生效設定檔中的規則決定處理策略。 不同網域或位址需要分別使用 PROXY、DIRECT 或 REJECT。 Config 中選取的檔案、規則順序與 FINAL。
Proxy(代理) 以代理方式處理接管的流量,不逐條套用 Config 的一般分流規則。 暫時確認所選伺服器能否連線至目標。 伺服器是否可用,以及目標是否允許該連線。
Direct(直連) 以直連方式處理接管的流量。 對照目前網路的直連結果,區分代理連線與本地網路問題。 本地網路、DNS 與目標本身是否可用。

設定與確認

在 Home 開啟 Global Routing,選擇所需模式後返回。使用 Config 前,先在 Config 確認已選取目標設定檔,再建立連線並測試一個已知目標。若同一目標在 Proxy 下可連線、在 Config 下失敗,請優先檢查命中的規則、策略指向與 DNS。這只能協助縮小排查範圍,不能只憑一次對照就認定規則有誤。

Proxy 並非「修復設定檔」的按鈕。臨時測試後應恢復原本需要的模式,否則區域網路存取及其他流量的處理方式可能改變。Direct 也不代表關閉連線開關:它只會改變流量處理方式,是否維持連線仍由開關與 On Demand 等條件決定。

繼續閱讀:Config、Proxy、Direct 的差異與日常用法 →

規則由「比對項目」與「命中後的處理方式」組成。DOMAIN 精確比對完整網域;DOMAIN-SUFFIX 比對指定網域及其子網域;DOMAIN-KEYWORD 依網域中的關鍵字比對;IP-CIDR 與 IP-CIDR6 分別比對 IPv4、IPv6 位址範圍;GEOIP 則依位址歸屬資料庫比對。各類規則參照的資訊不同,網域規則不能直接取代位址規則。

PROXY、DIRECT、REJECT 是處理策略,不是規則類型:分別代表交由代理處理、直接連線及拒絕連線。規則通常由上而下檢查,命中第一條後即生效,因此具體規則應排在範圍較廣的規則之前。FINAL 為前面都未命中的流量提供預設處理方式,應放在規則末尾。

[Rule]
DOMAIN-SUFFIX,ads.example.com,REJECT
DOMAIN-SUFFIX,example.com,PROXY
IP-CIDR,192.168.0.0/16,DIRECT
FINAL,DIRECT

範例中,ads.example.com 會先命中 REJECT,不會落入後方的 example.com 範圍。該網域範圍內的其他流量使用 PROXY,指定的私有位址範圍使用 DIRECT,其餘流量則由 FINAL,DIRECT 處理。範例僅用於說明語法,不代表這些網域對應的連線服務可用,也不能直接取代完整設定檔。

修改時一次只調整一項判斷條件

先保留原設定檔,在 Config 編輯副本的 [Rule] 區段,儲存後確認已選取該檔案,再返回 Home 使用 Config 測試。修改後重新發出目標請求,避免將舊連線的結果誤認為新規則的效果。若實際策略與預期不同,請查看請求記錄,確認應用程式實際使用的網域與目標位址。一個頁面可能同時連線至多個網域,不能只為網址列中的網域設定一條規則,就認定所有請求都會套用相同策略。

以下操作以使用者已有自己的訂閱或伺服器資料為前提。伺服器項目會儲存連線位址、連接埠、協定與驗證等參數;Subscribe 可透過現有訂閱網址取得並更新一組項目。Config 則負責全域參數與流量分流等設定,匯入伺服器資料不代表同時取得符合需求的規則檔。

手動新增與匯入訂閱

只有單一伺服器資料時,請在 Home 進入 Add Server,依原始資料選擇協定並逐項填寫。Shadowsocks、VMess、VLESS、Trojan、HTTP、SOCKS5、WireGuard、Hysteria2 等協定的欄位各不相同,請以應用程式實際顯示的協定選項及現有資料為準,不要混用不同協定的密碼、識別資訊或傳輸參數。

使用訂閱時,請在 Add Server 選擇 Subscribe,輸入自己的完整訂閱網址並儲存,再更新訂閱。匯入後確認群組與項目是否出現,選擇一個項目執行 Connectivity Test,最後再連線至實際目標。訂閱更新成功只代表資料已取得並解析,不保證每台伺服器目前都可用。

更新前先辨別項目來源

訂閱中的項目可能在更新時重新產生,直接修改其中欄位不一定能長期保留。若需要持續使用本地調整,請先儲存必要資訊,並區分手動項目與訂閱項目。刪除群組、清除重複項目或更換訂閱前,請確認目前連線使用哪個項目,避免一併移除正在使用的資料。

On Demand 會依設定條件要求系統建立連線,適合需要在特定網路環境下自動連線的情況。它與規則分流負責的工作不同:On Demand 管理連線觸發條件,Global Routing 與 Config 則決定連線後的流量處理方式。啟用 On Demand 不會自動補上訂閱、選取可用伺服器或修正規則。

首次設定前,請先關閉自動觸發,手動完成伺服器選擇、VPN 設定授權與連線確認。確認基本連線正常後,再進入 Settings 的 On Demand,依頁面實際提供的網路條件設定連線行為。不同裝置與應用程式狀態下,可用選項可能不同,請依目前介面逐項確認,不要直接照搬不適用的操作路徑。

設定後,分別在需要觸發與不需要觸發的網路環境中測試,觀察是否依預期建立連線,再確認一次目標是否可用。若手動中斷後又自動連線,請先檢查 On Demand 條件與系統中的相關 VPN 設定;若切換網路後連線失敗,先在新網路手動測試伺服器,不要立刻增加更多觸發條件。

自動連線不代表伺服器一定持續可用。網路切換、驗證失效或訂閱資料變更都可能影響連線結果。排查期間可暫時關閉 On Demand,避免自動重新連線干擾對照測試;測試完成後,再恢復原先需要的條件。

Data 用於查看用戶端記錄的流量情況,適合觀察連線期間是否有資料傳輸,或比較某次操作前後的變化,但不應視為連線服務的結算帳單。用戶端記錄範圍、統計時間與伺服器端的計量方式可能不同;數值不一致時,請先確認各自統計的連線與時間範圍。

進入 Data 後,先查看頁面提供的時間範圍與統計對象。進行小範圍測試時,記下測試前的數值,暫停其他持續傳輸的工作,只連線至一個目標,再觀察流量增量。若介面提供重設或清除功能,執行前請先儲存需要的記錄;清除本地統計不會變更伺服器端記錄的用量。

流量有所變化不代表目標已成功開啟,背景請求、連線重試及其他 App 也可能產生傳輸。反過來說,頁面載入失敗但流量增加也不矛盾。應搭配目前的模式、目標請求結果與 Diagnostics 一起判斷,不能只因 Data 數值增加,就認定規則正確或伺服器正常。

不需要一次修改 Settings 中的所有選項。先保留預設行為並建立可用的基準,再依明確問題調整。部分功能也會受到目前 Config、系統權限或裝置環境影響;找不到選項時,請先確認應用程式內的介面,不要將其他裝置的選單位置視為固定路徑。

DNS:網域解析與規則判斷的基礎

DNS 會將網域解析為位址,相關行為可能同時受 Settings 與目前設定檔的 [General] 區段影響。排查時先確認實際生效設定檔中的 DNS 參數,再檢查網路是否能連線至指定的解析服務。不要疊加多個來源的參數後只修改其中一處,否則很難判斷是哪項設定造成結果改變。

若只有部分網域連線失敗,先比較其他網域及不同網路下的結果,再檢查 DNS 解析結果與規則命中情況。一次只調整一項,重新建立連線並發出新請求。某個位址可連線,不代表網域解析整體正常;盲目更換 DNS 也無法解決驗證失敗或伺服器無法連線的問題。

Test Method:了解 Connectivity Test 的測試範圍

Test Method 決定 Connectivity Test 使用的測試方式。在 Settings 中找到這個選項,查看目前可選方式,再以相同方法比較各項目。若介面允許設定測試目標,請使用已知可連線且符合測試要求的目標,並在比較期間維持相同條件。

不同測試方式測量的階段不同,結果不適合直接橫向比較。測試成功不代表所有網站都能連線,逾時也可能是測試目標或目前網路所致。請先確認測試方式與目標,再檢查伺服器位址、連接埠及驗證資料;不要只因單次測試結果就反覆切換項目。

Today Widget:快速操作與狀態查看

Today Widget 適用於系統支援的小工具情境。請先在應用程式中確認相關設定,再透過系統提供的編輯入口加入。可使用的位置與操作方式取決於系統支援情況,請以裝置實際顯示為準;系統需求請以 App Store 頁面標示為準。

首次設定、編輯伺服器與檢查規則仍應在應用程式內完成。小工具中的狀態適合快速查看;若顯示未即時更新或連線結果不符,請開啟 Home 確認目前的伺服器與連線開關,不要連續點按快速操作。

iCloud 同步:跨裝置使用前先確認資料範圍

iCloud 相關功能可在支援範圍內同步應用程式資料。進入 Settings 檢查同步開關,並在系統設定中確認相應的 iCloud 權限與可用空間。實際同步項目請以應用程式介面說明為準,不要將應用程式購買記錄、伺服器資料、連線狀態與歷史統計都視為相同的同步內容。

首次啟用前,請保留重要設定;在另一部裝置上逐項確認資料是否完整,再進行本機修改。雲端資料已出現不代表系統 VPN 授權也已完成,仍須在目標裝置上自行確認。伺服器與訂閱可能包含驗證資訊,啟用同步前請確認所用帳號與裝置均由本人妥善管理。

Diagnostics:針對單次失敗收集線索

Diagnostics 可用於查看或產生排查所需的診斷資訊。發生問題時,請從 Settings 中對應的入口進入,依目前介面提供的方式記錄一次重現過程。先記下網路環境、Global Routing 模式、所選伺服器與目標,再執行一次操作;比起混合多次切換後的記錄,這樣更容易判斷問題。

請區分連線建立失敗、網域解析失敗與目標請求失敗。分享記錄前,請隱藏訂閱網址、伺服器驗證資訊及個人請求內容,只保留排查所需的片段。Diagnostics 僅提供輔助資訊,無法取代正確的伺服器資料,也不能只憑單一提示推斷所有原因。

  1. 確認資料。在 Home 檢查所選項目的來源、協定與必要欄位;若需要更新訂閱,請先完成更新,再確認項目仍已正確選取。
  2. 確認模式。日常規則分流使用 Config,並在 Config 確認目前的檔案。需要對照時,暫時使用 Proxy 或 Direct,完成後再恢復原設定。
  3. 確認目標。先執行 Connectivity Test,再連線至實際需要使用的目標。分別記錄測試方式、測試目標與實際連線結果。
  4. 確認自動連線。手動連線穩定後再啟用 On Demand,並分別測試會觸發與不會觸發的環境。
  5. 確認記錄。搭配 Data 觀察變化,必要時使用 Diagnostics 記錄一次重現過程;若仍無法定位,請還原最近的修改,不要同時重寫所有設定。

完成功能設定後,若仍遇到連線開關無法啟用、訂閱更新失敗或特定目標無法連線,請依症狀前往故障排除繼續檢查。若需重新取得 App,請參閱App Store 正版驗證與購買說明;開發者為 Shadow Launch Technology Limited,App ID 為 932747118,相容性與購買範圍請以 App Store 頁面標示為準。