Skip to content

TUN 模式失败怎么办?虚拟网卡、权限与 DNS 劫持逐步排查 ​

TUN 模式失败怎么办?先知道 TUN 会在系统里创建一张虚拟网卡,把全部流量接管过来,所以它比系统代理更需要权限,也更容易和其他网络软件打架。TUN 失败分两种:开不了(权限、驱动、冲突)和开了没网(DNS、路由、模式设置)。

速读要点

  • 先分清「开不了」还是「开了没网」,路径完全不同
  • 开了没网最常见是 DNS 劫持没开,填 any:53 加 Fake-IP
  • Windows 必须以管理员运行,macOS 要允许系统扩展

现象 ​

  • 开启 TUN 时提示权限不足、创建虚拟网卡失败、wintun 相关错误。
  • TUN 开关能打开,但所有网站都打不开,关掉就恢复。
  • TUN 开了之后国内网站打不开,国外能开,或者反过来。

先排除这 3 件事 ​

  1. 权限:Windows 必须以管理员身份运行;macOS 第一次开 TUN 会要求安装系统扩展或输入密码,要在「系统设置 → 隐私与安全性」允许;Android 要允许 VPN 连接请求。
  2. 其他 VPN 或虚拟网卡软件:公司 VPN、游戏加速器、虚拟机网络、Tailscale 等会和 TUN 争抢路由。先全部退出。
  3. 系统代理是否同时开着:TUN 和系统代理可以同时开,但排查时先只开 TUN,少一个变量。

可能原因(按概率排序) ​

  1. 权限不足,客户端无法创建虚拟网卡。
  2. 虚拟网卡驱动没装好或损坏(Windows 的 Wintun、旧版用的 TAP)。
  3. 与其他 VPN、加速器的路由冲突。
  4. DNS 劫持没开,TUN 开了后系统 DNS 请求出不去,所有域名解析失败。
  5. TUN 的栈模式不兼容(system、gvisor、mixed 在不同系统上表现不同)。
  6. 杀毒软件或 Windows 防火墙拦截了虚拟网卡流量。

TUN 模式失败怎么办:虚拟网卡、权限与 DNS 劫持逐步排查 ​

  1. 完全退出客户端,Windows 右键「以管理员身份运行」,macOS 在隐私与安全性里允许扩展后重启客户端,再开 TUN。
  2. 开不了且日志里有 wintun 或驱动相关错误:重新安装客户端。多数客户端会自动释放驱动文件;仍失败的在客户端设置里找「重装服务」「安装驱动」类选项。
  3. 退出所有其他 VPN 和加速器,重启电脑后再开 TUN。路由冲突经常要重启才能清理干净。
  4. TUN 开了没网:到客户端的 DNS 设置里开启「DNS 劫持」(通常填 any:53),并把 DNS 模式设为 Fake-IP。详细说明见 DNS / TLS 排查。
  5. 在 TUN 设置里切换栈模式。Windows 上 gvisor 兼容性一般最好,macOS 和 Linux 上 system 更稳;不同版本的选项名略有差异。
  6. 把客户端和虚拟网卡加入防火墙白名单。Windows 防火墙若把新网卡识别为「公用网络」并拦截,到网络设置里把它改为专用网络。

仍未解决 ​

提交工单时附上:客户端与版本、系统版本、节点名称、报错截图。写清是「TUN 开不了」还是「开了没网」,以及日志里的报错原文。

TUN 排查不通的,可以先用系统代理模式保证能上网,再慢慢解决。两种模式的区别和适用场景见TUN 与代理模式。

常见问题 ​

TUN 开了之后没网一定是 DNS 的问题吗 ​

最常见是 DNS 劫持没开,系统 DNS 请求出不去,所有域名都解析失败。此外栈模式不兼容、防火墙拦截虚拟网卡也会导致没网,按本文第 4、5、6 步依次排。

TUN 模式需要管理员权限吗 ​

需要。创建虚拟网卡和改路由表都是系统级操作:Windows 要以管理员身份运行,macOS 要允许系统扩展,Android 要授权 VPN 连接请求。

gvisor 和 system 栈怎么选 ​

Windows 上 gvisor 兼容性一般最好,macOS 和 Linux 上 system 更稳。一个不通就换另一个试,mixed 介于两者之间。不同版本的选项名称略有差异。

TUN 和公司 VPN 能同时用吗 ​

通常会冲突,两者都要接管路由表。需要同时用时,先只开公司 VPN,客户端改用系统代理模式;或者在客户端里把公司内网网段设为直连,具体取决于 VPN 类型。

下一步 ​

相关阅读 ​

本站内容仅供参考,部分链接含推广说明,详见各优惠页。关于本站