Shadowrocket On Demand 按需連線設定:依 Wi-Fi、行動網路與網域自動觸發

了解 Shadowrocket On Demand 的觸發方式:依 SSID 區分家用與公共 Wi-Fi、設定行動網路連線行為及網域條件,並釐清按需連線與手動開關的關係。

本文重點

On Demand 會依網路條件建立或處理 VPN 連線,不會決定每項要求的出口策略。本文適合已在 Shadowrocket(小火箭)設定好自有服務,且手動連線正常的使用者;依序設定並測試 Wi-Fi、行動網路與網域條件,即可分辨自動連線、規則分流及手動中斷的不同結果。

On Demand 與規則分流的差異

On Demand 是系統按需連線機制的設定入口,位於 Settings → On Demand。它描述的是「何時需要 VPN 連線」,而非「某個網站必須走哪條線路」。開關、條件清單與預設行為請以目前 App 顯示為準;初次設定建議只啟用一種網路條件,確認有效後再加入例外。

規則分流是在隧道建立後進行,由 Home 中的 Global Routing 和目前的 Config 決定。選擇 Config 時,要求會依所選設定檔處理;Proxy、Direct 與 Scene 是其他路由模式,並非 On Demand 的觸發條件。自動連線不代表所有要求都會經過代理;選擇 Direct 也不代表系統 VPN 已中斷。

網路條件變更 系統評估條件 建立 VPN 連線 套用路由策略 要求送出

網路切換、網域解析或後續網路存取,都可能促使系統重新評估條件,實際情況取決於已儲存的規則與系統狀態。不要把 On Demand 當成定時連線檢查工具:建立隧道、連上遠端服務,以及開啟目標網頁,是三個需要分別確認的環節。

2 層
設定位置:Settings → On Demand
4 項
Global Routing:Proxy / Direct / Config / Scene
3 組
本文分別測試:Wi-Fi、行動網路、網域條件

結論:先確認隧道,再檢查路由

自動連線後網頁仍無法正常使用時,先確認系統 VPN 是否已連線,再檢查 Home → Global Routing 與目前的 Config;不要同時修改 On Demand 和分流規則,否則無法判斷是哪項修改造成結果。

設定前:建立手動連線基準

手動連線基準是指關閉自動觸發後,仍可重複取得的連線結果。建議先維持現有協定參數不變,在 Home 使用已設定好的服務連線一次;本文以使用者已有自己的服務商與訂閱為前提,不涉及服務來源。

  1. 前往 Settings → On Demand,記下原有設定,暫時關閉按需連線,避免疑難排解期間系統再次嘗試連線。
  2. 返回 Home,選取準備使用的服務。若透過 Subscribe 匯入,請先確認更新結果與實際選取的項目;清單已更新不代表系統已自動選好可用項目。
  3. 檢查 Home → Global Routing。若要依設定檔分流,請選擇 Config,並前往 Config 確認目前使用的檔案。
  4. 開啟 Home 的連線開關;首次出現系統 VPN 設定授權提示時,請依系統流程確認。完成授權不代表已連上遠端服務。
  5. 分別開啟一個原本可直接存取的頁面,以及一個需要現有代理策略的目標,記錄連線狀態、錯誤訊息與目前的網路類型。
  6. 中斷連線後再連線一次。若手動連線本身不穩定,請先檢查位址、連接埠、認證與 DNS,再設定自動觸發。

Wi-Fi:使用 SSID 區分網路條件

SSID 是 Wi-Fi 網路名稱,不是路由器管理位址,也不是存取點的硬體位址。設定 SSID 條件時,請從裝置目前的 Wi-Fi 資訊核對完整名稱,保留空格、大小寫與符號;不要自行假設比對時會忽略這些差異。

Wi-Fi 條件的建議設定取決於使用目的。例如,若不希望在家用網路自動建立隧道,而想離家後再按需連線,可將家用 SSID 設為例外;若所有網路都需要連線,則不必加入這類例外。「家用」只是使用者賦予的用途,並非系統可辨識的安全等級。

  1. 在裝置的 Wi-Fi 設定中記下目前的網路名稱,例如 Home-5G。這只是範例,請填入自己的 SSID。
  2. 前往 Settings → On Demand,查看目前介面提供的 Wi-Fi 與 SSID 條件;先閱讀清單說明,確認條件是比對包含項目還是排除項目。
  3. 依目標選擇相應動作。若不希望特定 SSID 自動連線,請使用該介面支援的排除或中斷行為;若介面只提供忽略選項,別把「忽略」當成「立即中斷」。
  4. 儲存並啟用 On Demand,在該 SSID 下發出新的要求,再切換至另一個已知網路重複測試。
  5. 若 App 無法取得目前的 SSID,請檢查系統是否提示相關權限,以及目前系統的存取限制。無法辨識的名稱不能作為已成功符合條件的證據。
測試網路設定目標範例觀察結果
Home-5G不主動建立新隧道中斷後發出要求,檢查是否重新連線
另一個已知 SSID符合條件時自動連線檢查系統 VPN 狀態與目標存取結果
需要網頁認證的 Wi-Fi先完成網路登入確認可開啟認證頁後,再測試按需連線

公共 Wi-Fi 可能需要先透過網頁認證;此時連上網路不代表已能存取網際網路。若連線行為影響認證頁,可暫時關閉 On Demand 並中斷 VPN,完成網路認證後再恢復原設定。同一個 SSID 也可能出現在不同地點,不能只憑名稱判斷網路身分或作出安全保證。

行動網路:單獨測試切換後的連線

