Clash Verge Rev 的 TUN 模式怎么开启?Windows 配置步骤

本文专门讲解 Windows 版 Clash Verge Rev 如何开启 TUN 模式,从权限检查、开关位置到虚拟网卡与代理规则设置逐步说明,并提供连通性验证和常见故障排查方法。

TUN 模式是什么,什么时候值得开启

Clash Verge Rev 的 TUN 模式会在 Windows 中创建一张虚拟网卡,把系统网络请求先交给 mihomo 内核处理,再根据配置中的规则决定直连、代理或拒绝。它和「系统代理」不是同一个开关:系统代理主要修改 Windows 的 HTTP、HTTPS 代理设置,只有遵守系统代理的应用才会使用;TUN 则在网络层接管流量,因此命令行工具、部分游戏、更新器、Electron 应用以及不读取系统代理的程序也有机会进入 Clash。

开启 TUN 并不等于所有流量都会自动走代理。最终出口仍由当前模式和规则决定。处于 Rule 模式时,国内地址通常可以 DIRECT,其他目标交给代理策略组;Global 模式则通常把所有可匹配流量交给当前节点;Direct 模式会让大多数请求绕过代理。第一次配置建议使用 Rule 模式,这样更容易判断是 TUN 没有接管,还是规则把目标分到了 DIRECT。

先分清三个概念

系统代理负责告诉应用「代理地址在哪里」,TUN 负责把更多网络流量导入内核,规则模式负责决定「导入后从哪里出去」。三个部分任何一个没有生效,都可能出现浏览器正常、游戏不通,或者 TUN 显示已开启但目标仍然直连的情况。

开启前的权限与环境检查

Windows 版 Clash Verge Rev 的 TUN 通常需要服务模式或特权服务支持。不同版本的界面文案可能显示为「服务模式」「Service Mode」「安装服务」或「增强服务」,位置也可能在设置页、系统页或 TUN 开关旁边。不要只看到 TUN 复选框就直接点击,先完成下面的准备。

  1. 确认使用的是仍然支持 mihomo 内核和 TUN 的 Clash Verge Rev 版本,在「关于」或内核信息页面查看内核名称。若页面显示的是旧版原始 Clash 内核,对应配置字段和功能可能不完整。
  2. 关闭其他 VPN、代理客户端、网络加速器和抓包工具。多个程序同时创建虚拟网卡、修改路由或监听 DNS 端口,容易造成循环路由、断网和端口冲突。
  3. 确认当前账户有管理员权限。安装服务、创建虚拟网卡、修改路由表和写入防火墙规则都可能触发 UAC 提示,弹窗出现时应选择允许。
  4. 暂时退出会拦截虚拟网卡或驱动安装的安全软件。若公司电脑由组策略限制驱动、服务或网络适配器,需要联系管理员,不要反复删除系统组件。
  5. 先导入一份能够正常使用的订阅配置,选中它并确认节点列表已经出现。空配置或订阅本身失效时,开启 TUN 只会把排查范围扩大。

如果服务模式安装失败,先完全退出 Clash Verge Rev,右键程序选择「以管理员身份运行」后再进入设置。Windows 的服务列表中通常会出现与客户端相关的服务项;服务安装成功不代表代理已经启用,还要回到客户端开启 TUN 并观察虚拟网卡状态。

Clash Verge Rev 开启 TUN 的具体步骤

以下步骤以 Windows 版 Clash Verge Rev 的常见布局为准,不同版本的中文翻译可能略有差异,但核心开关相同:先启用服务模式,再启用 TUN,最后检查系统代理与运行模式。

  1. 打开 Clash Verge Rev,进入左侧的「设置」或「Settings」页面,找到与内核、系统或服务相关的区域。
  2. 点击「服务模式」旁边的安装、管理或启用按钮。Windows 弹出用户账户控制提示时选择「是」,等待按钮状态变为已安装或运行中。
  3. 返回设置页面,找到「TUN 模式」或「增强模式」开关并打开。首次启用可能再次要求管理员授权,确认后等待数秒。
  4. 检查 TUN 的实现方式。mihomo 常见配置使用 stack: mixed,它在兼容性和性能之间较平衡;遇到个别程序异常时,可对照测试 systemgvisor,不要一次修改多个参数。
  5. 打开「自动路由」或确认配置中的 auto-route: true,并打开「自动检测出口网卡」或确认 auto-detect-interface: true。多网卡电脑尤其需要这两项。
  6. 把运行模式设为 Rule,选择一个可用的代理策略组,然后按需开启系统代理。TUN 负责整机接管,系统代理则能让部分应用更明确地识别代理端口,两者可以同时使用。

