官方手冊 · 初次設定

Shadowrocket 使用教學

從現有資料開始,依序完成匯入、分流、連線與驗證。確認每個步驟的結果後,再繼續下一步。

  • iPhone / iPad 操作
  • 已有訂閱或伺服器資料
  • 五步檢查流程

以下以介面上的英文名稱說明操作位置。官方截圖可協助辨識頁面;實際欄位會依所選 Type 與 App 內設定而異。請勿照抄截圖中的伺服器資料,也不要將訂閱連結或密碼傳送至公開場所。

01 · Add Server / Subscribe先匯入現有資料,再確認儲存結果

開啟 Shadowrocket 後,先停留在 Home,不必立即開啟連線開關。在 SERVER 區域找到 Add Server 並進入。新增前先確認手上的資料類型:訂閱連結可用來取得一組伺服器;單一伺服器資料則包含協定類型、伺服器位址、連接埠與驗證參數。兩種資料的填寫位置不同,將訂閱連結直接填入伺服器的 Host,通常無法建立有效項目。

手動新增單一伺服器

進入 Add Server,先點選 Type,依現有資料選擇對應的協定,再填寫該類型需要的欄位。以畫面顯示 Host、Port、Password、Method 為例,Host 填入伺服器位址,Port 填入連接埠,Password 和 Method 則依原始資料逐項確認。不同 Type 會顯示不同參數,不能只因欄位名稱相似,就沿用其他協定的設定。若涉及 TLS 或其他傳輸選項,同樣應以現有伺服器資料為準。

輸入完成後,先檢查前後空格、連接埠數字及驗證資料的大小寫,再使用頁面上的儲存功能返回 Home。如果手上有相容的 QR Code,可使用 Scan QR Code,依系統提示允許相機存取後掃描自己的資料。QR Code 只是輸入方式;掃描後仍須確認 Type 與重要參數是否完整。Import from Cloud JSON 是另一種匯入方式,僅在確實持有相應格式資料時使用,不要將一般網頁或任意文字當成該格式匯入。

使用 Subscribe 匯入現有訂閱

如果持有訂閱連結,請在 Add Server 的 Type 中選擇 Subscribe,將自己的完整連結貼到對應欄位,並填寫方便辨識的備註後儲存。複製時須保留連結完整路徑與查詢參數,避免一併帶入聊天文字、換行或結尾標點。訂閱網址通常具備存取權限,請像密碼一樣妥善保管;本頁不提供可用網址,也不要求上傳訂閱。

儲存後返回 Home,等待訂閱讀取完成,並確認 SERVER 中出現對應的群組與伺服器項目。只看到訂閱名稱但沒有項目,不代表匯入成功;請檢查讀取提示、目前網路及連結是否完整。現有訂閱內容變更時,使用該訂閱的更新功能重新取得資料;更新後再次確認目前選取的伺服器,避免繼續使用已移除的舊項目。

新增完成後,先不要反覆修改參數。下一步檢查 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,確認啟用的是預計使用的配置,而不是只開啟某個檔案的編輯頁面。在配置編輯頁中,General、Rule、Hosts、URL Rewrite、HTTPS Decryption 各有不同用途。初次連線不必逐項修改;這一步的重點是確認配置來源、啟用狀態,以及 Rule 中與目標相關的策略。

規則通常由上而下比對,較早符合的規則會決定對應的處理方式。DOMAIN 比對完整網域名稱,DOMAIN-SUFFIX 比對網域後綴,IP-CIDR 比對 IP 位址範圍,FINAL 作為最後的預設規則。PROXY、DIRECT、REJECT 是不同策略,不能把 REJECT 當成「換一台伺服器重試」。以下僅示範規則語法,不建議用它取代目前的完整配置。

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

在這個範例中,api.example.com會先符合第一行並使用 DIRECT;其他符合後綴的網域則依第二行處理。如果把範圍較廣的規則放在精確規則之前,後面的項目可能就沒有機會符合。修改前請保留原配置,只調整確實理解的規則,並再次確認目前已啟用該配置。截圖中的 Add Rule 是用來新增規則,不是新增伺服器。

代理(Proxy)與直連(Direct):分別檢查連線路徑

