• 官方手冊
  • 功能與常用設定

Shadowrocket 功能
路由與設定說明

先確認 Global Routing,再檢查伺服器與 Config。連線開關、規則策略、DNS 和統計各自負責不同環節,不應以單一測試結果判定整體連線狀況。

適用於 iPhone 與 iPad。系統需求與相容性請以 App Store 頁面標示為準。

Global Routing 三種模式

Global Routing 決定請求採用哪一種路由處理方式。先在 Home 查看目前模式,再選擇 Config、Proxy 或 Direct。中文說明分別稱為設定、代理、直連;實際操作時請依應用程式中的英文項目辨認。模式選擇與連線開關是兩回事:選擇 Proxy 不代表已建立連線,選擇 Config 也不代表某份規則檔已正確啟用。

日常依規則區分請求時使用 Config;要確認所選伺服器能否處理特定請求,可暫時切換至 Proxy 比對;要觀察原有網路能否直接存取,則可用 Direct 比對。每次只變更一個條件,並以相同目標、相同網路重複測試,才能判斷差異來自模式、規則或伺服器。

介面項目 處理方式與適用情境 設定後檢查
Config(設定) 依目前啟用的 Config 規則比對請求,適合需要區分直連、代理與拒絕的情境。 確認已選取正確設定、規則順序無誤,且比對後套用的策略指向預期出口。
Proxy(代理) 以代理模式處理請求,適合比對所選伺服器的連線狀況。 確認目前伺服器、驗證資訊與傳輸參數;不要據此推斷 Config 規則已生效。
Direct(直連) 以直連模式處理請求,適合觀察目前本機網路的存取狀況。 檢查本機網路與 DNS;直連失敗不一定是伺服器造成。

完成比對後,請恢復原本日常使用的模式。部分網路行為也會受到系統、DNS 與連線狀態影響,因此 Direct 不代表「所有設定都已關閉」,Proxy 也不保證任何應用程式請求都能成功。模式只決定路由方向,無法修正錯誤的驗證資訊或無法使用的目標服務。

規則類型與策略

規則分流是在 Config 模式下,依據請求的網域、位址或其他可用特徵決定處理策略。前往 Config 查看目前使用的檔案及其中的規則,先看比對條件,再看末尾的策略。比對條件說明「哪些請求」,策略說明「如何處理」,兩者不可混為一談。通常應將較具體的規則排在前面,避免先符合範圍較廣的條件。

依網域與位址選擇條件

DOMAIN 比對指定網域;DOMAIN-SUFFIX 用於比對網域後綴;DOMAIN-KEYWORD 依網域中的關鍵字比對。IP-CIDR 與 IP-CIDR6 分別表示 IPv4 和 IPv6 網段,GEOIP 則依位址歸屬資料參與比對。USER-AGENT 需使用請求中可取得的相應資訊,不能假設每個請求都符合此條件。選擇規則類型時,應以實際可取得的請求特徵為準。

DIRECT、PROXY 與 REJECT

DIRECT 表示直連,PROXY 表示透過代理處理,REJECT 表示拒絕。若設定使用自訂策略名稱,也要確認該策略實際指向的伺服器或策略群組。FINAL 是前面的規則皆未命中時的最後處理方式,不是「優先順序最高」的規則;修改 FINAL 可能影響大量未被個別規則涵蓋的請求。

DOMAIN,example.com,PROXY
DOMAIN-SUFFIX,example.org,DIRECT
IP-CIDR,192.168.0.0/16,DIRECT
FINAL,DIRECT

以上範例僅說明語法與順序,並非適用於所有網路的完整設定。新增規則後,請以明確的目標驗證比對結果;若網域規則未如預期運作,也應檢查請求是否以 IP 位址發出、DNS 是否回傳預期結果,以及前面是否已有符合條件的規則。詳細排查方式請見DNS 排查說明。

Subscribe 與伺服器管理

Subscribe 用來讀取你已有的訂閱內容,Add Server 則用來新增單一伺服器。兩種方式都以你已持有有效資訊為前提。訂閱連結請向你的服務供應商取得;手動新增時,伺服器位址、連接埠、密碼、協定及傳輸參數也必須與伺服器端一致,不能只憑名稱或常見預設值猜填。

