On Demand 管理何時建立連線,Global Routing 則決定連線建立後如何處理流量。本文適合已在 Shadowrocket(小火箭)設定好自有伺服器的使用者:先測試手動連線,再設定 Wi-Fi、行動網路與網域條件,最後透過切換網路逐項驗收,避免混淆自動重新連線、規則分流與伺服器故障。
一、先分清 On Demand 與規則分流
On Demand 使用 Apple 系統的隨選 VPN 機制,在符合條件時要求建立或中斷連線。它不是定時任務,也不會在偵測到網頁無法開啟時自動更換伺服器。前往 Settings → On Demand 查看按需連線設定;可選條件與欄位請以裝置目前顯示的介面為準。
連線建立後,流量走向仍由 Home → Global Routing 和目前設定檔決定。例如,連線已開啟但 Global Routing 設為 Direct,不代表請求會經由所選代理伺服器;同樣地,在 Config 中加入網域規則,也不代表已向系統註冊網域按需觸發條件。
Config
建議使用目前設定檔中的規則決定流量策略。On Demand 建立連線後,仍會依規則順序檢查請求,符合規則後可採用 DIRECT、PROXY 或 REJECT 處理。
適用情境:已有明確分流需求,且已確認目前設定檔適合日常使用。
Proxy
將用戶端可處理的流量一律採用代理方式處理,不依目前設定檔中的一般分流規則逐條決定去向。這會改變流量策略,不會改變 On Demand 的觸發條件。
適用情境:短時間排查目前問題是否由分流規則造成。
Direct
採用直連方式。即使按需機制已建立 VPN 連線,也不能因此認定請求正透過遠端伺服器傳送。
適用情境:確認本地網路直連是否正常,建立排查基準。
Scene
依已設定的情境選擇相應的處理方式。情境設定與按需連線條件必須分別檢查,不能只看 Scene 名稱就推斷目前的流量走向。
適用情境:已建立並驗證情境設定的使用者。
先測試手動連線,再啟用自動觸發
測試時固定使用一台現有伺服器和一種 Global Routing 模式。若手動連線後仍無法存取目標資源,請先修正伺服器或規則,不要再疊加 On Demand 條件。
二、啟用前的準備與操作順序
本文以使用者已有自己的服務供應商與訂閱為前提。先在 Home 確認目標伺服器已匯入,並核對位址、連接埠與驗證參數是否與現有服務提供的資訊相符。若匯入後尚未測試,請先完成手動連線與存取測試;訂閱更新成功只表示已取得設定內容,不代表每台伺服器都能正常連線。
-
測試連線
前往 Home,選取一台已知可用的伺服器,手動開啟連線。首次出現系統 VPN 設定授權提示時,請核對 App 名稱,再依系統提示完成授權。
-
固定模式
前往 Home → Global Routing,選取準備實際使用的模式。若使用 Config,請先前往 Config 確認目前選取的設定檔及其規則。
-
前往按需設定
開啟 Settings → On Demand。記下原有設定,再啟用按需連線;先只設定一種網路條件,不要同時變更 Wi-Fi、行動網路與網域條件。
-
儲存並切換網路
依目前介面完成儲存或返回操作,再實際切換至目標網路。回到 Home 檢查連線狀態,並存取一個已知可用的測試目標。
-
確認中斷狀況
離開剛才使用的網路,再觀察連線是否符合預期。接著返回 Settings → On Demand 加入下一項條件;每次修改後,都要重新測試進入與離開兩種情況。
系統需求與裝置相容性請以 App Store 頁面標示為準。如果裝置受到管理政策限制,或系統不允許安裝 VPN 設定,請先處理授權問題。系統拒絕建立 VPN 時,不要誤以為是按需規則未命中。
三、如何設定 Wi-Fi 名稱與行動網路條件
Wi-Fi 條件判斷的是裝置目前連線的網路,而不是附近掃描到的網路。若 Settings → On Demand 提供指定 Wi-Fi 名稱的條件,請依裝置實際顯示的 SSID 填寫,並留意大小寫、空格及名稱結尾的字元。範例 Home-WiFi 和 Home-WiFi-5G 是兩個不同名稱;請勿以路由器品牌或自行設定的網路備註取代 SSID。
常見需求之一是「連上指定的家庭 Wi-Fi 時中斷連線,使用行動網路時則建立連線」。這需要分別設定指定 Wi-Fi 下的中斷動作,以及行動網路下的連線動作;只加入一項家庭 Wi-Fi 條件,無法完整定義其他所有網路的行為。以下是測試規劃範例,不是 App 預設設定,也不是實測結果。
| 網路條件 | 目標動作 | 驗收操作 |
|---|---|---|
| 已連線至 Home-WiFi | 中斷連線 | 從行動網路切換至此 Wi-Fi,再檢查 Home 狀態 |
| 行動網路 | 建立連線 | 關閉 Wi-Fi,確認行動數據可用後發出請求 |
| 其他 Wi-Fi | 依個別設定處理 | 連線至另一個已獲授權使用的 Wi-Fi,確認沒有遺漏其他情況 |
| 沒有可用網路 | 無法建立遠端連線 | 先恢復網路,再判斷條件是否生效 |
- 同名網路:SSID 不能證明網路是否可信,不同地點可能使用相同名稱。不要只憑名稱就認定某個網路一定適合直連。
- 登入入口網站:需要網頁驗證的 Wi-Fi,請先完成網路登入。若按需連線影響驗證,可暫時停用 On Demand,完成登入後再重新啟用並測試。
- 切換過程:Wi-Fi 中斷到行動數據可用之間,可能會有短暫的轉換時間。請等新網路可以存取後再驗收,不要只看切換當下的圖示。
若介面提供條件排序或通用的預設條件,請避免範圍過廣的條件蓋過指定 SSID 的例外。最穩妥的驗證方式是逐項新增,並記錄每種網路下的結果,而不是一次設定多項後只測試目前的 Wi-Fi。
四、網域觸發不等於 DOMAIN-SUFFIX 分流
網域按需條件涉及系統對網域解析及連線需求的評估,並不會監看瀏覽器網址列中的每次存取。請在 Settings → On Demand 查看目前是否提供網域相關條件及其說明;若目前介面沒有相應選項,請勿將 Config 中的規則當成替代設定入口。
網域欄位應填寫主機名稱,例如 portal.example.com,而非包含通訊協定、連接埠及路徑的 https://portal.example.com:443/account。父網域是否涵蓋子網域、是否允許萬用字元,取決於該欄位的定義,不應直接套用 DOMAIN-SUFFIX 語法。系統網域按需機制也可能根據解析結果判斷是否需要連線,因此無法保證「每存取一次就重新連線一次」。
以下僅說明 Config 規則的意義,並非可匯入的 On Demand 設定。example.com 是說明用網域;實際操作時,請確認使用的是自己有權存取的業務網域,並先備份設定檔。
[Rule]
DOMAIN-SUFFIX,example.com,PROXY
FINAL,DIRECT
DOMAIN-SUFFIX,example.com,PROXY:在規則模式中,將符合該網域後綴的流量交由 PROXY 策略處理。FINAL,DIRECT:前面的規則都未命中時,採用 DIRECT。這不是「連線失敗後改為直連」的重試指令。- 測試網域觸發前,請先確認現有設定中的 DNS 與目標網域解析路徑。瀏覽器快取、DNS 快取及 App 重複使用的連線,都可能導致重新整理時沒有觸發新的網域評估。
驗收時可先關閉測試頁面,再重新開啟並查看解析與連線記錄。使用 IP 位址存取不能取代網域條件測試,因為這可能略過目標網域的解析程序。也不要刪除所有 DNS 設定來「強制觸發」,否則會同時改變多項變數。
五、手動開關、自動重新連線與排查順序
啟用 On Demand 後,手動關閉連線不一定代表已長期停用自動連線:出現新的網路事件或符合條件的請求時,系統可能會再次發起連線。若要明確暫停自動化,請先前往 Settings → On Demand 停用按需連線,再回到 Home 關閉連線,並實際發出一次請求確認狀態。
反過來說,手動開啟連線也不能證明某項按需條件設定正確。有效的驗收紀錄應包含「目前使用哪個網路、連線先前的狀態、執行了什麼觸發操作,以及連線後的狀態」。只截取連線已開啟的畫面,無法區分是手動操作還是系統觸發。
- 先檢查底層網路:停用 On Demand 後,確認 Wi-Fi 或行動網路本身是否可正常存取。若網路尚未登入、沒有訊號或未允許使用行動數據,請先恢復基本網路連線。
- 再檢查連線授權:確認系統 VPN 設定仍有效、未受管理政策限制,且沒有其他 VPN 設定正在爭用連線。
- 接著檢查觸發條件:核對 SSID、網路類型與條件動作;每次只保留一項測試條件,觀察問題是否仍會重現。
- 最後檢查流量策略:若連線已建立但無法存取目標,請檢查 Global Routing、目前的 Config、DNS 與伺服器是否可用,不要再繼續修改觸發條件。
依連線狀態分別排查
始終無法建立連線時,優先檢查系統授權與按需條件;連線已建立但請求失敗時,則檢查網路、伺服器與分流。不要在同一次測試中同時更新訂閱、切換伺服器及修改規則。
六、On Demand 設定常見問題
關閉 Home 開關後,為什麼又重新連線?
先查看 Settings → On Demand 是否仍處於啟用狀態。若要停止自動連線,請先停用按需連線,再關閉 Home 開關;接著切換一次網路或發出請求,確認不會依原有條件重新連線。
Wi-Fi 可以觸發,為什麼行動網路不行?
關閉 Wi-Fi 後,先確認行動數據可正常使用,再檢查是否確實設定了行動網路條件及連線動作。維持同一台伺服器不變,先測試手動連線,以區分行動網路的存取限制與觸發條件問題。
已設定 DOMAIN-SUFFIX,為什麼沒有自動連線?
該規則位於 Config,只負責比對流量。請返回 Settings → On Demand 檢查系統按需條件;如果只想在既有連線中依網域分流,使用 Global Routing → Config 即可,不必把分流需求改成連線觸發需求。
更新訂閱會一併修復按需設定嗎?
訂閱更新與 On Demand 屬於不同設定環節,不能假設更新伺服器清單就能修復系統觸發條件。更新後請先在 Home 確認目前選取的伺服器,再返回 Settings → On Demand 個別檢查條件。
iPad 也需要重新驗證嗎?
需要。請在 iPad 上檢查本機 VPN 授權、Settings → On Demand,以及目前實際連線的 Wi-Fi;行動網路測試僅適用於具備相應功能且已啟用數據服務的裝置。系統需求請以 App Store 頁面標示為準。