Shadowrocket 官方手冊 · 功能與設定
Shadowrocket 功能與設定
設定時先從路由模式開始,再檢查伺服器、設定檔與解析方式。本頁以 iPhone 和 iPad 的操作為主,依「功能是什麼、在哪裡、如何設定、有哪些注意事項」逐項說明。介面入口與可用選項以裝置上實際顯示為準;系統需求以 App Store 頁面標示為準。
日常使用通常不必同時調整多個選項。先用現有伺服器資訊建立連線,再選擇合適的 Global Routing 模式。每次只修改一項設定,並記下修改前的值,遇到存取異常時才能分辨問題來自伺服器、規則、DNS 或本地網路。
Global Routing:設定、代理與直連
Global Routing 用來決定連線採用哪一種路由方式。在 Home 找到該入口,進入後選擇 Config、Proxy 或 Direct。這三種模式分別代表設定、代理與直連;它們不是三台伺服器,也不會取代伺服器的位址、驗證與協定參數。
| 模式 | 主要行為 | 適用情境 | 檢查重點 |
|---|---|---|---|
Config 設定 |
依據目前生效設定檔中的規則決定策略。 | 需要依網域、位址或其他比對條件進行分流。 | 是否選取正確的設定檔,以及規則引用的策略是否有效。 |
Proxy 代理 |
以代理模式處理流量,實際行為仍會受到相關設定影響。 | 暫時判斷異常是否與設定檔中的分流規則有關。 | 目前伺服器是否能連線,以及代理路徑是否可用。 |
Direct 直連 |
以直連模式存取,不經由選取的代理伺服器轉送。 | 對照本地網路的存取情況。 | 本地網路與 DNS 是否正常,以及目標是否可直接存取。 |
如何選擇與驗證
已有明確分流需求時,先在 Config 確認生效中的檔案,再將 Global Routing 設為 Config。若某個目標無法存取,可暫時切換至 Proxy,對照相同目標的結果;若代理模式正常、設定模式異常,應優先檢查規則比對與策略指向,而非立刻更換所有伺服器參數。
Direct 適合用來對照本地網路,但不等於關閉系統 VPN。若要確認連線是否已關閉,請查看 Home 的連線開關與系統狀態。測試結束後,請恢復原本的模式,避免將暫時用於排查的設定留作日常設定。
規則分流:先比對,再套用策略
規則由「比對類型、比對內容、策略」等欄位組成,用來描述某類連線應如何處理,而非伺服器的連線參數。通常可在 Config 開啟目前的設定檔,檢查 [Rule] 區段。編輯前先保留可還原的副本;修改完成後,也要確認該設定檔確實已生效。
規則類型與比對對象
DOMAIN 用於比對完整網域;DOMAIN-SUFFIX 用於比對網域後綴;DOMAIN-KEYWORD 則檢查網域中的關鍵字。三者的涵蓋範圍不同。遇到網域問題時,應先確認需要精確比對,還是要涵蓋子網域,再選擇關鍵字;不要將完整網址中的路徑直接當成網域填入。
IP-CIDR 與 IP-CIDR6 分別表示 IPv4、IPv6 位址範圍;GEOIP 依據位址資料庫進行比對,結果會受資料庫與解析結果影響。USER-AGENT 針對請求中可識別的相應欄位,但有可見性限制,不應假設它能涵蓋所有應用程式連線。規則能否判斷某項請求,取決於當時可取得的資訊。
策略與順序
DIRECT 表示直接連線,PROXY 表示代理策略,REJECT 表示拒絕符合條件的連線。設定檔也可能引用自訂策略名稱;名稱必須對應到檔案中實際存在的定義。規則通常依序比對,較具體的規則應放在較廣泛的規則之前;FINAL 則處理未符合前面規則的連線。
[Rule]
DOMAIN,example.com,PROXY
DOMAIN-SUFFIX,example.net,DIRECT
IP-CIDR,192.168.0.0/16,DIRECT
FINAL,PROXY
本段僅說明語法與順序,並非完整設定。範例中的網域僅供文件說明使用。新增規則後,請以該網域建立新連線並檢查結果;已建立的長連線不一定會因修改而立即改走其他路徑。如需重新連線,請先結束測試請求,再建立新的請求。
Config:設定檔與生效範圍
Config 是管理設定檔的入口。設定檔可能包含一般參數、DNS、規則與策略定義,因此影響的不只是單一分流規則。伺服器項目出現在清單中,不代表某份設定檔已啟用;同樣地,儲存設定檔的修改,也不代表目前的路由模式一定會依該檔案進行分流。
選擇設定檔前的檢查
- 開啟
Config,確認預計使用的檔案來源與內容。只使用已了解用途且來源可信的設定檔。 - 保留目前可用設定檔的副本,並核對新設定檔中的策略名稱、規則順序與 DNS 設定。
- 選擇要生效的設定檔,返回
Home確認Global Routing是否設為Config。 - 以明確的測試目標建立新連線,檢查實際結果;若有異常,先還原副本,再逐項找出差異。
遠端設定檔可能在更新後覆蓋本地修改。若要長期保留自訂內容,應先了解目前檔案的更新方式,再決定如何維護。不要將陌生設定檔中的所有選項原封不動搬到日常環境;尤其是涉及憑證、請求處理或解析行為的內容,應個別確認用途與影響範圍。
訂閱與伺服器管理
Home 中的伺服器清單用來選擇連線端點。單一伺服器包含協定類型、位址、連接埠與驗證等參數;Subscribe 則透過既有訂閱網址更新一組伺服器。匯入的內容應來自使用者已有的服務資訊,參數需與服務端一致。
Add Server:手動新增與核對
在 Home 進入 Add Server,先選擇正確的協定類型,再填寫位址、連接埠與驗證資訊。Shadowsocks、VMess、VLESS、Trojan、HTTP、SOCKS5、WireGuard 與 Hysteria2 的參數各不相同,不能只憑伺服器名稱判斷協定。若服務資訊包含 TLS、傳輸方式或伺服器名稱等欄位,請逐項對照填寫,不要隨機切換選項,寄望碰巧找到可用的組合。
儲存後返回清單並選取該伺服器,先執行 Connectivity Test,再建立實際存取請求。測試通過只代表在該測試條件下有回應,不保證所有目標、協定與持續傳輸都正常;測試失敗時,也需一併考量本地網路與測試方式。
Subscribe:匯入、更新與刪除
需要匯入既有訂閱時,在 Add Server 選擇 Subscribe,輸入自己的訂閱網址並儲存。更新後檢查群組與伺服器項目是否出現,再選取其中一項進行測試。若訂閱失敗,先核對完整網址、訂閱狀態,以及目前網路能否存取該網址;不要連續重複匯入相同內容。
更新訂閱可能會重新產生項目,因此不宜只將重要的手動修改留在由訂閱管理的項目中。刪除單一伺服器與刪除整份訂閱的影響不同;清理前先確認選取的對象,並記下目前使用的群組。訂閱網址通常含有存取憑證,截圖、記錄與備份中都應遮蔽完整網址及驗證欄位。
On Demand:依條件觸發連線
On Demand 用來依照設定的網路條件觸發連線行為。它處理的是「何時建立連線」,並不決定「特定網域要採用哪種策略」;後者仍由 Global Routing 與設定檔規則處理。可在 Settings 中尋找 On Demand,實際入口與可用條件以目前介面為準。
設定與試運作
先關閉自動觸發,手動確認目前的伺服器與設定檔可以正常連線,再進入 On Demand 設定所需條件。若介面提供網路類型或指定網路相關選項,只勾選確實需要的條件,儲存後在對應的網路環境中測試。檢查觸發前後的連線狀態,確認行為符合預期後再保留設定。
自動連線不保證能從伺服器故障中恢復。網路切換、系統排程與伺服器狀態都可能影響連線建立過程。若關閉連線後又自動連上,請先檢查 On Demand,不要誤以為連線開關故障。暫時排查時可先停用自動觸發,完成手動測試後再恢復。
Data:查看流量統計
Data 用來查看客戶端記錄的流量狀況。進入介面後,先確認顯示的統計範圍、時間範圍與分類,再比較上傳與下載資料。頁面上的累計值與目前速率是不同指標,不能將一段時間的總流量直接當成目前連線速度。
如何運用統計輔助判斷
需要觀察一次存取時,先記下目前讀數,再執行一項明確操作,例如開啟某個頁面,接著返回 Data 查看變化。盡量避免同時進行系統更新、雲端同步或其他大量傳輸作業,否則無法將變化歸因於單一操作。若要使用重設功能,先保存需要保留的讀數,並確認重設範圍。
客戶端統計與服務端計費可能採用不同的時間週期、流量計算方式與協定額外負載處理方式,因此數值不一定相同。Data 適合觀察趨勢與找出異常活動,不應取代服務端的用量記錄,也不能只憑累計流量判斷訂閱是否到期。若連線開關已開啟但資料沒有變化,應搭配實際請求與診斷資訊繼續檢查。
Settings:常用項目與調整範圍
Settings 包含解析、測試、快速操作、同步與診斷等入口。部分行為也可能由目前的設定檔控制。調整前應先分清「應用程式中的選項」與「設定檔中的參數」,記下原始值,並確認實際生效的是哪一處,以免在兩處重複修改後無法判斷結果。
DNS:先確認解析路徑
DNS 會將網域轉換為連線所需的位址。可在 Settings 查看 DNS 相關選項,並確認 Config 中是否已有解析設定。遇到網域存取異常時,先比較不同目標與不同本地網路的狀況,再檢查解析結果及存取路徑;不要將所有連線失敗都歸因於 DNS。
需要調整時,每次只修改一項解析選項,並以相同目標重新測試,同時留意快取對結果的影響。所選的解析服務必須能透過目前路徑連線;更改 DNS 無法修復錯誤的伺服器密碼、失效的訂閱或無法建立的傳輸連線。區域網路名稱與公開網域也可能需要不同的解析方式,修改後應分別驗證。
Test Method:確認測試對象
Test Method 決定連線測試採用的方法,可在 Settings 中尋找。不同方法檢查的連線環節不同,結果不適合直接混在一起排序比較。先選擇符合目前排查目的的方法,再返回 Home 執行 Connectivity Test,並在相同網路與相同方法下比較結果。
測試耗時較短不代表持續傳輸速度較快。若測試有回應但實際存取失敗,請繼續核對目標、規則、DNS 與傳輸參數;若只有某一種測試方法失敗,應先確認該方法的測試條件是否成立,而不是直接刪除伺服器。
Today Widget:快速入口與狀態確認
Today Widget 用於相關快速操作或資訊顯示,可在 Settings 查看可設定內容,並新增至系統支援的位置。系統提供的顯示方式與功能可用性,以裝置上的實際介面為準。
設定後先手動操作一次,再返回 Home 檢查伺服器選擇與連線狀態。快速入口只是縮短操作步驟,不會取代伺服器設定,也不應只根據短暫未更新的顯示狀態作出判斷。
iCloud 同步:同步前先保留副本
iCloud 同步可在符合條件的裝置間同步應用程式支援的內容。在 Settings 檢查相關選項,同時確認系統的 iCloud 狀態與應用程式權限。啟用前,先在各裝置保留必要副本,再確認要以哪部裝置的內容作為整理基準。
不要假設同步會包含所有統計資料、系統授權與暫時連線狀態。同步內容與處理方式以目前介面說明為準。兩部裝置同時編輯可能讓變更難以追蹤,建議先在一部裝置完成整理,確認另一部裝置收到預期內容後再繼續操作。換機後還原應用程式與同步設定檔也是兩項不同的工作。
Diagnostics:依問題收集資訊
Diagnostics 是協助定位問題的入口,可在 Settings 中尋找。先記下故障發生時的網路類型、路由模式、目標與操作,再使用介面提供的診斷功能。一次只重現一個問題,才能將診斷記錄與實際狀況對應起來。
整理記錄時,保留錯誤類別、發生順序與必要的設定名稱,並遮蔽訂閱網址、驗證資訊、個人網域與網路識別資訊。診斷輸出用來說明連線過程,不代表應將顯示的所有參數都修改一遍。測試完成後,將僅為排查而開啟的記錄選項恢復為日常設定。
設定檢查順序:從連線到自動化
將基本連線、分流與自動化分開驗證,通常比同時調整多項設定更容易找出問題。以下順序適用於新設定驗收,也適用於修改後出現異常的情況。
- 確認伺服器資訊。檢查
Home中選取的項目、協定與驗證參數;訂閱匯入的項目也應確認最近一次更新是否成功。 - 確認路由模式。記下
Global Routing目前的值;需要排查規則時,以相同目標比較不同模式,並在測試後還原原值。 - 確認生效中的設定檔。開啟
Config,核對檔案、策略名稱與比對順序,不要只確認編輯過的檔案是否已儲存。 - 檢查 DNS 與實際請求。區分解析問題、連線建立問題與目標回應問題,避免只憑單一測試耗時判斷整條連線路徑。
- 查看 Data 並視需要執行診斷。以一次明確的存取作為樣本,搭配
Diagnostics記錄解讀結果,不要直接將統計差異視為計費異常。 - 最後啟用自動化與同步。手動連線穩定後,再逐項驗證
On Demand、快速入口與 iCloud 同步,並保留可還原的設定檔副本。
若問題只在某個本地網路發生,優先維持相同伺服器與設定檔,比較不同網路環境;若問題只在 Config 模式發生,優先檢查規則。逐項改變變因以縮小範圍,可減少不必要的修改,也便於在記錄中說明問題發生在哪個環節。