教程 · 预计阅读 8 分钟

Clash Verge Rev TUN 模式完全指南
让终端、Git、Docker 全走代理

普通系统代理只能覆盖浏览器流量,终端与 Docker 依然裸奔。本文手把手教你开启 TUN 虚拟网卡模式,一次接管所有底层流量,无需配置任何环境变量。

Clash Verge Rev · TUN 模式 · Windows · macOS

1 什么是 TUN 模式

在深入配置之前,我们先搞清楚一个概念:系统代理TUN 模式到底有什么区别?

日常使用 Clash 时,大多数人开的是「系统代理」。这种模式本质上是在操作系统层面设置一个 HTTP/SOCKS5 代理地址,浏览器、部分应用会主动读取这个设置并把流量送过来,但很多程序——尤其是命令行工具——根本就不认这套规则。你有没有遇到过这样的情况:浏览器翻墙没问题,但一打开终端执行 npm installgit clone,依然龟速甚至直接超时?这就是系统代理覆盖范围有限的典型表现。

TUN 模式(Tun Mode)的思路完全不同。它在系统中创建一块虚拟网卡(通常命名为 Metautun),把操作系统所有出站流量——无论是 HTTP、TCP 还是 UDP——全部"骗"进这块虚拟网卡,再由 Clash 内核按照你的规则决定每条连接走代理还是直连。从底层流量视角来看,这台机器的网络完全由 Clash 接管,任何程序都无法绕过。

Mihomo(Meta)内核的优势 Clash Verge Rev 使用 Mihomo(即 Clash.Meta)内核,其 TUN 实现基于 gvisorsystem 两种栈,稳定性与兼容性均优于旧版 Clash Premium 内核。

2 为什么你需要 TUN 模式

如果你有以下任意一种需求,TUN 模式几乎是必选项:

  • 终端开发者npmpipcargobrew 等包管理器不走系统代理
  • Git 用户git clonegit push 到 GitHub/GitLab 经常超时
  • Docker 用户:拉取 Docker Hub 镜像、构建过程中下载依赖包总是失败
  • 游戏玩家:Steam、Epic 等客户端的 UDP 流量无法被系统代理覆盖
  • 远程连接:SSH 或某些 VPN 客户端不支持设置代理参数

简单说,只要你遇到"开了代理但某些软件还是不走"的困境,TUN 模式就是终极解法。

3 开启前提条件

软件版本要求

  • Clash Verge Rev 1.7.0 及以上版本(推荐使用最新版)
  • Windows 系统需安装 Npcap 或已启用 WinTUN 驱动
  • macOS 系统需给予「网络内容过滤器」权限

管理员权限

创建虚拟网卡需要系统级权限。Windows 用户请以管理员身份运行 Clash Verge Rev,或在设置中开启「以管理员权限运行」选项(推荐后者,避免每次手动操作)。macOS 会在首次开启 TUN 时弹出系统提示框要求授权,点击「允许」即可。

注意:开启前先关闭系统代理 TUN 模式与系统代理可以同时存在,但为了避免流量被双重拦截导致速度异常,建议开启 TUN 的同时关闭系统代理,让 TUN 单独接管全部流量。

4 Windows 开启 TUN 模式

步骤一:以管理员权限启动 Clash Verge Rev

右键桌面图标 → 选择「以管理员身份运行」。或者进入 Clash Verge Rev 的「设置」→「系统设置」→ 打开「以管理员权限运行」开关,之后每次启动都会自动提权。

步骤二:安装 Service Mode(服务模式)

依次点击:设置 → 系统设置 → 服务模式,点击「安装」按钮。服务模式可以让 Clash 在系统后台以服务形式运行,TUN 驱动需要这个前提。安装完成后状态显示「已安装」即可。

步骤三:开启 TUN 模式

回到主界面,找到「TUN 模式」开关(通常在首页卡片区或「设置 → 内核设置」中),将其打开。首次开启时 Clash 会自动安装 WinTUN 虚拟驱动,过程需要几秒钟,任务栏图标可能短暂闪动属于正常现象。

