TUN 模式让所有应用的流量都进入代理内核,不再依赖应用是否遵守系统代理设置。原理讲解在系统代理与 TUN 的区别一文,这里只讲怎么开、参数怎么调。

前置条件:服务模式

创建虚拟网卡需要系统级权限。Clash Verge 通过一个后台服务(服务模式)来长期持有这个权限,避免每次启动都弹 UAC 窗口。

打开「设置」,找到「服务模式」,点击安装。Windows 会弹出 UAC 确认,macOS/Linux 需要输入密码。装好后状态显示为「已激活」。

服务模式安装失败的常见原因:被杀毒软件拦截(临时放行即可)、旧版服务残留(先卸载服务再重装)。反复失败时参考故障排查

开启 TUN 开关

Clash Verge 设置页中 TUN 模式相关开关与流量路径示意
服务模式激活后,TUN 开关一点即生效

回到设置页,打开「TUN 模式」开关。此时系统里会多出一块名为 Mihomoutun 的网络适配器,所有流量开始经由它进入内核。浏览器随便开个网页验证一下连通性即可。

开启 TUN 后,「系统代理」开关可开可不开——TUN 的覆盖范围是系统代理的超集。保留系统代理开关的意义在于部分应用能更快感知代理存在。

值得了解的三个参数

设置页 TUN 区域有几个选项,默认值适合大多数人,但了解含义有助于排障:

  • Stack(协议栈):默认 Mixed。遇到个别应用连接异常时,可切换成 gVisorSystem 对比测试。
  • DNS 劫持:默认 any:53,把所有明文 DNS 查询劫持进内核处理,是防止 DNS 泄漏的关键,建议保持开启。细节见 DNS 与泄漏防护
  • 严格路由(Strict Route):防止流量绕过 TUN 网卡。开启后覆盖更彻底,但个别局域网服务(打印机、投屏)可能受影响——遇到再关。

平台差异速记

  • Windows:必须先装服务模式;个别 VPN 类软件的虚拟网卡会与 TUN 抢路由,冲突时先禁用另一方。
  • macOS:首次开启需要在系统弹窗中允许添加网络配置;如果开启后断网,检查「系统设置」→「网络」里 utun 接口的服务顺序。
  • Linux:服务模式基于 systemd;非 systemd 发行版需手动给内核授权 setcap cap_net_admin+ep

验证 TUN 是否真正生效

  1. 打开「连接」页面,看列表里是否出现了浏览器之外的进程名(游戏、终端工具等);
  2. 命令行执行 curl ip.sb(不设任何环境变量),返回的应是代理出口 IP;
  3. DNS 泄漏测试确认解析也走了隧道。

游戏场景下的 TUN 调优(UDP、延迟抖动)单独写在游戏加速优化一文。