代理(Proxy)會透過代理路徑處理請求,可用來初步檢查所選伺服器的連線狀況;但不代表所有遠端目標都一定能連線。直連(Direct)使用本機直連路徑,可用來確認基本網路是否正常,但此時能開啟網站,並不能證明代理路徑已生效。排查時可暫時切換模式;測試完成後,請切回原本預計使用的模式。

一般需要依規則區分請求時,使用配置(Config)並檢查相應規則;要區分伺服器與規則問題時,再短暫切換模式比較。對新手來說,先保留現有配置架構,比同時修改 Hosts、URL Rewrite 與 HTTPS Decryption 更容易判讀結果。完成這一步後,記下目前模式與啟用配置的名稱,再繼續連線。

規則關鍵字的詳細說明請見規則語法說明;商店地區、購買與已購項目復原屬於另一個流程,請參閱App Store 指南,初次連線時不必一併處理。

Shadowrocket 的 Config 配置編輯頁面,顯示 General、Rule、Hosts、URL Rewrite、HTTPS Decryption 與 Add Rule
Config:確認 Rule 與目前配置,不必一次修改所有區段。

03 · Home 連線開關完成系統授權並確認連線狀態

返回 Home,依序確認三件事:SERVER 中已選取本次要使用的伺服器、Global Routing 與上一步的選擇一致,以及目前裝置本身可以正常連上網路。頂端顯示 Not Connected 時,表示尚未建立連線。此時開啟頂端開關,留意系統提示與 App 狀態變化;等待期間不要反覆切換開關或同時更新訂閱。

辨識新增 VPN 配置的系統提示

首次啟用連線時,系統可能會要求允許新增 VPN 配置。這項請求是讓 Shadowrocket 建立由系統管理的網路連線配置,不是購買提示,也不是輸入伺服器資料的欄位。閱讀彈出視窗中的 App 名稱與說明後,依系統提示確認;系統可能還會要求裝置驗證。完成後返回 Shadowrocket,確認頂端狀態是否已從 Not Connected 改變。

如果先前取消授權,目前可能無法建立連線。再次開啟連線開關,並依實際提示處理;不要為了避開提示而任意刪除其他用途的系統配置。如果裝置由組織管理,系統政策也可能限制配置操作,請先確認裝置是否允許執行此操作。授權只會處理本機配置權限,不會修正錯誤的 Host、Port 或驗證參數。

分別確認連線狀態與實際可用性

系統顯示 VPN 狀態,或 App 開關維持開啟,代表本機連線狀態有所變化,但不能單憑這些資訊證明所選伺服器與目標網站都正常。反之,如果開關立即跳回,或狀態一直未建立,請先查看目前提示,再確認是否完成授權、伺服器是否仍為選取狀態,以及配置是否有效。記下狀態文字,比只寫「無法連線」更有助於後續排查。

初次連線期間,先維持一致的測試條件:使用同一個網路、同一台伺服器及同一種分流模式。需要切換 Wi-Fi 或行動網路時,先停止目前測試,再使用新網路重新連線並觀察結果。同時變更多個條件,會讓偶然成功難以重現,也可能掩蓋真正的問題。

Shadowrocket 的 Home 頁面,頂端顯示 Not Connected、Global Routing 與 Connectivity Test,下方為 SERVER 和 Add Server
Home:在此確認連線開關、分流模式與伺服器選擇。

04 · Connectivity Test先測試伺服器,再檢查實際請求

連線後返回 Home,使用 Connectivity Test 檢查目前伺服器的測試結果。開始前確認測試對象與實際選取的伺服器一致,等本次測試結束後再比較結果。測試結果反映的是該測試方法及當時網路條件下的狀況,不代表所有 App 與目標都已可正常使用。不要將單次測試數值視為長期表現,也不要只看清單排序來判斷實際存取結果。

分別記錄測試結果與實際存取結果

先開啟一個在目前網路下通常可直接存取的頁面,確認裝置的基本網路正常;再開啟本次確實需要檢查的目標,觀察是否能載入。如果測試成功但目標無法開啟,下一步應檢查分流規則、目標本身與相關連線記錄,而不是立即刪除所有伺服器。如果測試失敗但部分頁面仍可開啟,也可能是這些請求走了 DIRECT,或測試方法與實際請求使用的路徑不同。

