官方手冊 / 首次連線

Shadowrocket 使用教學:
匯入、連線與驗證

依照五個步驟完成首次設定。先將現有伺服器資料正確匯入 Home,再選擇流量處理方式;連線成功後,繼續確認實際瀏覽結果與規則命中情形。

以下主要以 iPhone / iPad 操作為例。截圖供核對頁面與欄位;實際版面、入口位置及可用選項,請以裝置上目前 App 顯示為準。

步驟 01 / 先準備連線項目

新增伺服器或匯入訂閱

先確認手上的資料類型,再前往對應入口。單一伺服器資料通常包含協定類型、位址、連接埠與認證資料;訂閱則是一個用來取得伺服器清單的完整連結。兩者不能只因外觀相似就互換,也不應將訂閱網址填入一般伺服器的 Host。開啟 Shadowrocket,進入 Home,在 SERVER 區域找到 Add Server,或使用頁面上的新增入口進入 Add Server。

手動填寫:先選 Type,再核對欄位

在 Add Server 中先點選 Type,選擇與現有資料相符的協定。Type 會決定後續需要填寫哪些欄位,請勿為了少輸入資料而任意更換。以 Shadowsocks 為例,需確認 Host、Port、Password 與 Method;其他類型可能還需要各自的識別資料或傳輸參數。截圖呈現其中一種表單,不代表所有協定都使用相同欄位。

逐項填寫時,Host 填伺服器位址,Port 填伺服器實際監聽的連接埠,Password 與 Method 則依原始資料填入。複製後請檢查前後空格、換行與全形標點,尤其不要連同說明文字一起貼上位址。若資料包含其他參數,請展開對應設定逐一核對;缺少必要資訊時,先查看自己的伺服器設定或向原服務供應商確認,不要自行猜測補上。

完成後使用頁面上的儲存功能,返回 Home。確認 SERVER 下方已出現剛儲存的項目,再點選準備使用的伺服器。Scan QR Code 適用於匯入你已有且格式受支援的 QR Code;Import from Cloud JSON 則需要相應格式的資料來源,不能當成通用連結匯入入口。

匯入訂閱:選擇 Subscribe 並保留完整連結

若現有資料是訂閱連結,請在 Add Server 的 Type 中選擇 Subscribe,再將完整連結貼到對應的 URL 欄位,視需要填寫方便辨識的名稱後儲存。連結中的路徑、問號後的參數及字母大小寫都必須保持原樣。請勿只複製網域,也不要將訊息末尾的句號或引號一併貼入網址。

https://example.com/sub?token=xxxx

以上僅為含明顯假值的格式範例,並非可用訂閱。儲存並取得訂閱內容後,返回 Home 查看 SERVER 中是否出現實際伺服器項目;只有訂閱名稱,並不表示內容已成功載入。請依 App 提供的訂閱更新功能重新取得內容,並確認項目完整。此時先不要反覆修改模式,下一步再一併確認 Global Routing。

Shadowrocket 官方 Add Server 頁面截圖,顯示 Type、Host、Port、Password、Method 與匯入入口
Add Server:先確認 Type,再填寫該類型實際要求的欄位。

步驟 02 / 決定如何處理要求

選擇 Global Routing

匯入伺服器後,返回 Home 並點選 Global Routing。這裡決定要求採用哪種路由方式,與「選取哪台伺服器」是兩回事。初次使用時,先了解三種模式:設定(Config)/代理(Proxy)/直連(Direct)。不要因為開關已開啟,就預設所有要求都會經過所選伺服器。

設定(Config):依據目前設定進行分流

需要依規則區分要求時,請使用設定(Config)。先進入 Config,確認目前啟用的設定檔,而不只是查看檔案清單中是否有熟悉的名稱。開啟相應設定,檢查 Rule 與末尾的處理方式。設定中的規則會決定哪些要求走 PROXY、哪些走 DIRECT 或 REJECT;通常會依序比對,因此較寬泛的規則若排在前面,後面的特定規則可能沒有機會處理要求。

官方截圖中的 General、Rule、Hosts、URL Rewrite、HTTPS Decryption 是設定編輯頁中的不同區段。本次入門重點是確認目前設定與 Rule,不需啟用所有區段。也請勿為了完成首次連線而修改 HTTPS Decryption 或安裝相關憑證;這些都不是本教學的必要步驟。

[Rule]
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT

這段小範例僅供理解規則順序:example.com 及其子網域符合第一條規則,其餘要求則交由 FINAL 直接連線。這不是適用於所有用途的完整設定,請勿未經核對就覆寫現有檔案。若目標原本應走代理,卻符合 FINAL,DIRECT,即使伺服器連線正常,也不能證明分流符合預期。

