TUN 模式能做什麼:接管系統代理以外的流量

Windows 的系統代理主要提供 HTTP、HTTPS 等程式可使用的代理設定。瀏覽器通常會遵循系統代理,但部分遊戲、命令列工具、桌面應用程式或使用 UDP 的程式可能不會讀取它。Clash Verge Rev 的 TUN 模式會建立虛擬網路介面,將符合條件的系統流量導入 mihomo 核心,再由規則決定直連或使用代理。

TUN 不是「開啟後所有程式都必定走代理」的保證。連線仍須經過路由、DNS 與規則處理;若規則命中 DIRECT,該連線仍會直連。遊戲也可能使用多個網域、IP 位址及 UDP 連線,僅測試登入頁面或瀏覽器並不足以證明遊戲流量已按預期分流。

  • 系統代理:程式主動遵循 Windows 代理設定時使用,設定簡單,適合瀏覽器等常見應用程式。
  • TUN:以虛擬網卡與路由接管更多系統流量,適用於不遵循系統代理的程式,但需要處理權限、網路堆疊與 DNS 等問題。
  • 規則模式:決定流量進入核心後採用的出口策略;它本身不會接管系統流量。

啟用前檢查:核心、設定檔與現有網路

先在 Clash Verge Rev 確認目前使用的核心及其版本。TUN 是核心提供的網路功能,核心太舊、設定不受支援或用戶端無法啟動核心,都可能造成開關無法啟用。若設定檔由訂閱產生,請先備份,並確認沒有其他覆寫項目在載入時移除或改寫 TUN 設定。

  1. 確認核心:在用戶端的核心資訊或設定頁確認目前使用 mihomo,並記下版本。單看用戶端名稱或匯入設定檔成功,無法判斷目前核心是否支援所需欄位。
  2. 更新前先備份:保留目前設定檔與用戶端版本資訊。若升級後 TUN 問題才出現,可比較核心版本及設定差異,而不是一次改動多個網路選項。
  3. 關閉衝突的接管工具:若同時執行其他 VPN、虛擬網卡、流量攔截或安全軟體的網路過濾功能,先確認它們是否會修改路由或攔截 DNS。不要在不了解影響的情況下移除公司管理工具。
  4. 確認目前網路可用:記下 Wi-Fi 或乙太網路介面名稱,確認一般上網正常。若原本就有多張網卡、虛擬機或容器網路,後續要特別留意出口介面選擇。

Clash Verge Rev 的選單名稱會隨版本或介面語言略有差異。常見操作位置是設定頁或一般設定中的 TUN Mode 開關;若介面提供 Service Mode,則可能要先安裝或啟動服務。請以目前版本顯示的狀態與提示為準,不要把核心設定檔中的 tun.enable 和用戶端是否已取得 Windows 權限視為同一件事。

如果使用的是公司電腦或受管理裝置,服務安裝、驅動程式或路由修改可能受組織政策限制。此時應先確認管理政策,不建議透過更改系統安全設定來繞過限制。

在 Windows 開啟 TUN 模式

建議依序啟用服務與 TUN,每完成一步就確認狀態,避免同時變更多項設定而難以定位故障。操作前先暫停其他代理用戶端,並關閉正在進行的下載或線上遊戲,以免路由切換中斷連線。

  1. 開啟 Clash Verge Rev,選擇一份已能正常啟動核心的設定檔,並確認代理節點或策略群組可用。
  2. 進入設定頁,找到 Service Mode 或服務模式。若顯示未安裝,使用介面提供的安裝操作;Windows 出現使用者帳戶控制提示時,確認發行者與操作來源後再授權。
  3. 等待服務狀態顯示已啟動或已安裝,再回到 TUN 設定,開啟 TUN Mode。如果用戶端要求重新啟動核心,依提示執行。
  4. 查看核心日誌及用戶端狀態,確認沒有權限不足、虛擬網卡建立失敗或設定解析錯誤。之後先測試一般網站,再測試原本不遵循系統代理的應用程式。

mihomo 設定檔可能使用如下的 TUN 區段。它是用來說明常見欄位的設定片段,不是每一版用戶端都需要手動新增的完整設定;如果 Clash Verge Rev 已透過介面管理 TUN,應先確認介面與設定檔的實際生效關係,再決定是否需要修改 YAML。

tun:
  enable: true
  stack: mixed
  auto-route: true
  strict-route: true
  auto-detect-interface: true
  • enable:啟用核心的 TUN 功能。用戶端開關與核心設定需保持一致,否則可能出現介面顯示開啟、核心卻未建立 TUN 的狀況。
  • stack:指定網路堆疊。mixed 是常見選項之一;若遇到相容性問題,先記錄原值,再依核心版本文件測試其他受支援選項。
  • auto-route:讓核心管理接管流量所需的路由。關閉它不代表已完成其他必要的路由設定。
  • strict-route:控制路由接管的嚴格程度,可能影響區域網路或其他介面流量。若印表機、NAS 或公司內網因此無法連線,應針對路由與網段排查,不要立刻更改所有規則。
  • auto-detect-interface:協助核心選擇出站介面;多網卡或網路切換環境仍應檢查實際使用的介面。