如何确认 TUN 驱动安装成功 打开「设备管理器」→「网络适配器」,若看到名为 WinTUN Userspace TunnelMeta 的虚拟适配器,说明驱动已就绪。

步骤四:推荐配置 TUN 参数

在 Clash Verge Rev 的「覆写配置」或直接编辑订阅 YAML,加入以下 TUN 段落:

YAML
tun:
  enable: true
  stack: mixed          # mixed 兼容性最好(gvisor + system 混合)
  dns-hijack:
    - any:53            # 劫持所有 DNS 请求,防止 DNS 泄漏
  auto-route: true      # 自动添加路由规则
  auto-detect-interface: true  # 自动探测出口网卡

stack: mixed 是目前最推荐的模式:TCP 流量走 gvisor 用户态协议栈(兼容性佳),UDP 流量走 system(性能更高),两者各司其职。如果你发现某些 UDP 应用不正常,可以改为 stack: gvisor 统一处理。

5 macOS 开启 TUN 模式

步骤一:授予系统权限

macOS 下 TUN 的实现依赖系统「网络内容过滤器」(Network Extension)。首次点击 TUN 开关后,系统会弹出权限申请弹窗,打开「系统偏好设置(或系统设置)」→「隐私与安全性」→ 底部点击「允许」即可。

步骤二:开启 TUN 开关

授权后回到 Clash Verge Rev 主界面,点击「TUN 模式」切换按钮,状态变为蓝色高亮即表示已激活。你会注意到菜单栏图标旁多了一个小盾牌标志,这就是 TUN 处于激活状态的标识。

步骤三:YAML 配置与 Windows 一致

macOS 下的 YAML 配置与 Windows 完全相同,同样建议设置 stack: mixedauto-route: truedns-hijack,具体参见上方 Windows 部分的配置示例。

macOS Sequoia(15.x)注意事项 Apple Silicon Mac 升级到 macOS 15 后,Network Extension 权限管理有所调整,部分用户需要在「系统设置 → 隐私与安全性 → 网络」中手动将 Clash Verge Rev 添加到允许列表。

6 验证 TUN 模式是否真正生效

开启之后别急着用,先做几个简单验证,确认 TUN 已接管全部流量。

方法一:终端 curl 测试

打开命令提示符(Windows)或终端(macOS),执行:

Shell
curl -v https://www.google.com

如果能正常返回响应(HTTP 200),说明终端流量已走代理。此前没有 TUN 时,这条命令大概率会超时或报连接拒绝。

方法二:查看当前 IP 归属

Shell
curl https://ip.sb

返回的 IP 地址应该是你节点所在的境外 IP,而非本机运营商 IP。若两者一致,说明 TUN 未生效,检查是否以管理员权限运行。

方法三:在 Clash 连接面板中观察

打开 Clash Verge Rev → 「连接」面板,执行任意终端命令后,看是否出现对应的连接记录。TUN 模式下,curlgitnpm 等命令发起的连接都会出现在列表中,进程名一目了然。这是排查问题最直接的方式。

方法四:Docker 拉取镜像测试

Shell
docker pull hello-world

如果能从 Docker Hub 正常拉取镜像(无需在 Docker Desktop 中单独配置代理),说明 TUN 已成功接管 Docker 的网络流量。这对于国内用户来说几乎就是 TUN 能否正常工作的黄金测试。

7 进阶:精细化分流规则

TUN 接管全部流量之后,合理的分流规则就显得更加重要——毕竟国内网站没必要走代理,否则反而会增加延迟。以下是几个常用的精细化配置建议:

为局域网和国内 IP 保留直连

YAML · rules 片段
rules:
  - IP-CIDR,192.168.0.0/16,DIRECT
  - IP-CIDR,10.0.0.0/8,DIRECT
  - IP-CIDR,127.0.0.0/8,DIRECT
  - GEOIP,CN,DIRECT
  - MATCH,Proxy