代理(Proxy)與直連(Direct):用來對照連線路徑

代理(Proxy)會讓一般要求採用代理路徑,適合疑難排解時減少 Rule 分流造成的變數;但仍會受到裝置網路、伺服器能力及必要系統略過設定等條件影響,不能因此保證所有流量的表現都相同。直連(Direct)會讓要求直接連線,適合確認基礎網路或恢復直接存取,不應將其結果當成代理可用性的測試結論。

選好模式後返回 Home,再確認一次目前的 Global Routing 值。若要使用設定(Config),也請記下目前啟用的設定名稱,後續才能將實際結果與規則對照。更完整的規則寫法請參閱設定大全;不熟悉策略與規則術語時,可先查閱概念速查,再繼續完成本頁的連線流程。

Shadowrocket 官方 Config 設定編輯頁截圖,顯示 General、Rule、Hosts、URL Rewrite、HTTPS Decryption 與 Add Rule
Config:選擇設定(Config)時,確認目前設定的 Rule 與末尾處理方式。

步驟 03 / 建立裝置連線

開啟開關,確認 VPN 授權

返回 Home,先在連線前再次確認:SERVER 中選取的是本次要測試的伺服器,Global Routing 顯示的是剛才選定的模式。訂閱中的項目可能在更新後改變,請勿只憑上次選取的印象繼續操作。準備就緒後,開啟 Home 頂端的連線開關;尚未連線時會顯示 Not Connected。

首次建立連線時,系統可能會提示是否允許 Shadowrocket 新增 VPN 設定。這是讓 App 建立裝置網路通道的系統授權,不是再次購買 App。確認目前操作確實來自剛開啟的 Shadowrocket,再依系統提示允許並完成裝置要求的身分驗證。若選擇取消,返回 Home 後通常需再次發起連線並完成授權。

完成授權後返回 App,確認頂端狀態是否從未連線變為已連線,以及開關是否維持開啟。若開關很快又關閉,請勿立刻反覆重新安裝或連續切換多個選項。先記下是否出現系統提示、App 錯誤或連線中斷,再於最後一步依失敗環節檢查。

分開確認連線狀態與伺服器可用性

系統 VPN 通道建立,只表示裝置上的連線機制已啟動;不代表所選伺服器已通過驗證,也不代表所有目標都能存取。反過來說,Connectivity Test 對某台伺服器顯示測試結果,也不代表連線開關已開啟。初次使用時,請分別確認「已選取項目」、「模式正確」與「通道已建立」,再進行實際存取驗證。

若裝置上還有其他由你啟用的 VPN 連線,測試前先確認目前使用的是哪一項,避免將其他連線的結果誤認為 Shadowrocket 的表現。測試期間先維持網路環境穩定,不要同時切換 Wi-Fi 與行動網路、變更伺服器及模式,否則發生問題時很難判斷是哪個條件改變。

Shadowrocket 官方 Home 頁面截圖,顯示 Not Connected 開關、Global Routing、Connectivity Test、SERVER 與 Add Server
Home:依序確認頂端狀態、Global Routing 與 SERVER,檢查連線條件。

步驟 04 / 從連線狀態確認實際存取

驗證連線與規則是否生效

驗證時要分辨三個問題:裝置原有網路是否正常、所選伺服器能否依測試方式回應,以及目標要求是否走預期路徑。只看單一測試數值,無法同時回答這三個問題。建議固定使用相同目標與相同步驟進行對照,每次修改後重做測試,記錄才有比較基準。

  1. 確認基礎網路。在適合暫停連線的情況下關閉開關,開啟一個已知可直接存取的頁面,確認裝置並非連上需要登入的網路,或網路本身已中斷。若基礎網路異常,先恢復 Wi-Fi 或行動網路,再返回 Home 開啟連線。
  2. 執行 Connectivity Test。在 Home 點選 Connectivity Test,查看所選伺服器的測試結果。測試方式會受到 Settings 中的 Test Method 等設定影響;結果只反映這次探測,不能視為實際網頁載入速度,也無法保證所有類型的連線都能使用。
  3. 存取明確的測試目標。開啟瀏覽器,前往原本就準備使用的目標,確認頁面是否載入完成,以及是否仍出現相同錯誤。盡量重新載入要求,避免只查看已儲存在裝置中的頁面內容;也不要一次開啟大量頁面,以免結果混在一起。
  4. 確認路徑是否符合模式。若目前使用設定(Config),請在 App 可用的要求記錄中找到對應網域,確認命中的規則與處理策略。目標走 DIRECT 可能是規則預期的結果,不表示連線未開啟;若由 REJECT 處理,則應返回 Rule 檢查。

