v2rayN TUN 模式設定教學:虛擬網卡接管全流量原理與步驟

了解系統代理與虛擬網卡的差異、TUN 如何接管未使用系統代理的程式流量,以及 v2rayN 的啟用方式、權限需求與 DNS 設定重點。

本文重點

瀏覽器連得上、桌面程式卻無法連線時,先確認應用程式是否遵循系統代理,再考慮使用 TUN。本文以 Windows 版 v2rayN 為例,說明權限準備、虛擬網卡接管,以及路由與 DNS 的關係,並整理啟用後的驗證與復原步驟。macOS 的授權與網路擴充機制不同,請使用該平台版本支援的操作方式,不要照搬 Windows 的系統管理員設定。

系統代理與 TUN:接管位置不同

系統代理主要是提供本機代理入口。會讀取系統代理設定的瀏覽器與桌面程式,會將連線交給這個入口;自行建立連線或使用獨立網路設定的程式,則可能繼續直接連上網路。因此,「已設定系統代理」不代表「這台電腦上的所有程式都經過代理」。

TUN 會在作業系統中建立第三層虛擬網路介面,並透過路由將符合條件的 IP 封包送進處理引擎。應用程式不必支援 HTTP 或 SOCKS 代理,流量也可能因此被接管。此處的「全域」指接管範圍,不代表每個連線都必須送往遠端節點;最後採用直連、代理或封鎖,仍由路由規則決定。

應用程式發起連線 系統路由選擇路徑 TUN 接收封包 比對規則並分流 直連或使用代理

v2rayN 是管理介面,協定連線與 TUN 資料處理則依賴實際啟動的核心及其設定。不同版本可能採用不同的配套處理方式,不能只根據介面上的節點類型判斷 TUN 後端。VLESS、VMess 是代理協定,TUN 是流量入口,兩者並非互相取代的選項;啟用 TUN 也不需要將訂閱中的所有節點改成其他協定。

啟用前準備:確認節點、連接埠與權限

先在未啟用 TUN 的情況下確認節點可正常運作。如果一般代理連線已經失敗,啟用 TUN 只會擴大故障範圍,無法修復失效的訂閱、錯誤的伺服器位址或不相符的安全層參數。建議先截圖備份目前的路由與 DNS 設定,並記下本機監聽位址,方便復原後繼續測試。

10808
本機代理測試連接埠範例,請以實際監聽值為準
53
傳統 DNS 常用服務連接埠
443
HTTPS 常用服務連接埠

本機連接埠沒有必須照抄的固定值。上方的 10808 僅為測試範例;若目前設定使用其他值,命令、應用程式內的代理設定與日誌檢查都應改用實際連接埠。一般而言,本機 TUN 接管不需要開放路由器的入站連接埠。

v2rayN 啟用 TUN:依序逐項設定

不同版本的開關文字可能是「啟用 TUN」或「TUN 模式」,設定頁的分類也可能有所調整。以下依功能入口說明,請優先尋找主視窗的 TUN 開關與「設定」中的 TUN 選項,不要將特定版本的按鈕位置視為固定標準。

  1. 保留一般代理作為基準。關閉 TUN,使用目前的活動節點實際連線測試;若連線失敗,先處理節點與訂閱問題再繼續。
  2. 以所需權限重新啟動。Windows 請以系統管理員身分執行,並確認背景沒有其他舊版執行個體占用本機連接埠。只提升單一執行個體的權限,不要同時啟動兩份程式。
  3. 確認 TUN 設定。開啟「設定」,進入目前版本提供的 TUN 設定頁。首次使用時,建議保留預設的網路堆疊、MTU 與介面參數,並確認自動路由相關選項符合接管需求;不要一次調整多個進階項目。
  4. 選定路由策略。選擇符合需求的規則模式,並保留必要的區域網路直連規則。若需要存取印表機、網路儲存裝置或公司內網,尤其要確認對應的網段與網域名稱。
  5. 啟用主視窗中的 TUN 開關。查看核心日誌,確認沒有權限不足、設定解析失敗或連接埠占用等錯誤,再檢查系統是否出現對應的虛擬介面與路由。
  6. 單獨驗證 TUN。確認 TUN 已啟動後,將 v2rayN 的系統代理切換為清除或關閉,再測試原本不遵循系統代理的程式,避免把一般代理連線成功誤認為 TUN 正常運作。

啟用後若網路立即中斷,請先關閉 TUN,不要連續切換節點、網路堆疊與 DNS 模式。恢復到原本設定後,查看第一筆錯誤,再決定下一步要修改什麼。虛擬網卡存在,只代表介面曾成功建立,不代表處理引擎仍在運作。

DNS 與路由:同時檢查接管與解析路徑

應用程式存取網域名稱時,通常會先透過 DNS 查詢,再連線到目標 IP。TUN 接管連線,不代表所有網域名稱查詢也會自動走相同路徑。傳統 DNS 常用 UDP 或 TCP 的 53 連接埠;應用程式內建的加密 DNS 則可能透過 HTTPS 傳送。只處理 53 連接埠的請求,不能據此認定瀏覽器的 DNS 查詢路徑也已改變。

DNS 檢查項目