確認虛擬網卡、連線與分流結果

開啟開關後,不要只以托盤圖示或 TUN 開關的顏色判斷成功。先確認 Windows 建立了虛擬介面,再產生一筆容易辨認的連線,最後檢查用戶端的連線清單是否看到該連線及其命中規則。

  1. 在 Windows「設定 → 網路和網際網路 → 進階網路設定」查看網路介面,或開啟裝置管理員的「網路介面卡」,確認啟用 TUN 後有虛擬介面出現。裝置名稱會受核心版本與驅動程式影響,不必假設名稱一定完全相同。
  2. 在 Clash Verge Rev 的連線頁面清除或記下現有項目,然後只開啟一個測試網站或應用程式。確認新連線出現,並查看目標、規則及出口策略。
  3. 測試原本不遵循系統代理的程式,例如特定遊戲或命令列程式。先從單一應用程式開始,避免多個程式同時連線造成判斷混亂。
  4. 測試區域網路資源,例如路由器管理頁或 NAS。若外網正常但區域網路失效,優先檢查 TUN 路由與區域網路規則,而不是直接停用所有防火牆設定。

PowerShell 可用來檢查介面是否存在;下列命令只讀取狀態,不會修改系統網路設定:

Get-NetAdapter | Format-Table Name, InterfaceDescription, Status
Get-NetRoute -AddressFamily IPv4 | Sort-Object RouteMetric
ipconfig /all

若連線清單完全沒有測試程式的項目,問題可能發生在流量尚未進入核心的階段,例如 TUN 未成功建立、路由未接管,或該程式使用了不同的網路介面。若項目已出現但出口不符預期,則應檢查命中的規則、模式及策略群組。連線進入核心與最後選擇代理出口,是兩個不同的檢查點。

需要判斷是否走代理時,應同時查看連線清單中的出站策略與測試結果。IP 查詢網站只能反映該次請求所使用的路徑;若網站被規則指定直連,顯示本地網路出口並不代表 TUN 整體失效。遊戲的登入、配對、語音與更新也可能連到不同伺服器,因此要在實際功能運作時觀察多筆連線。

TUN 啟動失敗與常見連線問題

排錯時先分辨故障在哪個階段:服務無法啟動、虛擬介面沒有建立、連線沒有進入核心,或連線已進入但出口策略不正確。一次只調整一個選項,重現問題後查看同一時段的用戶端及核心日誌,通常比重新安裝更容易找到原因。

  • 提示需要管理員權限或服務未啟動:回到 Service Mode 查看狀態,依用戶端提供的操作安裝或啟動服務。若權限提示被取消,服務或網卡建立可能不會完成;完成操作後重新查看狀態,不要只重複切換 TUN 開關。
  • 虛擬網卡沒有出現:確認核心已啟動、TUN 欄位沒有解析錯誤,並檢查 Windows 裝置管理員是否有停用或錯誤狀態的網路介面。若系統安全軟體攔截驅動或服務,依其日誌和管理政策處理,不要下載來路不明的驅動程式。
  • 啟用後整台電腦無法上網:先查看核心日誌是否有路由或 DNS 錯誤,並確認 Windows 仍有正常的實體網路介面。可暫時關閉 TUN 恢復原狀,再一次調整自動路由、出口介面或 DNS 設定。不要同時修改 DNS、路由、網卡度量值與防火牆規則。
  • 瀏覽器正常,遊戲仍連不上:確認遊戲連線是否出現在連線清單,並留意 UDP、啟動器與遊戲主程式可能各自建立連線。檢查規則是否把相關網域或 IP 導向預期策略,也確認所用節點與網路允許相關流量。
  • 區域網路或印表機失效:檢查 TUN 路由模式、區域網路網段與相關規則。若症狀只在啟用嚴格路由後出現,可在記錄原設定後測試調整該選項;每次測試後重新確認外網和區域網路,而不要把整個網段永久繞過代理作為未經驗證的修正。
  • 更新核心或訂閱後才故障:比較更新前後的核心版本、TUN 欄位及覆寫設定。若核心回報未知欄位或欄位型別錯誤,按該版本支援的格式修正;不要將其他核心或舊版教程中的完整 TUN 設定直接覆蓋進來。

如果切換網路後才無法連線,可先關閉 TUN、確認新網路本身可上網,再重新啟用並檢查自動偵測的出口介面。若仍失敗,記錄發生時間、Windows 介面狀態、核心版本、錯誤訊息及最近修改項目。分享日誌前,請移除訂閱網址權杖、節點密碼、個人網域及其他敏感資訊;保留錯誤類型和必要的網路狀態,才有助於定位問題。

除非有明確證據,不建議先執行會重設網路堆疊或移除網路介面的命令。這些操作可能影響 VPN、虛擬機、公司網路與其他應用程式,且無法修正設定檔錯誤或核心不相容。確認服務、網卡、路由與規則後,仍無法定位時,再依用戶端提供的診斷方式處理。