Official Manual / Getting Started

Shadowrocket 使用教學

匯入現有訂閱 → Global Routing → 連線授權 → 請求測試 → 排查問題。

本教學以 iPhone 與 iPad 的首次設定為主。先完成一條可供確認的連線,再處理複雜規則;第一次開啟時不必修改所有設定。官方截圖可協助辨認頁面與欄位,實際排列可能隨 App 介面調整;操作時請以裝置上顯示的英文介面文字為準。請勿照抄截圖中的伺服器資料,也不要將截圖中的設定選項視為必選項目。

01 · Add Server:新增與匯入

開啟 Shadowrocket,進入 Home,在 SERVER 區域找到 Add Server,或使用頁面上的新增入口。接著先確認手上的資料類型:訂閱連結用於取得並管理一組伺服器;單筆伺服器資料則須逐項填入協定與驗證參數。兩者的輸入方式不同,請勿將訂閱網址填入伺服器的 Host 欄位。

已有伺服器資料:先選擇 Type

進入 Add Server 後,先點選 Type,選擇與現有資料相符的協定。接著填入 Host 與 Port,再依目前 Type 顯示的欄位填寫驗證資料。以 Shadowsocks 為例,通常需要核對 Password 與 Method;其他協定所需欄位可能不同,請勿沿用上一種協定的填寫方式。

Host 請填入伺服器網域名稱或位址,Port 請填入對應連接埠,驗證欄位則依原始設定完整複製。留意前後空格、換行與大小寫;TLS、傳輸方式及伺服器名稱等欄位也應依現有設定填寫,不要只憑名稱相似就自行推測。填妥後儲存並返回 Home,確認 SERVER 清單中出現新項目。項目出現僅代表儲存完成,仍須依後續步驟測試。

Shadowrocket 的 Add Server 頁面,顯示 Type、Host、Port、Password、Method 及匯入入口
App Store 官方截圖 · Add Server。先選擇 Type,再核對相應欄位。

已有訂閱連結:選擇 Subscribe

如果已有服務商提供的訂閱連結,請在新增頁面將 Type 設為 Subscribe,將完整連結填入對應的 URL 欄位,並填寫方便辨識的備註後儲存。連結中的路徑與查詢參數都是網址的一部分,請勿只複製網域;若複製的是帳戶管理頁面的網址,通常無法用來匯入訂閱。儲存後返回 Home,等候訂閱取得完成,再檢查相應群組與伺服器項目。

如果拿到的是 QR Code,可使用 Scan QR Code 掃描;讀取後先核對解析出的類型與內容,再儲存。Import from Cloud JSON 是另一種匯入方式,不代表任何網頁網址都能使用。請選擇與現有資料格式相符的方式,不要為了匯入成功而反覆切換不相關的類型。

完成這個步驟後,應可在 Home 找到至少一台可選擇的伺服器。如果清單仍是空的,請先前往訂閱匯入失敗排查,不要把空清單導致的連線失敗誤認為 VPN 授權問題。訂閱連結可能包含帳戶識別資料,請妥善保存於個人安全的位置,不要放進公開截圖、文章或分享文字中。

02 · Global Routing:選擇連線模式

伺服器儲存完成後,返回 Home 並開啟 Global Routing。此處決定請求的處理方式,與 SERVER 清單中選擇哪台伺服器是兩項不同設定。先確認這次要測試單台伺服器,還是要套用現有規則,再選擇設定檔 (Config)/代理 (Proxy)/直連 (Direct)。

設定檔 (Config):依目前規則處理

選擇 Config 時,客戶端會依目前生效的設定檔與規則決定請求的去向。進入 Config 頁面後,先確認選取的設定檔,再查看規則內容。官方截圖中的 General、Rule、Hosts 等是不同的設定區段;設定檔出現在清單中,不代表已選取並生效。

初次使用時,請優先核對 Rule 中的規則順序、策略名稱與最後的預設處理方式。例如,DOMAIN-SUFFIX 用於比對網域後綴,FINAL 用於處理前面規則都未比對到的請求。規則指向 DIRECT 時,請求不會經過所選代理伺服器;指向 REJECT 時,請求則會遭到拒絕。這些結果不應直接歸因於伺服器失效。

Shadowrocket 的 Config 設定編輯頁面,顯示 General、Rule、Hosts、URL Rewrite、HTTPS Decryption 和 Add Rule
App Store 官方截圖 · Config。各區段方便查找設定,首次連線時不必逐一修改。