在 mihomo 配置中,对应的 TUN 结构通常类似下面这样。客户端图形界面可能会自动生成这些字段,不建议直接覆盖订阅文件;如果配置允许外部覆写,再把片段合并到合适的配置位置。

tun:
  enable: true
  stack: mixed
  auto-route: true
  auto-detect-interface: true
  dns-hijack:
    - any:53

enable 是 TUN 总开关,stack 决定数据栈实现,auto-route 负责自动加入接管流量所需的路由,auto-detect-interface 用于选择实际联网的物理接口。dns-hijack 会把发往 53 端口的 DNS 查询导入 Clash 的 DNS 模块,但它能否正常工作还取决于 DNS 模块是否开启以及 Windows 上是否有其他程序占用端口。

TUN 开启后的 DNS 与规则设置

整机接管后,最容易被忽略的是 DNS。TUN 可以接管 DNS 请求,但如果配置没有启用 Clash DNS,或者 DNS 查询被规则明确放行,就可能出现网页偶尔打不开、检测结果显示本地运营商 DNS、节点正常但域名解析失败等现象。mihomo 常见的基础配置如下,其中示例地址使用文档保留地址,实际使用时应替换为可信且适合当前网络的解析服务。

dns:
  enable: true
  ipv6: false
  enhanced-mode: fake-ip
  fake-ip-range: 198.18.0.1/16
  listen: 0.0.0.0:1053
  dns-hijack:
    - any:53
  nameserver:
    - 192.0.2.53

有些客户端会把 DNS 监听在本地端口,再通过 TUN 劫持 53 端口请求,因此不要机械地要求 listen 一定使用 53。若 Windows 上已有本地 DNS 软件、开发环境或安全工具占用 53 端口,使用独立监听端口更稳妥,关键是让 dns-hijack 指向实际生效的 DNS 模块。

  • fake-ip 模式:对域名返回 198.18.0.0/16 范围内的虚拟地址,内核再根据原始域名匹配规则。它适合需要稳定域名分流的场景,但局域网域名、部分网游和特殊 UDP 程序可能需要加入 fake-ip-filter
  • redir-host 模式:返回真实 IP,兼容一些依赖真实地址的程序,但解析链路更容易受到本地网络影响。遇到局域网设备无法访问时,可以临时切换此模式做对照。
  • IPv6 设置:如果当前配置没有完整接管 IPv6,可先将 ipv6 设为 false,避免 AAAA 记录和 IPv6 连接绕过 IPv4 代理规则。确认 IPv6 TUN 与规则都配置妥当后再开启。

规则方面,建议把局域网和本机地址放在前面,再处理国内域名或 IP,最后使用代理策略组兜底。示例结构如下:

rules:
  - IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
  - IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
  - IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
  - GEOSITE,cn,DIRECT
  - GEOIP,CN,DIRECT
  - MATCH,PROXY

这里的 PROXY 只是示例策略组名称,必须替换为配置中真实存在的策略组。MATCH 要放在最后,否则后面的规则永远不会被执行。若订阅已经自带完整 rules,不要盲目叠加第二套规则,先查看实际命中的规则名称和策略组。

如何验证 TUN 确实接管了流量

状态栏显示「TUN 已开启」只能证明客户端开关处于打开状态,还不能证明所有目标流量都已经进入内核。应当从虚拟网卡、路由、日志和实际应用四个层面交叉确认。

  1. 打开 Windows 的「设置 › 网络和 Internet › 高级网络设置」,查看网络适配器列表,确认存在由 Clash 或 mihomo 创建的虚拟适配器,并且没有显示禁用或错误状态。
  2. 在 Clash Verge Rev 的连接、日志或请求页面访问一个目标,观察是否出现连接记录、命中的规则类型和最终策略组。记录里显示 DIRECT 不一定是故障,要结合目标和规则判断。
  3. 在 PowerShell 执行 ipconfigroute print,检查虚拟网卡存在且路由表没有明显重复默认路由。不要在不理解作用的情况下手动删除系统路由,否则可能导致整机断网。
  4. 关闭浏览器的单独代理扩展,再用一个通常不读取系统代理的命令行程序或测试应用访问目标。若该请求能在 Clash 日志中出现,说明 TUN 的接管范围已经超出普通系统代理。
  5. 切换当前策略组的节点,重新访问同一目标并观察出口地址是否变化。出口不变时,先确认该目标是否命中了 DIRECT 或缓存,不要马上判断 TUN 失效。
