Clash Verge Rev TUN模式 | 全局接管 · strict-route · DNS分流

TUN 模式让 mihomo 在 L3 层接管流量,不依赖应用是否读取系统代理。Verge Rev 将 tun 段参数暴露为图形开关,但底层仍遵循 mihomo 语义。本文说明与「系统代理」模式共存时的路由冲突及 DNS 泄露面。系统代理三模式规范 → get-clash SC-03(本站不重复 Rule/Global 企业策略表)。

Clash Verge Rev TUN 网络拓扑

Clash Verge Rev 开启 TUN 后的配置注入

UI 开关对应运行时 config 中的 tun 段。典型生成结果如下(端口与 stack 因平台而异):

tun:
  enable: true
  stack: system          # Windows 常为 gvisor 或 system
  auto-route: true
  strict-route: true
  dns-hijack:
    - any:53

auto-route 与 strict-route 的分工

auto-route 向系统路由表写入默认网关指向 tun 接口。strict-route 进一步阻止「非 tun 接口发出的同目标流量」,缓解双栈环境下 IPv6 绕行。关闭 strict-route 时,部分游戏启动器仍可能走物理网卡直连,表现为规则模式失效。

TUN 与系统代理是否同时开启

技术上可并存,但不推荐:浏览器等会优先读系统代理 PAC,而 TUN 已接管 IP 包,双重路径增加排查难度。Verge Rev 在开启 TUN 时会提示是否关闭系统代理;建议采纳,仅保留 TUN + 规则模式。

模式覆盖范围权限需求典型场景
系统代理尊重代理设置的应用办公浏览器
TUN + Rule几乎全部进程高(驱动)游戏、CLI 工具
TUN + Global全部强制出站临时调试

DNS hijack 与 fake-ip 的配合

TUN 开启后,dns-hijack: any:53 将本机 53 端口查询导入 mihomo DNS 模块。若 Profile 使用 enhanced-mode: fake-ip,应用收到虚假 IP 后连接被 tun 截获;若误用 redir-host 且未劫持 53,会出现 DNS 泄露或解析循环。

验证命令

# 开启 TUN 后,应解析到 198.18.0.0/16 段(fake-ip 池)
nslookup google.com 127.0.0.1
预期:Address 为 198.18.x.x(fake-ip 池内)
异常:返回真实公网 IP → 检查 dns-hijack 与 enhanced-mode 是否为 fake-ip

分平台差异摘要

  • Windows:wintun 适配器名称固定;Hyper-V 默认交换机偶发路由竞争,需禁用或调 metric。
  • macOS:需系统扩展授权;utun 编号不固定,用 ifconfig 查看。
  • Linux:需 CAP_NET_ADMIN;NetworkManager 可能覆盖路由,建议 nmcli 查看冲突。

故障:开启 TUN 后全网中断

排查顺序:① DNS 模块是否可达;② MATCH 规则是否指向可用节点;③ strict-route 是否误杀局域网段(添加 192.168.0.0/16 直连)。紧急恢复:托盘关闭 TUN 或任务管理器结束 sidecar,物理网卡路由通常 10 秒内恢复。

本专题边界

TUN/strict-route/fake-ip 验证仅本站完整展开。Windows wintun 安装 → 本站 Windows;macOS 授权 → 本站 macOS

macOS 用户:系统扩展授权

阅读 macOS 专题