GEOIP,CN,DIRECT 这条规则会让所有归属中国大陆的 IP 直接连接,不走代理,这对于访问国内网站、网游、银行 APP 等场景非常关键。

排除特定进程走直连

Mihomo 内核支持 PROCESS-NAME 规则,可以针对进程名设置例外:

YAML · rules 片段
rules:
  - PROCESS-NAME,WeChat,DIRECT      # 微信走直连
  - PROCESS-NAME,QQ,DIRECT          # QQ 走直连
  - PROCESS-NAME,Thunder,DIRECT     # 迅雷走直连

使用 Rule Provider 订阅社区规则集

手动维护规则既费时又容易遗漏,推荐通过 Rule Provider 引入 ACL4SSR 规则集,可以获得覆盖数万个域名的精准分流,并附带 Netflix、YouTube 解锁与广告过滤,开箱即用。

DNS 防泄漏配置

TUN 开启后,DNS 泄漏问题会比系统代理模式更加突出。建议同步配置 FakeIP 模式与 DoH,详细方案可参考我们的《彻底防止 DNS 泄漏》一文。

8 常见问题排查

Q:开启 TUN 后网络完全断了?

最常见的原因是没有以管理员权限运行,或者 WinTUN 驱动安装失败。请先关闭 TUN 开关,检查「设备管理器」中是否存在虚拟网卡,若没有,重新安装 Service Mode 后再试。

Q:国内网站访问变慢了?

检查分流规则是否正确设置了 GEOIP,CN,DIRECT。另外确认 GeoIP 数据库(Country.mmdb)是最新版本,Clash Verge Rev 支持在设置中一键更新。

Q:游戏、语音软件出现 UDP 问题?

尝试将 stackmixed 改为 system,或针对该软件进程添加 PROCESS-NAME,xxx,DIRECT 规则直连其 UDP 流量。

Q:macOS 下 TUN 开关点击没反应?

前往「系统设置 → 隐私与安全性 → 网络」,确认 Clash Verge Rev 已出现在列表中并且已打开权限。部分 macOS 版本需要重启应用后权限才会生效。

Q:Docker Desktop 依然无法拉取镜像?

Docker Desktop 有自己独立的虚拟网络层,部分版本可能需要在 Docker Desktop 设置中手动配置代理。建议在 Docker 设置里将 HTTP Proxy 和 HTTPS Proxy 都指向 http://127.0.0.1:7890(或你的 Clash 混合端口),与 TUN 模式并行使用,兼容性最佳。

9 总结

TUN 模式是从「够用」到「真正好用」的分水岭。系统代理解决了 80% 的场景,而 TUN 解决了剩下那 20% 里最让人头疼的问题——终端、Git、Docker、游戏客户端这些"不走寻常路"的流量,终于可以统一纳入代理规则的管辖。

配置看起来步骤不少,但实际操作下来不超过 5 分钟:安装服务模式、打开 TUN 开关、把上面的 YAML 片段粘贴进覆写配置,就这么简单。一次配置,之后再也不用为"某某软件不走代理"抓耳挠腮。

相比其他客户端需要手动编写驱动配置或借助第三方工具,Clash Verge Rev 把 TUN 配置整合进了 GUI 界面,几个开关就能搞定,这也是它在国内开发者群体中口碑极佳的原因之一。如果你还没试过,现在就是最好的开始时机。

立即免费下载 Clash Verge Rev,开启 TUN 新体验 →

标签: Clash Verge Rev TUN 模式 Windows macOS 虚拟网卡代理 终端代理
Clash 客户端 Logo

Clash Verge Rev

新一代 Clash 客户端 · 免费开源

继承 Clash for Windows 衣钵、内置 TUN 模式、支持订阅一键导入,Windows、macOS、Linux 全平台可用。专为开发者和高级用户设计,无论是日常翻墙还是进阶分流,都能轻松应对。

TUN 全流量接管 Mihomo 高性能内核 精准规则分流 DNS 防泄漏 多订阅管理

相关阅读