行動網路條件是裝置使用行動數據時的按需連線行為,應與 Wi-Fi 條件分開記錄。預設值請以目前 App 顯示為準;若希望離開 Wi-Fi 後仍能按需連線,建議先確認行動網路本身可用,再啟用相應條件。不要直接將 Wi-Fi 下的成功結果視為行動網路測試結果。

  1. 前往 Settings → On Demand,檢查目前介面提供的行動網路條件,並儲存目標行為。
  2. 關閉 Wi-Fi,確認裝置確實正在使用行動網路,且系統允許 Shadowrocket 使用行動數據。
  3. 發出新的要求,記錄從網路切換到 VPN 狀態變更的過程;不要只憑單次網頁載入時間判斷服務品質。
  4. 重新連上 Wi-Fi,檢查 SSID 條件是否如預期生效;再切回行動網路,重新測試一次。
  5. 若只有行動網路連線失敗,請保留 On Demand 設定,改用手動連線測試同一項服務,以區分觸發失敗與遠端連線失敗。

切換網路會改變本機位址、路由與可達性,既有 TCP 連線可能中斷,App 需要重新建立連線。Shadowsocks、VMess、VLESS、Trojan、Hysteria2、WireGuard 的傳輸方式與參數各不相同;On Demand 不會修正這些協定的位址、連接埠或認證錯誤,也無法保證每個既有工作階段在切換後持續連線。

網域條件:先分清觸發網域與分流規則

網域觸發是系統按需規則中的連線評估條件,不等同於 Config 中的網域分流。Apple 系統的網域按需機制可結合網域解析條件,決定是否嘗試建立連線,並非看到任何網頁位址就一定會啟動隧道。Shadowrocket 目前介面是否提供相應編輯項目、支援哪些比對方式與動作,請以實際顯示為準;不要猜測介面未顯示的功能,再自行加入設定鍵。

網域欄位應填入主機名稱,而不是完整 URL。例如,目標頁面位於 https://portal.example.com/account,網域條件要填的主機名稱是 portal.example.com。不要加上 https://、路徑 /account 或連接埠 :443;萬用字元與子網域涵蓋範圍,則須依欄位說明確認。

Config 中的規則用來決定如何從隧道內連出。以下是設定規則區的語法範例,不是 Settings → On Demand 的輸入內容;其中 PROXY 必須能在目前的設定中解析為有效策略。這段規則本身不會註冊系統層級的網域觸發條件。

DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT

DOMAIN-SUFFIX 用於比對網域後綴,FINAL 負責在前面的規則都未符合時套用最終策略;此例會將其他要求交給 DIRECT。若只需要「存取特定網域時走代理」,通常應先使用 Config 分流,並讓隧道按需連線,而不是為此額外疊加網域觸發條件。修改前請備份現有規則,避免用範例覆蓋整份設定。

手動開關:中斷連線不等於停用自動觸發

Home 的連線開關控制目前的連線;On Demand 則控制之後符合條件時的系統行為。啟用按需連線後,手動中斷可能只改變目前狀態;下次網路變更或出現符合條件的要求時,仍可能再次觸發連線。實際時序由系統與已儲存的條件決定,不應因為重新連線就直接判定開關失效。

剛在 Home 關閉,怎麼又連上了?

先前往 Settings → On Demand 關閉按需連線,再返回 Home 中斷連線。接著發出要求進行測試;若仍自動連線,請再到系統 VPN 設定確認是否有其他啟用按需連線的設定。

離開 Shadowrocket 後,還會自動連線嗎?

不要把離開 App 畫面當成停用系統 VPN 設定。若要暫停自動觸發,請明確關閉 Settings → On Demand,並檢查系統 VPN 狀態,而非只返回主畫面。

切換到家中 Wi-Fi 後,為什麼原本的連線還在?

先檢查 SSID 項目是否比對正確,再確認相應動作是忽略還是中斷。忽略條件不一定會取消既有連線;可先手動中斷,再測試在該網路下是否會建立新連線。

VPN 顯示已連線,為什麼目標網站還是打不開?

返回 Home 核對 Global Routing 與選取的服務;若使用 Config,請再檢查目前檔案中的規則與 DNS。先在相同網路下手動連線重測,確認問題是否與自動觸發無關。

驗收與復原:依固定順序找出問題環節

驗收紀錄可用來區分「沒有觸發」與「連線後無法使用」。建議依下表逐項測試,每完成一列再調整下一項;不要同時更新 Subscribe、切換協定、修改 DNS 和變更 SSID 條件,否則無法保留可比較的基準。

狀況優先檢查下一步
切換網路後沒有自動連線On Demand 開關、網路條件、SSID 辨識儲存設定後重新切換網路,並發出新的要求
系統嘗試連線後失敗相同服務能否手動連線關閉按需觸發,檢查服務參數與網路可達性
只有網域條件沒有反應比對語意、解析條件、快取與 App 的解析方式先測試網路條件,再單獨重測網域條件
VPN 已連線,但要求失敗Global Routing、Config、DNS 與遠端服務查看可用的連線紀錄,區分解析失敗與連出失敗
暫時停止所有自動連線App 與系統中的按需連線開關先停用 On Demand,再中斷目前的 VPN

復原時應恢復至最精簡的可用狀態:關閉 Settings → On Demand,保留原有服務與 Config,並在 Home 手動連線。確認恢復正常後,先新增一項 Wi-Fi 條件,再測試行動網路,最後才處理確有需要的網域條件。分享疑難排解紀錄時,請隱藏訂閱憑證、服務密碼與個人網路名稱,只保留必要的狀態與錯誤描述。

結論:完成三項獨立測試再驗收

分別完成已知 Wi-Fi、行動網路與手動暫停三項測試,記錄「是否觸發、是否連通、是否依規則送出」。只有三項結果都符合目標,才建議長期啟用 On Demand。

App Store 正版確認 →