從 Home 的新增入口進入 Add Server,依現有資料選擇 Type。匯入訂閱時選擇 Subscribe 類型及相應欄位,確認連結完整後儲存並更新內容。掃描時可使用 Scan QR Code,但仍應先確認 QR Code 的來源與內容。匯入完成後返回 Home,展開相應群組,選取要使用的伺服器,再執行 Connectivity Test 並驗證實際存取狀況。

伺服器列表中「已顯示項目」只代表用戶端讀取到內容,不代表該項目一定能連線。訂閱更新失敗時,先確認連結是否過期、遭截斷,以及目前網路能否連線至訂閱網址;不要為了嘗試不同參數而不斷建立重複群組。保留原有項目有助於比對,但請記下實際選取的伺服器,避免測試對象混淆。

匯入訂閱與匯入 Config 檔案並不完全相同:前者通常用來管理伺服器項目,後者則包含規則及其他設定內容。請先確認取得的是哪一類資料,再進入相應介面操作。遇到更新異常,可接著閱讀Subscribe 失敗排查。

多種協定與參數核對

Shadowrocket 支援多種協定,包括 Shadowsocks、VMess、VLESS、Trojan、HTTP、SOCKS5、WireGuard 與 Hysteria2。協定決定用戶端與伺服器如何交換資料,並非依名稱區分的「速度等級」。在 Add Server 中先選擇與伺服器端一致的 Type,再填入該類型所需欄位;目前可用項目請以應用程式內顯示為準。

使用 TLS 的連線需要核對伺服器名稱、憑證及相關設定;SNI 不一定等於連線位址,必須依既有設定填寫。VMess、VLESS 等類型涉及的識別資訊與傳輸設定也應逐項核對。WireGuard 的金鑰與位址設定有其專屬格式,不能直接填入其他協定的密碼。匯入後看似相似的兩個項目,也可能在傳輸方式或驗證欄位上有所不同。

設定完成後,先執行 Connectivity Test,再驗證實際需要的服務。測試失敗時,請逐項核對參數,不要連續切換多種協定。不要將放寬憑證檢查當成通用修復方式;若伺服器憑證或名稱不符,應先核對資料與伺服器端設定。協定參數可能包含敏感資訊,排查時只提供必要的錯誤提示,並遮蔽驗證欄位。

Config 設定檔

Config 用來整理規則及相關設定項目。進入 Config 查看本機或遠端設定,確認已選取要使用的檔案,再返回 Home 將 Global Routing 設為 Config。只儲存檔案卻未啟用,或仍處於 Proxy 模式,都無法用來驗證該檔案中的分流規則。

修改前,先保留目前可用設定的副本,並標記準備調整的項目。若只想變更特定網域的處理方式,就只修改相應規則及其位置,不要同時調整 DNS、伺服器與 FINAL。儲存後以相同目標重新測試,確認結果再進行下一項調整。如此便能對照變更與結果,也方便還原設定。

遠端設定更新可能變更規則或其他設定;手動修改是否保留,需依設定來源與更新方式確認。不要將含有私人驗證資訊的完整檔案貼到公開討論區,也不要只憑檔名判斷內容是否合適。若不清楚項目的來源與用途,請先閱讀設定再啟用;規則語法範例不等於可直接使用的完整檔案。

On Demand 按需連線

On Demand 依照設定的網路條件觸發連線,與 Config 中依請求進行分流的規則並非同一層設定。前者決定何時嘗試連線,後者決定連線中的請求如何處理。若要依 Wi-Fi、行動網路或特定網路條件管理連線,可前往 Settings 中的 On Demand 檢查可設定項目。

請先確認手動開啟連線後可正常使用,再設定 On Demand。依應用程式目前提供的條件,設定所需的網路範圍,儲存後在相應網路環境中測試。建議先設定一項可重現的條件,例如明確切換一次網路,觀察觸發結果後再增加其他條件;基礎連線尚未成功時,不要依賴自動觸發來排除問題。