代理 (Proxy) 與直連 (Direct):先確認測試目的

Proxy 會讓應由代理處理的請求使用所選代理路徑,適合排查時減少規則分流帶來的變因;實際行為仍受 App 設定與系統流量範圍影響。Direct 用於直連,不能用來判斷所選伺服器是否可用。即使開關顯示已連線,也不代表每個請求都經過代理,必須一併檢查 Global Routing 與實際策略。

本教學建議先記下目前的連線模式。如果沒有需要保留的規則,可使用 Proxy 測試單台伺服器,再依實際需求切回 Config;若已有正常使用的設定檔,請先保留原檔,不要覆寫後再嘗試復原。一般連線測試不需要啟用 HTTPS Decryption 或額外設定憑證,這不是本教學的必要步驟。協定欄位與設計取捨請參閱協定手冊。

03 · Home:啟動連線

現在返回 Home,在 SERVER 清單中點選要使用的伺服器,確認選取標記位於目標項目上。訂閱群組中有多筆記錄時,請勿把群組名稱誤認為實際伺服器。接著再次確認 Global Routing 與上一步的選擇相符,再開啟頁面頂端的開關。

首次建立連線時,系統可能會要求允許新增 VPN 設定。請閱讀系統提示,確認這是由 Shadowrocket 發起的操作後,再依提示允許並完成裝置要求的身分驗證。這是系統管理 VPN 設定的授權流程,不是要你在伺服器的 Password 欄位輸入裝置密碼。若取消授權,返回 Home 後連線便無法如預期建立;請重新操作並完成授權。

完成授權後返回 App,查看頂端狀態是否已從 Not Connected 改變,以及開關是否能維持開啟。若狀態立即恢復為未連線,請先記下提示內容並前往排查步驟,不要連續快速切換開關。若已顯示連線,請進行下一步測試;這只能表示連線流程已啟動,不能據此判定目標服務已可使用。

Shadowrocket 的 Home 頁面,顯示 Not Connected 開關、Global Routing、Connectivity Test、SERVER 和 Add Server
App Store 官方截圖 · Home。依序確認伺服器、Global Routing 與頂端開關。

如果裝置上還有其他 VPN 連線正在執行,請先確認目前是哪個設定接管系統連線,避免將其他連線的狀態誤認為本次結果。測試期間請維持網路環境穩定,不要同時切換 Wi-Fi、修改協定欄位及更換伺服器。首次測試完成前,暫時保留 On Demand 的原有設定;確認手動連線正常後,再另外設定自動觸發條件,詳情請參閱On Demand 參考說明。

04 · Connectivity Test:確認連線生效

開關維持開啟後,在 Home 使用 Connectivity Test 查看測試結果。先確認測試方式,再解讀回傳值:不同測試方式檢查的網路層級與目標不盡相同,取得延遲結果不代表驗證、TLS 及目標服務的所有請求都已成功。反之,單次逾時也可能是測試目標、當下網路或測試方式所致,不宜因此直接刪除整份設定。

接著開啟實際需要使用的 App 或頁面,執行一項明確操作,例如重新載入頁面。不要只查看先前快取的內容,也不要一次開啟太多頁面,否則很難將失敗請求與記錄對應。如果使用 Config,請先確認目標應符合哪項策略,再比對 App 中可查看的連線記錄,確認實際去向。若目標依規則使用 DIRECT,即使載入成功,也不能證明代理路徑正常。

Data:查看流量變化

前往 App 中與 Data 相關的頁面,觀察測試前後的上傳與下載統計,並參考記錄時間判斷是否有新請求。流量變化有助確認客戶端正在處理資料,但無法直接證明某個頁面已成功載入:背景 App、重試及其他請求也可能計入統計。累計流量不等於服務商帳戶的剩餘流量,兩者的統計範圍與計費方式可能不同。

可依固定順序完成測試:記下伺服器與連線模式、執行 Connectivity Test、開啟一個實際目標、查看相應流量與連線記錄,最後記錄結果。若只有特定目標失敗而其他目標正常,應改查該目標的規則、DNS 或服務狀態,而非重新匯入所有訂閱。若所有目標都失敗,再檢查伺服器參數與基本網路。

05 · Settings:常見問題排查

排查時先確認問題發生在哪個階段:清單中沒有伺服器是匯入問題;開關無法維持開啟,則是連線或系統設定問題;已連線但請求失敗,則須檢查伺服器、DNS 與分流。開始修改前,先記下失敗時使用的網路、伺服器、Global Routing 及具體提示。每次只更改一項,修改後重做第四步,才能確認變更是否有效。

