Shadowrocket
功能與常用設定
先確認流量由哪種模式處理,再調整設定與連線條件。本頁依序說明「是什麼、在哪裡、如何設定、有哪些注意事項」,涵蓋 iPhone 與 iPad 常用功能;實際入口及可用選項以 App 內顯示為準,系統需求以 App Store 頁面標示為準。
Global Routing:Config / Proxy / Direct
Global Routing 決定目前連線採用哪種整體處理方式。在 Home 找到 Global Routing,開啟後選擇 Config、Proxy 或 Direct。這不是伺服器協定,也不等於連線開關:選好模式後,仍須確認伺服器、設定檔與主連線開關的狀態。日常需要依網域或位址分別處理流量時,使用 Config;排查問題時可暫時切換至另外兩種模式,完成後再恢復原設定。
| 介面選項 | 處理方式 | 適用情境 | 優先檢查項目 |
|---|---|---|---|
Config 設定檔 |
依據目前啟用設定檔中的規則與策略處理流量。 | 日常分流;區分需要代理與直接連線的請求。 | 目前啟用的設定檔、規則順序、策略指向與最終規則。 |
Proxy 代理 |
由用戶端接管的連線一律透過代理處理,而非依日常規則分流。 | 暫時確認所選伺服器能否處理目標請求。 | 目前伺服器是否可用,以及驗證與傳輸設定。 |
Direct 直接連線 |
由用戶端接管的連線一律直接連線。 | 確認本地網路能否直接連線至同一目標。 | 本地網路、網域解析與目標服務的連線狀態。 |
操作前先記下原本的模式,在相同網路中以相同目標分別測試,避免同時切換網路或更改多項設定。若 Proxy 可以連線但 Config 不行,優先檢查規則是否符合,以及策略是否指向正確伺服器;若 Direct 正常但 Proxy 失敗,則優先檢查伺服器資訊與連線記錄。這些狀況只能協助縮小排查範圍,不能單憑一項結果判定原因。
Direct 不代表關閉系統中的 VPN 設定,Proxy 也不保證所有裝置通訊都會經過代理。測試模式時,應搭配實際請求記錄判斷。切回 Config 後再次確認目前啟用的設定檔,避免日常使用時仍停留在暫時排查模式。
Rules:比對條件與執行結果
規則分流會分別描述「比對哪個請求」與「如何處理該請求」。進入 Config,確認目前啟用的設定檔,再開啟該設定檔的編輯頁面查看規則。規則通常依序比對,較精確的條件應放在較廣泛的條件之前;Global Routing 選擇 Config 時,日常分流應優先檢查目前設定檔中的規則。
先選擇規則類型,再確認策略
DOMAIN 用於精確比對網域,DOMAIN-SUFFIX 涵蓋網域及其子網域,DOMAIN-KEYWORD 則依網域中的關鍵字比對。IP-CIDR 與 IP-CIDR6 表示 IP 位址網段,GEOIP 使用 IP 位址的地理分類。網域規則與 IP 位址規則的判斷條件不同,解析結果也會影響 IP 位址規則的判斷,不應只看規則名稱就推測比對結果。
規則末尾的策略會指定處理方式。DIRECT 表示直接連線,REJECT 表示拒絕;PROXY 應對應至目前設定檔中可用的代理策略或策略群組。若策略群組還有其他選項,也須確認目前選取的項目。只寫上 PROXY 這個名稱,並不代表已有可用的伺服器連線。
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT
此範例表示 example.com 及其子網域使用 PROXY,前面未比對到的請求則由 FINAL 交給 DIRECT。example.com 是教學用網域,此範例不是適用於所有網路的完整設定。FINAL 應作為最後的處理規則,不可放在仍需繼續比對的規則前面。
修改後以實際請求驗證
編輯前先保留可還原的設定檔副本,每次只修改一個條件或策略。儲存後確認修改的是目前啟用的設定檔,接著發出新的目標請求,再從可用的連線記錄查看比對到的規則與策略。既有連線可能仍沿用先前的處理結果,須重新連線才能比較。遇到 USER-AGENT 等規則類型時,也要確認其是否適用於實際請求,不可將它視為通用的 App 辨識規則。
- 較精確的規則置前
- 策略名稱有效
- FINAL 放在末尾
Subscribe 與 Add Server
伺服器項目會儲存連線所需的位址、連接埠、驗證與協定參數;Subscribe 則透過使用者已有的訂閱 URL 取得一組伺服器資訊。兩者可以並存,但來源與管理方式不同。在 Home 使用 Add Server 新增項目,並依資料提供的類型選擇協定;匯入訂閱時選擇 Subscribe,填入已有訂閱的 URL。請勿將訂閱 URL 填入單一伺服器的位址欄位。
手動新增:逐一對照欄位
Shadowsocks、VMess、VLESS、Trojan、HTTP、SOCKS5、WireGuard 與 Hysteria2 的驗證及傳輸欄位各不相同。請依照使用者已有的資料填寫,不要自行根據協定名稱推測。尤其要確認伺服器位址與連接埠、密碼或 UUID,以及資料要求的 TLS、傳輸類型、Host、SNI 等欄位;只填寫介面實際提供且連線資料要求的選項。
使用 Scan QR Code 或匯入連結後,也要開啟項目檢查解析結果。成功讀取 QR Code 只代表內容已辨識,不表示伺服器可以連線。備註欄用於辨識項目,不會參與驗證;可依用途命名,但請勿在備註中填入密碼或完整訂閱憑證。
更新訂閱:分開管理來源與本機修改
新增 Subscribe 後執行更新,確認是否出現伺服器項目,再選取需要使用的伺服器。若更新失敗,先確認 URL 是否完整、憑證是否有效,以及目前網路能否取得訂閱內容。訂閱更新成功只表示內容已成功取得並解析,仍須驗證連線。
訂閱中的項目可能隨更新而變更,本機修改也可能被新內容覆蓋。刪除訂閱前,先確認相關項目與備用設定檔;更新後再次檢查所選伺服器與策略群組。訂閱 URL 中的 token 是存取憑證,提供排查資訊時應遮蔽;手冊範例不能作為實際連線資料。
On Demand:依條件建立連線
On Demand 會運用系統支援的隨選機制,在符合已設定條件時觸發連線。它與 Global Routing 的用途不同:On Demand 關注何時連線,Global Routing 則關注連線中的流量如何處理。在 Settings 尋找 On Demand 相關選項,並以 App 內列出的條件與開關為準。調整前應先完成一次手動連線,確認伺服器與設定檔本身可正常使用。
設定前先確認需要觸發連線的網路條件,再啟用對應選項。若介面提供網路類型或 Wi-Fi 條件,請逐項確認包含、排除或中斷連線的行為,不要只根據名稱就認定所有網路都會自動連線。儲存後,分別在符合與不符合條件的環境中檢查連線狀態,並發出實際請求驗證。
隨選連線不保證持續可用。系統狀態、網路切換與伺服器可達性都會影響結果,觸發機制無法修正錯誤密碼或失效的伺服器。若遇到剛中斷又重新連線的情況,先檢查 On Demand 條件是否仍成立,再處理主連線開關,避免反覆操作卻未取消原有觸發條件。
排查連線問題時,可暫時關閉 On Demand,以手動方式在相同網路下進行對照測試。確認原因後,再恢復所需條件。日常使用時也應留意其他已啟用的 VPN 設定,並確認系統目前顯示的連線狀態與 Shadowrocket 中的狀態是否一致。
Data:上傳、下載與流量分組
Data 可用來查看用戶端記錄的流量。開啟 Data,先確認目前的統計範圍與分組,再查看上傳與下載數值:上傳是從裝置送出的資料,下載則是裝置接收的資料。介面顯示的累積用量與目前速率是不同指標;比較數據前,請確認單位、時間範圍,以及先前是否曾重設統計。
若目前介面提供依伺服器或 App 分組,前者適合確認流量經過哪台伺服器,後者適合查看來源分布。App 辨識與統計範圍有其限制,分組名稱本身不能證明某條規則已比對成功;判斷分流狀況仍應搭配請求記錄、目前啟用的設定檔與策略選擇。
以可重複的操作比較數據
先記下目前數值,再執行一項明確操作,例如重新載入同一頁面,之後查看上傳與下載的增量。背景同步、媒體預先載入與系統通訊也可能產生流量;重新開啟已快取的內容時,增量可能較少。測試期間盡量維持網路與伺服器不變,避免將網路切換及正常背景流量一併納入比較。
用戶端數據不應直接視為服務提供者的帳單或裝置的全部流量。連線涵蓋範圍、計費週期、協定額外負載及服務提供者的計費方式都可能不同。若要比較,請先統一時間區間與單位,再向既有服務提供者確認統計方式,不必要求兩個面板的數字完全一致。
需要重設統計時,先保存排查所需的數據,再使用目前介面提供的重設功能。重設統計無法取代訂閱更新、切換伺服器或修正設定檔。記錄問題時註明「重設前後」與「測試操作」,會比只提供一張累積流量截圖更容易重現問題。
Settings:DNS、測試、元件與同步
Settings 集中提供連線相關選項與輔助工具;部分參數也可能由目前啟用的 Config 指定。調整前先記下原值,並確認設定屬於全域選項還是目前設定檔,避免在不同位置反覆覆寫。以下入口以 App 實際顯示為準;元件與同步是否可用,也取決於裝置及系統支援情況。
DNS:網域解析與設定協作
DNS 會將網域名稱轉換為連線所需的位址。查看 Settings 與目前啟用的 Config 中 DNS 相關項目,先確認目前由哪一處設定控制解析,再修改相應設定檔。若既有設定檔包含解析伺服器或網域專用規則,應先了解其用途;不要只因某個網域無法存取,就同時更換所有解析選項。
設定後分別測試網域解析與目標連線。解析成功只代表已取得位址,不代表連線一定成功;IP 位址規則也可能受到解析結果影響。若修改後發生異常,請還原原值進行對照,並檢查請求記錄中的位址與策略。提交診斷資料時只保留必要的網域與錯誤資訊,並隱去涉及個人瀏覽記錄的內容。
Test Method 與 Connectivity Test
Test Method 用於選擇連線測試方式。在 Settings 找到相關選項,依目前介面提供的方式設定,再返回伺服器清單執行 Connectivity Test。不同方式測量的階段不同,某個數值可能反映建立連線或向指定目標發出請求所需的時間,不一定是實際下載速度。
比較伺服器時,請保持測試方式、測試目標與網路一致。單次測試失敗也可能是測試目標無法連線或網路短暫波動所致,不能直接推論所有請求都會失敗。選取項目後,還要使用實際需要存取的目標,確認驗證、傳輸與路由是否都正常。
Today Widget:系統元件入口
Today Widget 提供系統元件中的快速檢視或操作入口。在 Settings 檢查相關選項,再依裝置系統支援的元件新增流程,將 App 提供的元件加入可用區域。元件形式與支援範圍以目前系統及 App 顯示為準,不要將名稱相近的系統元件視為同一功能。
元件可減少重複開啟 App 的操作,但不能取代初次設定與授權。修改伺服器或設定檔後,應返回 App 確認目前選取項目;若元件顯示的數據或狀態未即時更新,請以 App 內的實際狀態及連線測試為準。
iCloud:跨裝置同步條件
iCloud 相關設定可用來同步 App 支援的內容。在 Settings 查看同步選項,並確認系統是否允許 Shadowrocket 使用 iCloud。啟用同步前,先確認目前裝置上的資料正確;另一部裝置也必須符合相應的帳號、系統權限與網路條件。
同步範圍以 App 列出的項目為準,不應假設所有密碼、統計、記錄與系統 VPN 授權都會一併移轉。操作前請保留重要設定檔的可還原副本,操作後逐項確認伺服器、設定檔與目前選取項目。iCloud 同步與 App Store 已購項目還原是不同流程,同步資料不能取代 App 購買記錄。
Diagnostics:找出連線失敗階段
Diagnostics 用於收集或查看診斷資訊。在 Settings 尋找相應選項,依介面提示執行所需診斷。先記下發生問題的網路、Global Routing 模式、所選伺服器與具體操作,再重現一次問題;這樣才能將記錄中的時間點與實際操作對應起來。
閱讀結果時,先區分訂閱取得、網域解析、伺服器連線、驗證與目標請求等階段。單一錯誤不一定代表最終原因,應搭配前後記錄判斷。分享診斷結果前,請檢查並遮蔽訂閱 token、密碼、UUID、個人位址及不必要的瀏覽記錄,只保留重現問題所需的資訊。
從連線資料到實際請求的檢查順序
各項功能彼此相關,但排查時應分層檢查。先確認資料,再確認連線,最後驗證規則與輔助設定;每次只變更一項,才能判斷哪次修改影響了結果。以下順序適用於已有訂閱或伺服器資訊的使用者,不需要先啟用所有功能。
- 檢查來源。確認 Subscribe 更新結果,或檢查 Add Server 的協定、位址、連接埠與驗證欄位,並記下目前選取的伺服器。
- 檢查設定檔。在 Config 確認目前啟用的設定檔;使用 Config 模式時,核對 Rules 順序、策略群組選項與 FINAL。
- 完成手動連線。確認系統授權,開啟連線並發出實際請求。必要時暫時使用 Proxy 與 Direct 進行對照,測試後恢復原本模式。
- 檢查解析與記錄。只有在出現相應狀況時才調整 DNS 或測試設定,並搭配 Diagnostics 判斷失敗階段。
- 再啟用便利功能。連線穩定後再設定 On Demand、Today Widget 與 iCloud,並在 Data 記錄相同操作造成的流量變化。
若要從購買與首次授權開始,請閱讀下載指南;已有資料但尚未完成首次連線,請閱讀使用教學。若不熟悉規則關鍵字,可先查看名詞解釋,再回到目前設定檔確認具體條件。