Clash Verge Rev 怎么开启 TUN 模式?三平台步骤与生效验证
简答:Clash Verge Rev 开启 TUN 模式的最快路径是:确认配置和 mihomo 内核正常,进入“设置→系统设置”启用“虚拟网卡模式(Tun Mode)”,必要时先安装或切换到服务模式。开关亮起不等于流量已经接管;测试时还要在“连接(Connections)”页面看到对应域名或进程,并在连接详情的入站类型中确认显示为 TUN 或 Tun。
定义:TUN 模式是通过虚拟网卡接收系统流量并交给代理内核处理的方式,和只修改系统代理设置不是一回事。
先照做:Clash Verge Rev 开启 TUN 的最短路径
如果你的浏览器能用,但 Git、终端、游戏或其他软件不走代理,先不要急着改 DNS 或复制复杂配置。按下面顺序检查:配置能正常启动,mihomo 内核没有报错,节点或代理组可用,其他 VPN 与虚拟网卡工具已经退出。
| 顺序 | 操作 | 完成标准 |
|---|---|---|
| 1 | 打开 Clash Verge Rev,进入配置页面,确认配置已加载,代理组和节点能够显示。 | 没有配置解析错误,内核处于运行状态。 |
| 2 | 进入“设置(Settings)→系统设置(System Setting)”,查看“服务模式(Service Mode)”或“安装服务(Install Service)”。 | Windows、macOS 或 Linux 已取得当前版本所需的服务权限;Windows 也可以使用管理员模式。 |
| 3 | 打开“虚拟网卡模式(Tun Mode)”。不同版本可能只显示“Tun Mode”或“虚拟网卡模式”。 | 开关保持开启,没有出现服务不可用或自动关闭提示。 |
| 4 | 打开“连接(Connections)”页面,再访问网页或运行一次命令。 | 连接列表出现对应域名或进程;打开该条连接的详情或信息面板,确认入站类型显示为 TUN 或 Tun。 |
Clash Verge Rev 的正式发布版本会随时间变化。本文核对日期为 2026 年 10 月 20 日,发布页显示可核对到的版本为 v2.5.8;实际菜单仍应以你当前安装版本为准,可通过Clash Verge Rev GitHub Releases确认正式版本。项目的设置字段同时包含“Tun Mode”“System Proxy”“Install Service”和“Switch to service mode”等名称;开发分支界面可能先于正式版变化,因此不要把开发分支字段当成所有版本的固定菜单。相关字段可在Clash Verge Rev 设置字段中核对。
TUN、系统代理、规则模式和全局模式的区别
TUN 模式通过虚拟网卡接收系统流量,适合不读取系统代理的命令行工具、部分游戏、UWP 应用和其他独立网络程序。mihomo 文档将顶层 TUN 配置用于系统流量接管、自动路由、DNS 劫持和按应用路由,但最终是否代理仍由规则、代理组和当前模式决定。可参考mihomo TUN 配置文档。
系统代理是修改操作系统的 HTTP、HTTPS 或 SOCKS 代理设置。支持系统代理的应用通常可以使用客户端,不支持系统代理的应用可能完全不经过客户端。Clash Verge Rev 的界面字段说明,Tun Mode 是虚拟网卡模式,启用后无需再启用 System Proxy;这是项目界面文案,和本文建议分开理解。
规则模式和全局模式解决的是流量进入客户端之后如何选择出口。TUN 只解决“流量能不能进入客户端”,不等于所有域名都会走代理。如果连接记录已经显示入站类型为 TUN,但目标仍然直连,应继续检查规则、代理组和当前模式。
- 浏览器能用,不代表 TUN 已生效,浏览器可能只使用了系统代理。
- 命令能够联网,不代表命令经过 TUN,直连也可能成功。
- 更可靠的标准是:测试时看到对应连接记录,并确认详情中的入站类型为 TUN 或 Tun。
按系统开启 TUN:Windows 10、Windows 11、macOS 和 Linux
Windows 10
- 退出其他 VPN、透明代理和虚拟网卡工具,确认 Clash Verge Rev 已经载入有效配置。
- 打开“设置→系统设置”,找到“服务模式”。如果显示“安装服务(Install Service)”,先点击安装;如果服务已安装,确认客户端可以切换到服务模式。
- 如果服务安装失败,右键 Clash Verge Rev,选择“以管理员身份运行”后重试。项目设置字段明确说明 TUN 需要 Service Mode 或 Admin Mode。
- 打开“虚拟网卡模式(Tun Mode)”,出现权限或防火墙提示时,按系统提示允许 mihomo 核心程序通信。
- 查看虚拟网卡时,进入“设置→网络和 Internet→状态→更改适配器选项”。不要把某个固定网卡名称当成唯一标准,因为名称可能随版本和系统环境变化。
Windows 11
- 前置检查和 TUN 开关路径与 Windows 10 基本相同:先确认服务模式或管理员权限,再进入“设置→系统设置”开启 Tun Mode。
- 查看虚拟网卡时,进入“设置→网络和 Internet→高级网络设置→更多网络适配器选项”。
- 如果 Microsoft Store 等 UWP 应用仍然没有连接记录,可在 Clash Verge Rev 设置中查找“Open UWP tool”。项目界面说明指出,Windows 8 之后的 UWP 应用可能受到访问本机网络服务的限制,该工具用于处理这类限制。
macOS
- 打开 Clash Verge Rev,进入“Settings→System Setting”,先确认配置和内核正常运行。
- 打开“Tun Mode”。如果当前版本要求服务模式或管理员权限,先安装或启用 Service Mode,并按系统提示输入管理员密码;不要按 Windows 的 Service Mode 安装方式照搬。
- 进入“系统设置→网络”查看是否出现新的虚拟接口。mihomo 文档的原意是:如果在配置中手动指定 macOS 的 TUN device,名称必须以
utun开头;这不表示用户需要手动创建或改名。 - 重新打开“连接(Connections)”页面测试。如果浏览器能用但某个应用没有记录,先检查该应用是否使用独立代理、独立 DNS 或自带网络扩展。
Linux
- 确认当前用户具备创建 TUN 设备和修改路由的权限,必要时使用系统提供的 sudo 或管理员授权。
- 在“Settings→System Setting”中查看是否提供 Service Mode 或服务安装入口。Linux 的服务安装程序名称可能随安装包变化,应以当前版本安装包内的程序和界面为准。
- 打开 Tun Mode 后,执行
ip link查看接口,执行ip route查看路由。 - 如果配置使用 mihomo 的
auto-redirect,官方文档说明它仅适用于 Linux,并且要求同时启用auto-route,还会涉及 iptables 或 nftables。不要在没有确认现有防火墙规则的情况下直接复制复杂 YAML。
关于 TUN 字段的具体行为,优先以mihomo 官方 TUN 文档为准。文档还说明,Windows 的 strict-route 会增加用于阻止 DNS 泄漏的防火墙规则,Linux 的 strict-route 会把连接导向 TUN 并可能让不支持的网络不可达。
如何确认 TUN 真正接管了流量
- 先看连接记录:打开“连接(Connections)”页面,在访问网页或运行命令的同时观察列表。先找对应的域名或进程,再打开该条连接的详情、信息或展开面板,查看入站类型字段。不同版本可能显示为“Type”“Inbound”或中文翻译,值可能写作 TUN 或 Tun。列表中出现连接只能说明客户端看到了流量,入站类型显示为 TUN 才能支持“由 TUN 接管”的判断。
- 再看虚拟网卡:Windows 在网络适配器列表查看新增接口,macOS 在“系统设置→网络”查看接口,Linux 执行
ip link。接口存在只能说明设备创建成功,不能单独证明所有应用都经过 TUN。 - 测试终端和 Git:Windows PowerShell 使用
curl.exe -I https://www.example.com;Git 使用git ls-remote https://github.com/git/git.git。命令成功只说明网络可达,不能单独证明流量经过 TUN;必须同时查看连接记录和入站类型。 - 测试 DNS:执行
nslookup example.com,同时观察客户端连接或 DNS 日志。使用 fake-ip 时,返回198.18.x.x可能是正常现象,不应单凭该地址判断 DNS 失败。mihomo 文档说明,Windows 和 macOS 不能自动劫持发往局域网的 DNS;Android 开启 Private DNS 时,也可能无法自动劫持。 - 做开启前后对照:关闭 TUN 后测试一次,再开启 TUN 重复测试。重点比较是否出现连接记录、入站类型是否显示为 TUN,以及虚拟网卡和路由是否存在。出口地址变化可以作为辅助观察,但不能作为唯一标准,因为规则可能仍然选择 DIRECT。
故障速查:现象、可能原因与第一步操作
| 现象 | 可能原因 | 第一步操作 |
|---|---|---|
| TUN 开关自动关闭 | 服务模式不可用、权限不足或内核没有通过服务启动 | 检查 Service Mode,Windows 改用管理员身份启动,并查看内核状态。 |
| 开启后完全断网 | 其他 VPN 冲突、路由或 DNS 配置错误、防火墙拦截 | 先关闭 TUN 恢复网络,退出其他 VPN 和虚拟网卡工具,再用默认设置重试。 |
| 浏览器能用,Git 或终端不通 | 应用没有被 TUN 接管,或应用自身代理、证书、DNS 配置异常 | 运行命令时查看 Connections,确认对应记录的入站类型是否为 TUN。 |
| 内网或虚拟机不通 | strict-route、路由排除项或虚拟网段冲突 | 暂时恢复默认路由设置复测,再根据实际内网和虚拟机网段配置排除项。 |
| DNS 结果异常 | fake-ip、独立 DoH、Private DNS、VPN DNS 或局域网 DNS 劫持限制 | 同时查看 nslookup 结果、客户端 DNS 日志和系统独立 DNS 设置。 |
stack、auto-route、strict-route 和 dns-hijack 怎么处理
auto-route负责自动设置路由,把系统流量导入 TUN;dns-hijack负责把匹配到的 DNS 连接导入内部 DNS 模块;strict-route会强化路由约束,在 Windows 上还会增加防止 DNS 泄漏的防火墙规则。auto-redirect是 Linux 专用,并且要求 auto-route。
stack决定 TUN 使用的网络栈实现,例如 system、gvisor 或其他当前内核支持的值。不同实现对兼容性、资源占用和应用行为可能不同,不能把某个固定值当成通用修复方案。优先保留客户端默认值,只有在日志明确指向网络栈兼容性问题时,再依据当前 mihomo 文档和客户端版本调整。配置字段与菜单可能随正式版本变化,不能直接照抄旧教程。
如果 TUN 已开启但软件仍不通,按“权限与服务模式→虚拟网卡→路由→DNS→应用自身代理”的顺序排查,一次只修改一个变量。若你的版本提供“Export Diagnostic Info”,只有在确实看到该按钮时再使用,不要按固定菜单层级寻找。
结论与下一步
判断 Clash Verge Rev TUN 是否成功,不能只看开关颜色或命令是否能联网。最稳妥的组合是:服务模式或管理员权限正常、虚拟网卡存在、连接详情中的入站类型显示为 TUN 或 Tun,并且 Git、终端或目标应用测试时出现对应连接记录。
如果你已完成上述验证,仍然遇到连接失败,建议保留当前版本号、mihomo 内核版本、系统版本、TUN 开关状态、连接详情和相关日志,再逐项排查,不要直接覆盖原配置。
常见问题
Clash Verge Rev 开启 TUN 后还需要打开系统代理吗?
通常不需要。Clash Verge Rev 的设置字段说明,Tun Mode 是虚拟网卡模式,启用后无需再开启 System Proxy。本文建议排查时先关闭系统代理再复测,避免两种接管方式叠加;如果某个应用仍然不通,再检查它是否有独立代理设置。
为什么 TUN 开关已经打开,仍不能证明流量经过 TUN?
因为开关亮起只说明客户端接受了启用请求,服务权限、虚拟网卡、路由和内核仍可能没有正常工作。测试时应在“连接(Connections)”页面找到对应域名或进程,并在连接详情中的 Type、Inbound 或入站类型字段确认显示为 TUN 或 Tun。命令能够联网本身不能证明经过 TUN。
Windows 10 和 Windows 11 开启 TUN 的步骤一样吗?
核心步骤相同,都是先确认 Service Mode 或管理员权限,再进入“设置→系统设置”打开 Tun Mode。主要差异在虚拟网卡查看路径:Windows 10 可进入“设置→网络和 Internet→状态→更改适配器选项”,Windows 11 可进入“设置→网络和 Internet→高级网络设置→更多网络适配器选项”。
macOS 上需要手动把 TUN 网卡改成 utun0 吗?
通常不需要。mihomo 文档的要求是:如果在配置中手动指定 macOS 的 device,名称必须以 utun 开头;这不是要求用户手动创建或改名,系统实际接口编号也不一定是 utun0。macOS 还应优先按当前版本提示安装或启用服务模式,并输入管理员密码。
开启 TUN 后 nslookup 返回 198.18.x.x 正常吗?
如果当前 DNS 使用 fake-ip,198.18.x.x 可能属于正常的 fake-ip 地址范围。应同时检查客户端 DNS 日志、连接记录、DNS 模式,以及系统或浏览器是否启用了独立 DoH、Private DNS 或其他 VPN,不能单凭返回地址判断故障。
浏览器能用,但 Git、终端或 Docker 不通怎么办?
先执行 <code>curl.exe -I https://www.example.com</code> 和 <code>git ls-remote https://github.com/git/git.git%3C/code%3E%EF%BC%8C%E5%B9%B6%E5%9C%A8 Clash Verge Rev 的“连接”页面确认对应域名或进程的入站类型为 TUN。没有连接记录时,优先排查权限、虚拟网卡和路由;有记录但失败时,再检查 Git 或 Docker 自己的代理、证书、DNS 和网络配置。不要把命令成功当作 TUN 生效证明。
stack 应该选择 system、gvisor 还是 mixed?
不要把某个值当成所有版本的固定答案。stack 属于 TUN 的网络栈实现,实际可用选项和兼容性会随 mihomo 内核及客户端版本变化。优先保留客户端默认值,只有在日志或实际测试明确指向网络栈兼容性问题时,才根据当前 mihomo 文档调整。