瀏覽器可以連線,但遊戲或命令列工具仍直接連線時,可先確認應用程式是否遵循系統代理,再評估是否啟用 TUN。本文以 Windows 桌面版 v2rayN 為例,依序說明權限準備、啟用虛擬網卡、驗證路由及故障復原。先釐清「接管流量」與「所有流量都走代理」的差異,再透過記錄檔和系統命令確認設定,不要只看開關是否已開啟。
釐清系統代理、TUN 與全域路由
系統代理會在作業系統中登記代理伺服器位址,讓支援此設定的應用程式主動連線至本機代理入口。但它不會自動改變所有程式的網路行為:有些命令列工具會讀取環境變數,有些遊戲會直接建立通訊端,另有應用程式使用自己的代理設定。瀏覽器可以連線,只能表示瀏覽器使用的連線方式大致正常。
TUN 會在網路層建立虛擬網卡,再搭配路由將符合條件的 IP 流量送入處理流程。應用程式不必直接支援 HTTP 或 SOCKS 代理,但流量是否會被接管,仍取決於路由、介面繫結、位址類型及排除項目。流量被接管後,仍須依規則決定直連、代理或封鎖。
| 設定方式 | 作用層級 | 無法據此保證的事項 |
|---|---|---|
| 系統代理 | 讓支援代理設定的應用程式連線至本機代理連接埠 | 無法保證接管遊戲、UDP 或所有命令列請求 |
| TUN 模式 | 透過虛擬網卡與系統路由接收 IP 流量 | 無法保證所有流量最後都會經由遠端節點對外連線 |
| 全域代理路由 | 將規則允許範圍內的請求交由代理伺服器連線 | 無法取代 TUN,也無法修復失效的節點 |
| 規則分流 | 依網域名稱、IP 等條件選擇不同的連線方式 | 無法保證所有中國大陸或區域網路位址都已涵蓋在規則內 |
判斷原則:先選流量接管方式,再選連線規則
只需要讓瀏覽器使用代理時,先用系統代理;若要處理不讀取代理設定的應用程式,再試試 TUN。若希望這些應用程式經由節點對外連線,還必須檢查目前的路由策略,不能把「啟用 TUN」直接視為「全域代理」。
準備權限、節點與復原設定
先使用系統代理模式確認所選節點可正常連線,再啟用 TUN。VMess、VLESS 是節點使用的協定,訂閱網址用來提供及更新節點設定;它們本身不會建立虛擬網卡。若節點無法使用,切換流量接管方式通常只會增加排查變數。
v2rayN 是圖形介面的管理用戶端,實際流量處理由它呼叫的核心負責。不同版本的 TUN 實作方式與核心組合可能有所差異,常見實作會用到 sing-box;不要因為「節點使用 Xray」,就認定「TUN 必然由同一個核心獨立處理」。排查時請以啟動記錄中的程序、設定與錯誤訊息為準。
- 保留完整程式目錄:前往用戶端下載頁,選擇符合 Windows 架構的版本,並依發行說明安裝或解壓縮。請勿只複製主程式而漏掉執行所需的檔案。
- 記下原有設定:記錄目前使用的節點、路由預設、本機監聽連接埠及 DNS 設定;修改前先備份用戶端設定。
- 關閉其他流量接管工具:先關閉其他 VPN、虛擬網卡接管工具或透明代理,避免同時爭用預設路由。公司配發的裝置,請先確認網路管理規範。
- 準備系統管理員權限:首次建立虛擬網卡或修改路由通常需要提高權限。服務模式是否可用及授權方式,請參閱所用版本的說明。
依序啟用 v2rayN TUN 模式
以下以常見的中文桌面介面為例。v2rayN 不同發行版本的標籤位置可能不同;若看到「Tun 模式設定」、「TUN 設定」等名稱,請搭配版本說明確認。找不到特定標籤,不代表需要手動新增網卡。
-
確認節點可用
在主畫面選取現有節點並設為目前使用的伺服器,再透過系統代理瀏覽已知可用的 HTTPS 網站。如果這一步就無法連線,請先檢查節點位址、連接埠、驗證資訊及裝置時間。
-
提高執行權限
從系統匣完全結束 v2rayN,再按右鍵點選程式,選擇「以系統管理員身分執行」,並確認系統授權提示。不要只關閉視窗後重新啟動,以免舊程序仍在以一般權限執行。
-
檢查設定參數
開啟「設定」→「參數設定」,檢查本機監聽設定;若目前版本有相關頁籤,再進入「Tun 模式設定」。首次嘗試時先保留用戶端提供的預設值,不要同時更換協定堆疊、MTU 和 DNS 策略。
-
選擇路由
在主畫面底部的路由選擇區確認目前使用的預設設定。日常使用可先選擇現有的分流規則;需要比對連線出口時,再暫時使用全域代理預設,並記下原本選項以便還原。
-
啟用流量接管
開啟主畫面底部的「啟用 Tun」開關,查看記錄檔是否出現建立網卡、啟動介面或設定路由失敗等錯誤。若要單獨驗證 TUN,可將「系統代理」切換為「清除系統代理」,避免瀏覽器仍經由原本的入口連線而造成誤判。
-
檢查應用程式
先測試瀏覽器,再測試原本不使用系統代理的目標程式。確認記錄檔中的目標位址與實際連線方式;若網路中斷,先關閉「啟用 Tun」,再還原先前的系統代理設定。
「清除系統代理」只是為了減少驗證時的變數,不表示兩項功能永遠不能同時使用。設定穩定後,可依應用程式需求決定是否保留系統代理;但請勿讓核心本身的連線再次導回代理入口,否則可能形成連線迴圈。
透過連接埠、路由與記錄檔確認接管結果
以下三個數值是排查問題時常見的觀察項目,不是要照抄填入的設定。尤其本機代理連接埠,必須以「設定」→「參數設定」中的實際監聽值為準;若你的設定不是範例中的 10808,請改用實際數值。
在 PowerShell 中執行下方的唯讀命令,比較啟用 TUN 前後的介面與路由。TUN 可能透過更精確的路由接管流量,不一定會取代原本的預設路由,因此僅確認預設閘道是否變更並不足夠。即使連接埠正在監聽,也只能表示入口已啟動,不能單憑這點證明節點可用。
# 查看網路介面,比較啟用 TUN 前後的變化
Get-NetAdapter -IncludeHidden
# 查看 IPv4 與 IPv6 路由
route print -4
route print -6
# 僅在本機監聽連接埠確定為 10808 時使用
Get-NetTCPConnection -State Listen -LocalPort 10808
# 不讀取使用者的 curl 設定,也不透過明確指定的 HTTP/SOCKS 代理
curl.exe -q --noproxy "*" --connect-timeout 10 -I https://example.com
最後一條命令適合用來觀察未明確使用應用程式層代理的連線。先關閉 TUN 執行一次,再啟用後執行一次,同時查看用戶端記錄檔。收到 HTTP 回應表示連線有所進展,但不能只憑成功回應就斷定流量經過代理:該網站原本可能就能直連,還要核對記錄檔中的連線方式。
- 確認介面:找出新增或狀態有所變化的虛擬介面,不要依靠固定的網卡名稱判斷。
- 確認規則:檢查目標請求使用的是直連還是代理,必要時暫時切換路由進行比對。
- 確認連線出口:使用可信任的出口位址查詢服務,比對預期的節點出口;在分流模式下,不同目標可能使用不同出口。
- 確認涵蓋範圍:分別檢查 IPv4、IPv6 與目標應用程式。單一瀏覽器分頁連線成功,不代表所有位址類型和傳輸方式都已涵蓋。
處理 DNS、UDP 與區域網路連線問題
TUN 能接收封包,不代表網域名稱解析一定正常。傳統 DNS 常使用 UDP 或 TCP 的 53 連接埠,但瀏覽器也可能使用加密 DNS。若出現「網域無法開啟,但既有連線仍可繼續」的情況,請先檢查 DNS 解析流程,不要立刻更換所有節點。
在「設定」→「參數設定」中檢查目前版本提供的 DNS 相關頁籤,釐清直連解析、代理解析及 TUN 的 DNS 處理設定。網域解析策略必須配合分流規則;若所有 DNS 請求都交給目前無法連線的解析伺服器,直連與代理都可能逾時。
| 問題現象 | 優先檢查項目 | 處理方式 |
|---|---|---|
| 網域連線失敗 | DNS 伺服器是否可連線、解析路徑及記錄檔 | 執行 Resolve-DnsName example.com 並查看記錄檔;一次只修改一項 DNS 設定後再試 |
| 網頁正常,語音通話失敗 | UDP 支援、節點伺服器及防火牆規則 | 檢查目標程式的 UDP 連線記錄,確認所用節點及傳輸路徑支援轉送 |
| 印表機或檔案共享無法連線 | 區域網路位址是否被誤導向代理 | 確認路由已將實際的區域網路網段設為直連,並檢查本機防火牆 |
| 部分目標仍然直連 | IPv6 路由、應用程式介面繫結及規則排除項目 | 比對 IPv4 與 IPv6 路由表,並查看該目標實際套用的規則 |
排查啟動失敗並恢復網路
請依照「權限與介面 → 核心啟動 → 節點連線 → DNS 與分流」的順序排查。記錄檔中最早出現的明確錯誤,通常比後續一連串逾時訊息更有參考價值。分享記錄檔前,請遮蔽訂閱網址、節點驗證資訊及其他敏感內容。
啟用 TUN 時提示權限不足,該怎麼處理?
先從系統匣結束用戶端,再選擇「以系統管理員身分執行」重新啟動。若問題仍未解決,請檢查安全軟體或公司政策是否禁止建立虛擬介面或寫入路由;不要為了測試而關閉所有安全防護。
開關已開啟,記錄檔卻顯示核心啟動失敗?
檢查程式目錄是否完整,並查看核心啟動時出現的第一則錯誤。若提示位址或連接埠已被占用,可執行 Get-NetTCPConnection -State Listen 確認相關程序;不要直接結束不熟悉的系統程序。
啟用後所有網頁都逾時,應先檢查什麼?
先關閉 TUN,還原原本的系統代理,再使用同一個節點測試。若原本的連線方式也失敗,請先處理節點問題;只有 TUN 失敗時,再檢查路由衝突與 DNS。保留預設協定堆疊作為基準,每次只變更一項設定。
結束用戶端後還是無法上網,該怎麼辦?
若程式異常結束,可用相同權限重新啟動,先關閉 TUN,再選擇「清除系統代理」並正常結束程式。若網路仍未恢復,請重新啟動電腦,再檢查 Windows 代理設定與網路連線;不要直接執行清除所有路由的命令。
完成驗證後,還原適合日常使用的分流預設,並再次測試區域網路、瀏覽器和目標應用程式。若系統代理已能滿足需求,可以讓 TUN 保持關閉;需要時再啟用。保留一套已驗證的設定,比反覆調整 MTU、DNS、協定堆疊和路由更容易找出問題。