系統解析
檢查目前網卡的 DNS 來源與用戶端接管設定
上游伺服器可連線
確認 DNS 伺服器是否依賴尚未建立的代理連線
應用程式解析
另行檢查瀏覽器的安全 DNS,不要假設它會沿用系統設定
快取影響
修改後重新建立連線測試,必要時清除系統快取

不要同時修改系統 DNS、瀏覽器解析設定與用戶端 DNS;每次只改一項,再驗證結果。

路由檢查項目

區域網路
依實際網段保留直連,例如 192.168.1.0/24
遠端連線
避免節點伺服器的對外連線再次進入接管迴圈
IPv6
確認接管與分流涵蓋範圍,不要只測試 IPv4
規則優先順序
確認前置規則是否已先比對到目標連線

網段範例不是通用設定;若內網使用其他位址,請以實際路由與網路規劃為準。

涉及遠端節點的網域名稱時,也要避免 DNS 解析迴圈:如果 DNS 伺服器只能透過代理存取,而建立代理又必須先解析節點網域名稱,連線可能會在啟動階段卡住。通常應採用用戶端提供的合理預設方案,確保啟動所需的網域可以先完成解析,而非任意將所有 DNS 請求強制送往同一個對外連線。

有些設定會使用 FakeDNS 或 fake-ip 之類的機制,暫時將網域名稱對應到合成位址,再由處理引擎還原目標。這類位址不一定能直接透過其他工具存取;切換模式後,舊的 DNS 快取也可能造成短暫異常。尚未確認目前核心支援情況與設定關係前,不建議只因教學提到這個選項就啟用。

啟用後如何驗證:不能只看開關狀態

驗證時要分別確認三件事:一般代理是否可用、TUN 是否接收到目標程式的連線,以及該連線是否符合預期的對外規則。先在關閉系統代理的情況下測試目標程式,再搭配日誌判斷。若規則指定直連,即使對外 IP 沒有變更,也可能完全正常。

驗證項目測試方式判讀重點
一般代理基準關閉 TUN,使用明確設定的本機代理存取相同目標先排除節點、監聽連接埠與遠端連線問題
確認 TUN 獨立接管啟用 TUN、關閉系統代理,再存取相同目標搭配日誌確認是否出現該目標連線,以及是否使用預期的對外連線
區域網路存取存取已知可用的路由器管理位址或內網服務確認內網直連規則沒有被範圍過大的規則覆蓋
DNS 與雙堆疊檢查網域名稱解析結果,分別觀察 IPv4 與 IPv6 連線不要只驗證其中一種 IP 位址類型,就認定全部設定都生效
UDP 應用程式測試確實使用 UDP 的目標功能TCP 網頁連線成功,不代表 UDP 對外連線也能正常使用

Windows 可使用以下命令查看路由與解析結果。代理測試命令要求本機 10808 連接埠確實提供 SOCKS 服務;若連接埠或協定不同,請依目前監聽設定調整。範例目標僅用來說明命令寫法,單次連線結果不能視為完整的網路診斷。

route print
ipconfig /all
nslookup example.com

curl.exe --proxy socks5h://127.0.0.1:10808 https://example.com/
curl.exe --noproxy "*" https://example.com/

第二個 curl 請求只會略過應用程式層的代理設定,不會略過系統路由,因此仍可能經過 TUN。若要檢查實體網路的直連基準,請先關閉 TUN 再執行。分享日誌時,請隱藏訂閱網址、帳戶識別資訊與節點憑證;診斷通常只需要錯誤類型、目標連線與規則比對情況,不需要完整設定。

常見問題與復原方式

開關一啟用就自動關閉,該先檢查什麼?

先查看啟動日誌中的第一筆錯誤。Windows 請先結束舊的執行個體,再以系統管理員身分執行;若問題仍在,進一步確認是權限遭拒、虛擬介面建立失敗,還是設定解析錯誤。不要長期關閉系統防護來取代問題排查。

瀏覽器能連線,遊戲或語音仍然無法使用?

先確認目標連線是否進入 TUN 並符合預期規則,再檢查節點與伺服器是否支援對應的 UDP 轉送。網頁主要用來驗證 TCP,無法證明語音或遊戲使用的 UDP 路徑正常;遊戲啟動器與實際執行的程式也可能連線到不同目標。

啟用後找不到印表機或內網服務?

先關閉 TUN,確認服務原本可以連線,再檢查本機實際網段、內網 DNS 與直連規則。服務探索可能仰賴廣播或多點傳送,不能只新增一條公網代理規則來解決;必要時,請依用戶端支援的方式排除相關介面或網段。

關閉 TUN 後仍無法連上網路,該怎麼辦?

先清除指向已停止本機連接埠的系統代理,再正常結束用戶端。確認系統 DNS 與路由已還原;Windows 修改 DNS 後,可執行 ipconfig /flushdns 清除快取。若問題仍未解決,再考慮重新連線網路或重新啟動系統,不要直接刪除所有虛擬網卡。

穩定使用時,保留一份已驗證的設定紀錄,比頻繁更換網路堆疊更有幫助。記下活動節點、路由模式、DNS 方案、系統代理狀態,以及是否有其他隧道軟體;發生問題時,依照紀錄逐項還原,通常比一次重設所有參數更容易找出原因。

下載v2rayN依平台選擇用戶端