若手動關閉後連線又再次觸發,請先檢查 On Demand 條件,不要反覆重新啟動應用程式。測試結束後若要停止按需連線,應一併檢查相關設定與目前連線狀態。網路切換後的狀況也會受到系統排程與網路可用性影響,設定條件不代表任何環境下都能立即連線。連線頻繁變動時,可暫時停用按需條件,以手動連線建立穩定的比對基準。

Data 流量統計

Data 用來查看用戶端記錄的流量與連線活動。在 Data 中先確認目前檢視畫面、統計範圍與分類方式,再查看上傳、下載及相關項目;依伺服器或應用程式分類的內容,請以目前介面實際提供的項目為準。統計數據適合用來比較操作前後的變化,不應直接視為服務供應商帳單或系統全部流量的副本。

驗證分流時,先記下目前數據與所選伺服器,再執行一次明確的存取操作,接著返回 Data 查看變化。背景活動、連線耗用、快取命中與統計範圍都會影響結果;某個項目沒有明顯增加,不能單獨證明規則失效。應一併參考目前的 Global Routing、規則比對結果與實際存取狀況。

Data 中的累計數據也不是即時網速測試。若要排查速度緩慢,請維持網路與目標一致,分別觀察伺服器測試、實際請求耗時及流量變化。清除統計前,先記錄需要保留的比對數據,並確認清除範圍。對外分享截圖時,請遮蔽伺服器位址、請求網域及其他私人資訊;詳細數據解讀可參閱技術筆記。

Settings 常用項目

Settings 集中管理應用程式層級的設定,但部分行為也可能受目前 Config 影響。調整前先記下原有數值並確認設定範圍;每次只變更一項,並在相同網路與目標下重新測試。以下依常見操作目的說明檢查方向,實際入口與可選值請以目前應用程式顯示為準。

DNS:先確認解析路徑

DNS 會將網域名稱解析為位址,是連線前的重要環節。前往 Settings 查看 DNS 相關項目,同時檢查目前 Config 是否有相應設定。若只有網域存取失敗,而直接使用已知位址測試的結果不同,應優先檢查解析結果與請求路徑,而非先修改協定密碼。不要隨意疊加多個 DNS 位址;應先確認預期使用的解析方式、可連線性與適用範圍,再以同一網域測試。

Test Method:解讀測試結果

Test Method 決定 Connectivity Test 使用的測試方式。前往 Settings 查看目前選項與相關測試目標,確認符合要比較的情境。不同方法測量的環節不同,不宜直接交叉比較結果;測試通過也不代表所有服務都能使用。比較伺服器時,固定 Test Method、目標與本機網路,再觀察多次測試結果,避免將測試條件變化誤判為伺服器表現變化。

Today Widget:查看快速入口

Today Widget 可搭配系統提供的相應小工具入口使用。先在 Settings 查看相關選項,再前往系統的小工具管理介面確認可新增的內容。是否顯示及實際操作方式會受到系統與應用程式目前支援情況影響,請以裝置實際提供的入口為準。快速入口不會改變 Global Routing 與 Config 的意義;透過小工具操作後,仍應返回 Home 確認伺服器與連線狀態。

iCloud:同步前確認內容範圍

若要在自己的裝置間同步,請檢查 Settings 中的 iCloud 相關選項,並確認系統已允許應用程式使用 iCloud。先了解目前可同步的內容範圍,再決定是否啟用;同步不等於還原購買項目,也不能取代唯一備份。跨裝置操作前,請保留目前可用的設定,確認同步結果後再刪除舊項目,避免混淆不同裝置上的修改。

Diagnostics:保留可重現的線索

Diagnostics 用於診斷連線問題。進入相應入口後,針對明確的故障重現操作,記錄當時的網路類型、Global Routing、所選伺服器與錯誤提示。診斷資料可能包含位址、網域或驗證資訊,分享前請逐項檢查並遮蔽私人資料。需要協助時,提供問題發生步驟與必要片段即可,請勿公開完整訂閱連結或全部設定內容。