Subscribe:匯入失敗或清單為空

先確認裝置在一般網路環境下可以連線,再檢查訂閱網址是否完整、有無多餘空格,以及複製的內容是否確實為訂閱入口。如果收到的是登入頁面、錯誤文字或空白內容,更改伺服器 Type 無法解決問題。請參考現有服務商的設定說明,確認連結狀態、支援格式與帳戶有效性;請勿公開含完整訂閱網址的錯誤截圖。

清單中有舊項目,不代表剛才已成功更新。請查看本次取得結果,再核對群組中的實際記錄;若匯入失敗,先不要刪除唯一可用的舊訂閱。保留目前狀態並確認原因,以免失去比對依據。

Shadowrocket 的 Settings 頁面,顯示 Test Method、On Demand、Diagnostics、Proxy、TCP 和 UDP 等設定項目
App Store 官方截圖 · Settings。依問題發生階段檢查相關設定,請勿一次修改所有選項。

訂閱更新:更新後重新選擇伺服器

需要更新現有訂閱時,請在 Home 找到相應訂閱群組,使用該群組的更新功能,等待結果返回後再檢查伺服器清單。更新可能會變更項目名稱、數量或參數,因此更新完成後應重新確認選取的伺服器,不要假設仍在使用原來那一台。若服務商已更換訂閱連結,請依其說明修改現有記錄中的網址,反覆更新舊網址無法取得新內容。

手動修改訂閱產生的伺服器參數前,請考慮下次更新可能會覆蓋變更。若要排查特定欄位,先記下原值與修改原因,測試後還原;或在清楚了解影響的前提下,另存一筆測試記錄。訂閱用於維護伺服器資料,Config 用於設定與規則;訂閱更新成功,不代表 Config 中的規則也已更新。

伺服器連線:逐項核對,不只看延遲

如果清單正常但連線失敗,請返回 Add Server 中的相應記錄,依序檢查 Type、Host、Port、驗證欄位、傳輸方式及 TLS 相關設定。網域名稱與伺服器名稱欄位的用途可能不同,不要只因文字相似就互換。裝置系統時間也應保持正確,明顯偏差可能影響憑證驗證。若原始資料不完整,請向現有服務商確認欄位,不要以猜測值填滿所有選項。

如果切換網路後結果不同,請在相同參數與相同目標下重新測試,區分網路路徑變化與設定錯誤。Settings 中的 Test Method 會影響測試結果的解讀;Diagnostics 可用於進一步查看診斷資訊。不要只因看到 TCP 或 UDP 就任意停用,協定是否依賴相應傳輸方式應以設定說明為準。

DNS:連線正常但無法開啟網域

DNS 負責將網域名稱解析為位址。若連線維持正常,但特定網域無法開啟,請先確認問題是否能穩定重現,並查看可用記錄中是否有解析錯誤。使用 Config 時,請核對目前設定檔的 DNS 設定、Hosts 項目與目標規則,避免修改未生效的檔案。先記下原有設定,再依說明調整;不要持續疊加不同設定,以免無法判斷目前實際使用的是哪一項。

部分目標失敗,也可能是規則命中 REJECT、策略指向無法使用的伺服器,或目標服務本身異常。暫時將 Global Routing 改為 Proxy,有助比較規則造成的影響;測試後請還原原本模式。若 Proxy 成功而 Config 失敗,應優先檢查設定檔與分流,而非直接認定所有規則都必須刪除。協定詳細參數請參閱Shadowrocket 協定手冊;本頁僅整理首次設定所需的檢查順序。

檢查完成後:還原日常設定

確認實際目標可以連線後,還原日常使用的 Global Routing,並再次測試。若測試期間曾關閉 On Demand 或修改 Test Method,也請逐項確認最終設定。若要停止連線,返回 Home 關閉頂端開關並觀察狀態變化;若之後自動連線,請檢查 On Demand 條件,不要反覆手動中斷。

首次設定完成的標準不是「設定越多越好」,而是伺服器資料正確、目前設定檔明確、連線授權完成,且目標請求與策略相符。保留簡短的檢查記錄即可;請勿記錄密碼、完整訂閱網址或其他驗證資料。日後遇到問題時,從最後一次成功狀態及之後的變更開始排查,通常比重新填寫所有欄位更容易找出原因。