使用配置(Config)模式時,須搭配目前規則解讀結果。若目標符合 DIRECT,頁面成功並不能驗證代理伺服器;若符合 REJECT,連線失敗可能是配置的預期結果。查看 App 提供的連線記錄時,重點確認目標網域、符合的規則與採用的策略;如果記錄資訊不足,應保留「不確定」的結論,不要憑單次開啟結果推斷所有流量的路徑。

透過一次對照縮小排查範圍

如果懷疑問題出在規則,先記下原設定,再暫時切換至代理(Proxy),使用同一台伺服器重新存取相同目標。如果結果不同,優先檢查 Config 中符合的規則;如果結果相同,再檢查伺服器參數與目前網路。要確認本機網路時,可短暫使用直連(Direct)對照,但這只是檢查步驟,不能作為代理連線成功的證據。

對照完成後,請還原原本的 Global Routing,避免把排查用模式當成日常設定。最終記錄至少應包含目前網路、伺服器備註、分流模式、Connectivity Test 狀態與目標存取結果。備註使用自己看得懂的名稱即可,不必公開伺服器位址。如果上述檢查仍無法釐清問題,請依下一步的固定順序處理。

判斷順序:裝置可連上網路 → 資料已匯入 → 所選伺服器可測試 → 連線狀態明確 → 目標採用預期策略 → 實際存取符合預期。

前一項尚未確認時,先處理前一項;不要用後續的偶然成功取代前面的確認。

05 · Settings 與問題排查一次只調整一項,保留可重現的結果

遇到問題時,先停止反覆重建配置,依「本機網路 → 輸入資料 → 伺服器參數 → 系統時間 → 規則與測試設定」的順序檢查。Settings 中的 Test Method、On Demand、Diagnostics、Proxy、TCP、UDP 涉及不同層面,不應一次全部開啟或關閉。先確認問題發生在匯入、連線或實際存取階段,才能選擇相應的檢查項目。

匯入後沒有伺服器,或更新失敗

先確認裝置可以正常連上網路,再檢查訂閱連結是否完整、是否含有空格,以及是否仍可存取。無法讀取訂閱內容時,反覆切換 Global Routing 通常無法修復連結本身。查看更新結果與提示,必要時向你現有服務的提供者確認連結狀態。取得有效資料後,再更新對應的 Subscribe,並確認伺服器項目確實出現,不要只檢查群組名稱。

測試逾時,或連線後無法開啟目標

確認 Type、Host、Port 與該協定的驗證欄位,尤其留意手動輸入時漏字、大小寫變動或連接埠錯誤。若連線涉及 TLS,也應確認現有資料中的相關名稱與選項,並檢查裝置的日期、時間與時區是否正確;時間偏差可能影響憑證驗證。參數應以現有資料為準,不要隨意關閉驗證或改用其他協定。

接著進入 Settings 查看 Test Method,確認目前的測試方式,再返回 Home,以相同條件重試。某種測試方式失敗,只能表示該項測試未得到預期結果,仍須搭配實際存取狀況判斷。如果只有配置(Config)模式下失敗,請檢查啟用中的配置、規則順序與最終策略;如果同一台伺服器在不同網路下表現不同,先記錄網路差異,再逐項縮小排查範圍。

開關自動變動,或只有部分 App 異常

先確認是否啟用了 On Demand,以及觸發條件是否符合預期。On Demand 與手動切換的使用情境不同,初次排查時應避免自動觸發干擾對照,但不要在不了解用途時大量清除既有設定。部分 App 異常時,也要區分網域比對、DNS 解析與 TCP、UDP 路徑問題;不要只因 Settings 中有對應項目,就直接修改所有選項。

需要進一步查看時,請使用 Diagnostics 中實際提供的診斷項目,並記錄錯誤發生時的操作與提示。分享記錄前,移除訂閱連結、密碼、驗證識別資料及其他敏感資訊,只保留足以說明問題的狀態、欄位名稱與操作順序。完整訂閱網址並非排查問題所必需。

修正一項後,依本頁順序重新驗證:返回 Add Server / Subscribe 確認資料,再確認 Global Routing,接著連線並進行 Connectivity Test 與實際存取檢查。確認結果有效後再處理下一項,避免問題已排除仍繼續修改。伺服器逾時的專門檢查請見連線逾時排查順序。

Shadowrocket 的 Settings 頁面,顯示 Language、Test Method、Today Widget、On Demand、Diagnostics、Proxy、TCP 和 UDP
Settings:依問題檢查對應項目,不要一次大量修改設定。