现象优先检查项目常见结论
浏览器能代理,命令行仍直连TUN 开关、服务模式、route print只有系统代理生效,TUN 未接管
所有网站都打不开节点、策略组、DNS、虚拟网卡可能是路由循环或 DNS 配置错误
国内站点变慢命中的规则与策略组国内规则未命中,被 MATCH 送入代理
局域网设备无法访问内网 DIRECT 规则、fake-ip-filter局域网流量被代理或返回了虚拟地址

常见故障与处理顺序

TUN 开关自动关闭。先重新安装服务模式并以管理员身份启动客户端,再检查 Windows 服务是否正在运行。若每次重启后都失效,确认客户端没有被放在权限受限目录,并检查安全软件是否隔离了相关服务或虚拟网卡组件。

开启后整机断网。立即关闭 TUN,保留订阅和日志,先确认节点能在普通系统代理模式下使用。随后逐项检查 auto-route、出口网卡、DNS 监听端口和其他 VPN 软件。某些网络环境对 system 栈兼容性较差,可以改用 mixed 做对照,每次只改一个参数。

只有部分软件不通。查看连接日志判断请求是否进入 Clash。完全没有记录时,可能是程序使用了独立网卡、硬编码 DNS、特殊内核驱动或被防火墙拦截;有记录但失败时,检查目标端口、UDP 支持、规则命中结果和策略组节点。游戏、局域网工具和实时通信软件不一定适合强制代理。

DNS 报端口占用或解析超时。关闭其他本地 DNS 服务,或者把 Clash DNS 监听改到未占用的端口,同时保证 TUN 的 DNS 劫持设置与实际监听方式一致。修改后重载配置并清理本地 DNS 缓存,PowerShell 可执行 ipconfig /flushdns。如果使用 fake-ip,不要把 198.18.0.0/16 加进会被 DIRECT 的普通 IP 规则。

代理页面正常但出口地址没有变化。检查当前模式是否为 Direct,目标是否命中 DIRECT,以及浏览器是否启用了自己的代理扩展或安全 DNS。测试时关闭扩展,新开无痕窗口,再从 Clash 日志确认请求的实际策略。排查完成后恢复符合日常需求的规则模式,不必长期使用 Global。

修改配置前先保留原文件

订阅配置可能会在更新时覆盖本地改动。调整 TUN、DNS 或 rules 前,先导出或复制当前配置,并记录原来的模式、端口与策略组名称。遇到问题时优先恢复到能联网的版本,再逐项测试,不要连续粘贴多段来源不明的配置。

日常使用时的稳定配置建议

Windows 上长期使用 TUN,建议让客户端开机自启但不要同时启动多个代理工具;保持一个明确的默认策略组,避免订阅更新后组名变化导致规则找不到出口;定期查看连接日志,确认常用网站没有意外走错线路。系统代理是否开启可按应用兼容性决定,但 TUN 和系统代理同时打开时,要注意不要把地址指向另一个客户端的端口。

如果只需要浏览器代理,系统代理模式通常更简单、故障面更小;如果需要覆盖命令行、更新器或不遵循系统代理的桌面应用,再开启 TUN。TUN 更像整机网络入口,权限、路由、DNS、IPv6 和防火墙都会参与结果,因此遇到问题时应按「服务权限 → 虚拟网卡 → 路由 → DNS → 规则 → 节点」的顺序排查,通常比反复更换节点更快找到原因。

准备好后再开始配置

如果当前客户端版本过旧或还没有安装 Clash Verge Rev,可以先从下载中心获取适合 Windows 的客户端,再按照本文完成服务模式、TUN 与规则检查。

下载 Clash 客户端

规则分流需要客户端先接管流量。到下载中心按平台选择客户端,再回到教程完成系统代理或 TUN 接管。

下载Clash