系統代理決定應用程式是否將連線送至本機代理連接埠;全域模式與繞過中國大陸則決定進入核心的連線要使用哪個出口。日常瀏覽可先使用「自動設定系統代理+繞過中國大陸路由」,排查分流問題時再暫時切換至全域模式。本文以 Windows 版 v2rayN 為例,說明如何確認連接埠、測試命令列連線及檢查記錄,避免誤以為「已開啟代理」就代表「所有流量都經過節點」。
系統代理與路由模式:兩個獨立設定
先確認連線是否進入核心,再檢查核心如何選擇出口。v2rayN 是用戶端介面,負責管理節點、啟動核心及調整系統代理;V2Ray 或 Xray 核心則負責接收連線、比對路由規則並連線至伺服器。訂閱提供的是節點資訊,不代表系統代理已啟用,也不保證每個應用程式都會使用代理。
入口:系統代理
- 適用對象
- 遵循系統代理設定的應用程式
- 本機位址
127.0.0.1- 連接埠範例
10808,請以實際監聽的連接埠為準- 主要用途
- 將應用程式的連線送至本機代理入口
應用程式若忽略系統代理,切換路由也無法讓連線自動進入核心。
出口:核心路由
- 適用對象
- 已進入核心的連線
- 比對條件
- 網域、IP、連接埠等
- 全域模式
- 通常會將一般目標連線交由代理出口處理
- 繞過中國大陸
- 將符合規則的中國大陸目標導向直連出口
模式名稱只是預設選項,實際行為取決於產生的路由規則。
例如,瀏覽器遵循系統代理設定,連線先送到本機 127.0.0.1:10808,接著核心可能讓中國大陸網站直連,其他網站則經由節點連線。也就是說,瀏覽器確實使用了本機代理,但並非每條連線都會經過遠端伺服器。因此,「系統代理已開啟」和「網站出口仍是本地網路」可以同時成立。
全域代理與繞過中國大陸:依用途選擇
日常瀏覽同時涉及中國大陸與其他地區的網站時,建議優先使用繞過中國大陸;若要確認特定網域是否被錯誤地設為直連,可暫時切換至全域模式進行比較。全域路由不是網卡層級的流量接管,也不是加速開關。它不會自動接管忽略系統代理的程式,也無法保證遊戲、語音或其他 UDP 流量都會進入相同入口。
繞過中國大陸路由
建議使用中國大陸的服務通常會直連,其他目標則依預設規則使用代理。這樣可減少連線繞道,但會依賴網域與 IP 規則資料;分類遺漏、資料過時或規則順序不當,都可能造成誤判。
適用情境:日常瀏覽、使用中國大陸服務辦公,同時查閱外部資料。
全域路由
將進入核心的一般目標連線統一交由代理出口處理,方便排除分流規則的影響。中國大陸網站也可能繞道遠端,進而影響延遲、地區判定及登入風控。
適用情境:短時間排除故障、確認代理出口,或需要統一出口的應用程式。
直連路由
連線仍可能先經過本機核心,再由本機網路直接連至目標。適合用來測試本地網路的基本連線狀況,但「直連路由」和「清除系統代理」是兩項不同操作。
適用情境:比較本地網路的連線狀況、排查節點相關問題。
「繞過中國大陸」不代表會即時判斷伺服器是否位於中國大陸,並保證一律直連。核心通常是依據規則資料進行比對,不會逐一查詢目標的實際所在地。跨區域 CDN、同一網域解析出不同 IP,以及應用程式直接連線至 IP 等情況,都可能影響最後的分類。若要讓區域網路直連,也要確認預設規則是否包含私有位址,不能只看模式名稱推斷。
v2rayN 設定步驟:先確認入口,再切換路由
以下以 v2rayN 7.x 常見介面為例。不同小版本、介面配置及核心組合,欄位可能有所差異;請查看目前設定中的連接埠,不要直接沿用舊教學裡的 10809。新舊設定可能分別提供混合入口或獨立的 HTTP、SOCKS 入口;即使連接埠號相同,也不代表使用相同協定。
-
選擇節點
在主畫面的節點清單中選取目標節點,按右鍵選擇「設為活動伺服器」。先確認節點來自有效訂閱或現有設定,且核心能正常啟動。節點使用 VMess、VLESS 或其他協定,不會影響本文所述「入口與路由分層」的判斷方式。
-
確認連接埠
前往「設定」→「參數設定」,查看本機監聽連接埠與入口協定,並記下實際設定。本文以
10808為例,僅適用於該連接埠確實提供 SOCKS 或相應的混合入口。修改並儲存後,請確認核心已依新設定重新啟動。 -
啟用入口
在主視窗底部的「系統代理」下拉選單中,選擇「自動設定系統代理」;也可以在系統匣圖示上按右鍵,從「系統代理」選單選擇相同項目。這裡的「自動設定」是指由用戶端設定系統代理,不能直接解讀為 PAC 分流。
-
設定分流
在主視窗底部的「路由」選擇「繞過中國大陸」預設模式,並確認該預設是否符合區域網路直連需求。需要進行比較測試時,在同一處切換至「全域」,不要同時更換節點或修改 DNS。
-
重新建立連線
關閉目標頁面後重新開啟;必要時重新啟動應用程式,避免舊連線沿用切換前的出口。查看記錄中的目標位址與出口標籤;切回日常預設模式後,再各測試一個中國大陸與其他地區的目標。
瀏覽器可以連線,命令列卻不通:使用明確指定代理的方式測試
瀏覽器連線成功,只能證明該瀏覽器的連線路徑可用。命令列工具可能會讀取環境變數,也可能完全忽略桌面系統代理;應用程式也可能使用自己的代理設定。測試時明確指定代理位址,就能排除「究竟讀取了哪項設定」的不確定性。
# SOCKS 測試:由代理端解析目標網域
curl --proxy socks5h://127.0.0.1:10808 --connect-timeout 10 --max-time 20 -I https://example.com/
# 直連對照:明確忽略代理設定
curl --noproxy "*" --connect-timeout 10 --max-time 20 -I https://example.com/
在 Windows PowerShell 中,可以將命令開頭的 curl 改寫為 curl.exe,避免舊版環境中同名命令別名造成參數差異。這裡的 10 秒是連線逾時上限,20 秒是整個請求的時間上限,兩者都不是效能測試結果。即使目標回傳 HTTP 錯誤狀態,也可能代表連線已成功建立,不能只憑狀態碼判定節點失效。
| 測試結果 | 優先檢查 | 接下來的處理方式 |
|---|---|---|
| 明確指定代理後成功,瀏覽器卻失敗 | 瀏覽器是否使用系統代理,或另有代理設定 | 確認系統代理位址,重新啟動瀏覽器後再測試 |
| 立即顯示連線遭拒 | 本機連接埠未監聽,或連接埠填寫錯誤 | 查看核心啟動記錄,確認入口協定與連接埠 |
| 本機入口可連線,目標連線逾時 | 節點、伺服器連線參數、遠端 DNS 解析及目標可達性 | 維持路由不變,改用已知可用的節點進行比較 |
| 全域模式可連線,繞過中國大陸卻不行 | 網域或 IP 被分流至直連,但直連路徑無法使用 | 查看命中的規則,為目標新增更精確的代理規則 |
socks5h 會將目標網域交由代理端處理;這與先在本機解析網域的方式並不完全相同。不過,交由代理端解析不代表網域一定會透過遠端節點查詢,實際情況仍取決於核心的 DNS 與路由設定。若要測試 HTTP 入口,可使用 --proxy http://127.0.0.1:10808,前提是目前的連接埠確實支援 HTTP 代理。
繞過中國大陸的比對順序:網域、IP 與預設出口
路由規則會依序比對,通常由第一條符合的規則決定出口;範圍較明確的例外規則應排在涵蓋範圍較大的規則之前。以下是 V2Ray/Xray 格式的路由片段,示範「私有位址直連、中國大陸網域與位址直連、其餘流量交由代理」的設定意圖,並非可直接啟動的完整設定。
{
"routing": {
"domainStrategy": "IPIfNonMatch",
"rules": [
{
"type": "field",
"ip": ["geoip:private"],
"outboundTag": "direct"
},
{
"type": "field",
"domain": ["geosite:cn"],
"outboundTag": "direct"
},
{
"type": "field",
"ip": ["geoip:cn"],
"outboundTag": "direct"
},
{
"type": "field",
"network": "tcp,udp",
"outboundTag": "proxy"
}
]
}
}
direct和proxy是出口標籤,必須與完整設定中的outbounds相對應;標籤名稱本身不會自動建立直連或代理功能。geosite:cn與geoip:cn需要核心提供可用的規則資料。若資料缺漏,可能無法載入;資料內容也會影響分類結果。IPIfNonMatch表示網域未符合規則時,可以先解析出 IP,再嘗試比對 IP 規則;因此解析結果可能改變分流路徑,並增加解析所需的資源。- 最後一條規則會明確處理其他 TCP、UDP 連線。若沒有兜底規則,未符合其他規則的連線通常會使用第一個出口,不能預設它們一定會走代理。
使用 v2rayN 路由預設模式時,請透過用戶端的路由設定管理規則,不要將上述片段任意貼進執行時產生的檔案。用戶端重新啟動或切換設定後,可能會重新產生該檔案。嗅探功能雖能補充部分連線的網域資訊,卻無法可靠地還原所有直接連至 IP 的連線,也不應當成修復分流問題的唯一方法。
桌面瀏覽與獨立應用程式:分別設定入口
建議作法:依應用程式設定入口,再統一確認路由
遵循系統代理的應用程式
- 開啟「自動設定系統代理」,先使用繞過中國大陸路由。
- 使用瀏覽器的新連線,分別測試中國大陸與其他地區的目標。
- 特定網站異常時,暫時切換至全域模式比較,再修正規則。
自行設定代理的應用程式
- 在應用程式中填入
127.0.0.1與實際監聽的連接埠。 - 明確選擇 HTTP 或 SOCKS5,不要只照抄連接埠號碼。
- 命令列測試時,先使用明確指定的參數,再決定是否設定環境變數。
系統代理負責應用程式的連線入口,路由則決定出口;如需接管更廣泛的流量,再另外評估 TUN 模式。
TUN 模式會透過虛擬網路介面接管符合條件的流量,運作機制與一般系統代理不同。這涉及系統路由、權限、DNS 與流量繞行設定;不能只因命令列工具不讀取系統代理,就直接把 TUN 當成首選解決方案。先用明確指定代理的參數驗證,更容易找出問題所在。
Android 上的 v2rayNG 使用 Xray 核心,v2flyNG 則使用 V2Fly 核心。透過系統 VPN 介面接管流量的方式,與 Windows 的系統 HTTP 代理設定不同;仍須分別檢查應用程式範圍與核心路由。桌面版的操作步驟不適合直接套用至 Android;模式名稱相似,也不代表入口機制相同。
常見問題:全域模式無效、退出後無法連線及分流異常
已選擇全域模式,為什麼有些程式仍使用本地網路連線?
先確認程式的連線是否進入本機入口。使用明確指定代理的命令測試相同目標;若測試成功,再檢查程式本身的網路設定。全域路由只會處理已進入核心的連線;忽略系統代理的應用程式不會因切換至全域模式而自動被接管。
關閉 v2rayN 後,為什麼瀏覽器無法連線?
可能是系統仍指向已停止的本機連接埠。重新啟動 v2rayN,在「系統代理」中選擇「清除系統代理」,再正常結束程式。也可以前往 Windows「設定」→「網路和網際網路」→「Proxy」確認手動代理設定;由組織管理的代理設定,請依既有網路規範處理。
繞過中國大陸時無法連線,切換至全域模式卻可以,該怎麼處理?
保持節點不變,記下發生問題的網域,並查看記錄中的出口標籤。若連線命中直連規則,請在路由規則中將該網域的代理例外排在涵蓋範圍較大的直連規則之前。應用程式重新建立連線後再驗證,不必長期將所有日常流量改為全域模式。
開啟全域模式後,中國大陸網站變慢,該換協定嗎?
先切回繞過中國大陸,重新建立連線並測試相同頁面。若直連恢復正常,問題更可能是連線繞道,而不是 VMess 或 VLESS 本身。每次只變更路由設定,避免同時更換協定、節點與 DNS,導致無法確認原因。
啟用系統代理後,網域解析一定會經過節點嗎?
不一定。應用程式可能自行解析網域,瀏覽器可能啟用安全 DNS,核心也有獨立的 DNS 策略。請先分清楚連線入口與 DNS 解析入口,再檢查瀏覽器 DNS 設定及核心 DNS 設定;單靠系統代理開關或出口 IP,無法證明網域解析路徑。
最後應以三項資訊判斷:本機監聽是否正常、目標連線是否進入核心,以及記錄顯示使用了哪個出口。查詢出口 IP 只能反映該次查詢連線,不能代表整台裝置的所有流量。依照「入口→路由→節點」的順序排查,比反覆切換模式更容易得出可重現的結論。