2026-10-09 · 進階設定 · 約 10 分鐘

Shadowrocket On Demand 設定教學:依 Wi-Fi、行動網路與網域自動連線

了解 On Demand 如何依指定 Wi-Fi SSID、行動網路及網域觸發連線或中斷連線,並掌握多條規則的套用順序與常見誤解。

本文重點

On Demand 決定系統何時建立或中斷 VPN 通道;Global Routing 與 Config 則決定通道建立後如何處理請求。本文適合已能手動連線,且已有自己的服務資訊與訂閱的使用者:先設定 Wi-Fi 與行動網路條件,再確認網域評估的適用範圍,最後依固定順序測試,避免混淆自動連線、規則分流與服務可用性。

一、先區分 On Demand 與規則分流

Shadowrocket(小火箭)的 On Demand 是交由 Apple 系統執行的按需連線機制,並非每次瀏覽網頁都重新選擇連線開關。網路介面、Wi-Fi 的 SSID 等條件用來判斷是否需要建立通道;請求進入通道後,才由 Global Routing、目前的 Config 與所選連線設定決定流向。自動連線成功,不代表所有請求都會經過 Proxy。

網路條件變更 系統評估條件 調整通道狀態 比對請求規則 連線至目標

例如,On Demand 已讓 VPN 保持連線,但 Global Routing 選擇 Direct 時,請求仍會以直連方式處理。若要使用自訂規則,請確認 Global Routing 是否設為 Config。Proxy 是整體代理模式,Scene 則與情境選擇有關;兩者都不能取代 Wi-Fi 或行動網路觸發條件。

2 個
先判斷是否建立通道,再判斷請求的流向
2 種
本文分別測試 Wi-Fi 與行動網路條件
4 項
Global Routing:Proxy / Direct / Config / Scene

結論:先完成一次手動連線,再新增自動條件

先在 Home 選擇現有連線設定,手動連線並確認目標可存取;若這一步未通過,應先檢查服務參數、DNS 與 Config,不要靠新增 On Demand 規則掩蓋連線問題。

二、Settings → On Demand:先記錄目前設定,再啟用條件

開始前,記錄 Home 目前選取的連線設定、Global Routing 模式與 Config。若已有訂閱,請先確認匯入與更新成功,且連線設定仍有效。On Demand 不會更新訂閱,也不會修正過期的驗證資訊;訂閱更新後若設定名稱或選取項目有所變動,還需要重新測試連線。

  1. 先在 Home 完成手動連線測試;首次使用時,請依系統提示允許新增 VPN 設定。
  2. 前往 Settings → On Demand 檢查現有條件。先記錄原本的順序,不要直接新增一組意義相反的規則。
  3. 先新增一項容易驗證的網路條件,例如指定 Wi-Fi 的 SSID;只修改這一項,儲存後再啟用 On Demand。
  4. 在 iPhone 或 iPad 的系統設定中搜尋 VPN,進入 Shadowrocket 對應的設定詳細資訊,確認 Connect On Demand 狀態。選單路徑可能因系統介面而異,請以裝置實際顯示為準。
  5. 切換網路後觀察 VPN 狀態,再重新發出一個請求。系統評估條件及建立通道都需要時間,請勿連續快速切換開關。

以下設定卡僅為條件設計範例,並非介面截圖,也不能直接匯入。Connect、Disconnect 表示連線動作;實際可編輯的條件請以 Settings → On Demand 顯示的項目為準。

三、依 SSID 區分 Wi-Fi,分開設定行動網路

SSID 是 Wi-Fi 網路名稱,不是路由器管理位址,也不是裝置在區域網路中的 IP 位址。輸入時請依實際名稱確認大小寫、空格與符號。若家中兩個頻段分別命名為 HomeNet 與 HomeNet-5G,應分別納入預期條件;不要把名稱的一部分當成可自動比對所有網路的萬用字元。

指定 Wi-Fi 的中斷連線例外

設定入口
Settings → On Demand
介面條件
Wi-Fi
SSID 範例
HomeNet
動作
Disconnect
規則位置
一般 Wi-Fi 連線條件之前

只有確定不希望該網路建立通道時才使用;SSID 名稱本身無法證明網路可信。

行動網路連線條件

設定入口
Settings → On Demand
介面條件
Cellular
SSID 限制
不設定
動作
Connect
驗證方式
關閉 Wi-Fi 後發出新請求

行動網路沒有 Wi-Fi SSID,請勿在此條件中附加家庭網路名稱。

若目標是「指定家庭 Wi-Fi 中斷連線,其他 Wi-Fi 與行動網路則連線」,就必須區分特定 SSID 例外與一般 Wi-Fi 條件。不要只設定家庭網路例外,就認為其他網路會自動採取相反動作;其他情況的行為仍取決於後續條件與原有設定。

四、網域觸發不是 DOMAIN-SUFFIX,也不是關閉網頁後中斷連線

設定網域相關的按需連線時,需區分系統連線評估與 App 內的流量分流。Apple 的 On Demand 機制支援透過 EvaluateConnection 評估符合條件的網域,例如在相應條件下依需求建立連線。是否提供網域條件、可選動作及 DNS 判斷項目,請以目前 Shadowrocket 的 On Demand 編輯頁面為準;系統支援的所有欄位,不代表 App 中一定都有對應的輸入欄位。

若頁面提供網域評估條件,請填入網域,而非完整 URL。例如測試網域填寫 example.com,不要填成 https://example.com/path。部分評估會依賴解析失敗或可達性判斷,並非每次存取該網域都會立即連線;現有通道、DNS 快取與重複使用的連線也會影響觀察結果。測試網域觸發時請單獨進行,避免同時存在較早符合的「所有網路皆連線」條件。