若目標無法開啟,但一般網頁可正常瀏覽,可暫時將 Global Routing 切換為代理(Proxy),維持相同伺服器與目標,再測試一次。若此時恢復正常,請優先檢查原設定的比對順序、策略與 DNS 相關設定;若仍失敗,再檢查伺服器參數、伺服器端狀態及目標本身是否可用。完成對照後,請恢復原本需要的模式,避免將暫時的診斷狀態當成長期設定。

測試成功也要確認適用範圍。某個網頁能開啟,只表示該網頁在目前條件下可用,不代表其他 App、UDP 要求或不同網路也會有相同結果。你可以再用實際需要的其他操作驗證,但不必為了追求特定數值而不斷調整參數。確認需求已滿足後,保留這組可重現的設定,日後變更才容易還原。

步驟 05 / 每次只變更一個項目

設定檢查與常見問題

疑難排解時,先回到問題發生的環節,不要從「全部重設」開始。匯入失敗、伺服器無法連線、連線開關自動關閉、特定目標無法存取,分屬不同層次。保留目前可用的設定,修改前先記下原值;每次調整後,都回到上一步重做相同驗證,確認變更是否真的與問題相關。

已儲存訂閱,但 SERVER 中仍沒有項目

先確認 Type 是否設為 Subscribe,再檢查 URL 是否完整,有沒有被通訊 App 截斷、混入空格或包含標點。查看更新訂閱時顯示的具體錯誤:無法取得內容與取得了不支援的內容,是不同問題。若訂閱網址回傳登入頁面或一般網頁,也不能當作伺服器清單使用。請勿在瀏覽器中任意分享含有憑證的連結;需要確認有效期限與回傳格式時,請向原服務供應商查詢。

已顯示伺服器,但測試或連線失敗

進入該項目的編輯頁,依原始資料再次確認 Type、Host、Port 與對應憑證。不同協定需要的參數不同,請勿直接套用某欄位在另一種協定中的意思。若之前可用、現在卻失敗,先確認目前網路是否有所變更,再確認伺服器端是否仍正常。單一伺服器失敗不代表所有訂閱內容都失效,也不應在沒有根據時批次修改所有項目。

測試有結果,但網頁無法開啟

先檢查 Global Routing,再確認目標是否命中預期規則;接著區分網域解析、建立連線與網頁本身的錯誤。前往 Settings 查看 Test Method,確認剛才的 Connectivity Test 測試了什麼。請勿因某種探測有回應,就排除認證、傳輸參數或目標服務方面的問題。若 App 提供相關要求資訊,可依失敗階段繼續定位;更詳細的規則與 DNS 分析,請參閱設定大全逐項核對。

手動中斷後又重新連線,或切換網路後狀況改變

前往 Settings 找到 On Demand,檢查是否已設定隨選連線條件。排查手動連線問題時,可先暫停自行啟用的 On Demand 條件,確認開關是否恢復手動控制;測試完成後,再依原本需求恢復設定。切換 Wi-Fi 與行動網路會改變網路條件,必須重新驗證,不要直接沿用上一個網路的測試結論。

使用 Diagnostics 時先縮小檢查範圍

Settings 中的 Diagnostics 可用於進一步檢查,但請先釐清要確認的問題,再使用目前版本提供的對應項目。Proxy、TCP、UDP 等相關設定,不要只因名稱熟悉就一併修改。不同傳輸方式的故障情況並不相同,調整無關設定往往只會增加變數。整理診斷資料時,保留錯誤描述與重現步驟即可;分享前請移除伺服器憑證、訂閱參數及其他個人資訊。

若已完成五個步驟的檢查,問題仍只出現在某個目標或某種網路,請保留最精簡的重現紀錄:「使用哪個網路、哪種模式、哪個目標、出現什麼錯誤」。伺服器資料與服務狀態請向原服務供應商確認,規則內容請查閱手冊;重新購買 App 並不能解決連線問題。Shadowrocket 用戶端的購買與現有服務是否可用,是兩件獨立的事。

Shadowrocket 官方 Settings 頁面截圖,顯示 Language、Test Method、Today Widget、On Demand、Diagnostics、Proxy、TCP 與 UDP
Settings:優先確認 Test Method 與 On Demand,再依具體問題使用 Diagnostics。
前往 App Store 下載