設定對象要解決的問題不應據此推論的行為
On Demand 網域評估系統是否需要為符合條件的請求建立連線關閉某個網頁就會立即中斷整個 VPN
DOMAIN-SUFFIX在 Config 中依網域後綴選擇請求策略只新增規則就能從未連線狀態啟動通道
DIRECT讓符合條件的請求直接連線至目標中斷正在運作的整個 VPN 通道
FINAL處理前面未符合規則的請求成為 On Demand 網路條件的預設動作

若要「特定網域走 Proxy,其餘直連」,主要應在 Config 中設定,而不是嘗試讓系統隨每個網域反覆連線與中斷。以下為規則片段示意,需加入目前設定的規則區段;PROXY 必須對應有效的策略,範例網域不代表任何可用服務。

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

網域條件未觸發連線,不代表會強制中斷已建立的連線。單一通道可能同時承載多個 App 的請求,不能以某個網頁的開啟或關閉來界定整個通道的存續時間。

五、多條條件的順序:特定例外在前,一般條件在後

系統會依序檢查 On Demand 規則,並採用第一條符合的規則。單一規則中的介面、SSID 等限制必須同時符合;同一個 SSID 清單則用來列出可比對的網路名稱。排查時不只要確認「規則存在」,也要確認它沒有被前面較寬泛的條件遮蔽。

  1. 第一層:特定例外。例如介面為 Wi-Fi,且 SSID 為 HomeNet 時執行 Disconnect。
  2. 第二層:一般 Wi-Fi。對其他希望連線的 Wi-Fi 執行 Connect;若放在第一條,家庭網路例外可能就不會有機會執行。
  3. 第三層:行動網路。為 Cellular 設定獨立動作,不要附加只適用於 Wi-Fi 的 SSID 條件。
  4. 最後確認:其餘情況。檢查既有的一般條件,確認沒有與目標衝突的寬泛 Disconnect 或 Connect。

這個順序說明的是網路規則設計。若加入 EvaluateConnection,還要確認它前面是否已有符合目前網路的規則。On Demand 的「第一條符合」與 Config 規則的「第一條符合」發生在不同階段:調整 FINAL 的位置無法修正 SSID 條件順序,移動 SSID 條件也不會改變 DOMAIN-SUFFIX 的請求策略。

六、以四種狀態交叉確認,不要只憑圖示變化判斷

測試期間請保持現有服務、Global Routing 與 Config 不變,只切換網路條件。每次切換後先等待狀態穩定,再發出新的請求;已開啟的網頁可能繼續顯示快取內容,既有長連線也不一定會立即呈現新的路徑。下表是前述範例設計的預期結果,並非任何網路的實測結果。

測試狀態範例預期結果結果不符時優先檢查
連線至 HomeNet符合特定 SSID 的 DisconnectSSID 拼字、例外順序、設定是否已儲存
連線至其他 Wi-Fi符合一般 Wi-Fi 的 Connect是否設有一般條件、網路是否已完成驗證
關閉 Wi-Fi,改用行動網路符合 Cellular 的 Connect實際介面、行動網路存取權限、連線設定是否有效
暫時關閉 On Demand停止依這些條件自動觸發系統設定中的 Connect On Demand 狀態

暫停自動連線時,請先關閉 On Demand;必要時再手動中斷現有通道,並確認系統設定。只在 Home 關閉連線,系統仍可能在下一次符合條件時重新建立通道。若長期不使用某組自動條件,建議先記錄設定,再停用或刪除對應規則,比反覆手動中斷更容易維持可預期的狀態。

七、常見問題:自動重新連線、網頁無法開啟與網域未觸發

已手動中斷,為什麼過一會兒又自動連線?

先前往 Settings → On Demand,檢查目前網路是否仍符合 Connect 條件。若只是暫時停用,請關閉 On Demand,再到系統 VPN 設定確認 Connect On Demand 狀態,最後中斷現有連線;不要只是不斷點按 Home 的連線開關。

家庭 Wi-Fi 設定了 Disconnect,為什麼還是自動連線?

在系統 Wi-Fi 頁面確認實際 SSID,檢查空格、大小寫及另一個頻段的名稱。接著將特定 SSID 例外移至一般 Wi-Fi 條件之前。確認條件已儲存後,重新連線至該 Wi-Fi,避免將修改前留下的通道狀態誤認為新規則的結果。

VPN 顯示已連線,網頁卻無法開啟,還要繼續修改 On Demand 嗎?

先暫停自動條件並手動連線,確認 Home 選取的現有服務是否有效,再檢查 Global Routing 與目前的 Config。延遲結果不代表 DNS 解析與網頁請求都已成功;若手動連線也無法存取,應轉而檢查服務參數、DNS 與請求策略。

新增了 DOMAIN-SUFFIX,為什麼存取網域時沒有自動連線?

DOMAIN-SUFFIX 是 Config 中的分流規則,不會啟動尚未建立的通道。先到 Settings → On Demand 確認是否提供並啟用了相應的連線評估條件,再檢查是否有更早符合的規則將其覆蓋。若目標只是讓該網域走 PROXY,可先維持通道連線以測試分流。

完成設定後,應分別確認兩件事:網路變更時,通道是否依預期建立或中斷;通道建立後,請求是否依預期分流。分開記錄結果,才能判斷下一步要調整 On Demand,還是 Global Routing、Config 或現有服務參數。

App Store 正版確認