🔍 普通代理 vs TUN 模式:有什么区别?
在了解 TUN 模式之前,我们需要先理解普通系统代理的局限性。
普通系统代理的工作方式
当你开启 Clash Verge 的「系统代理」时,实际上是设置了一个 HTTP/SOCKS5 代理服务器。应用程序需要主动将流量发送到这个代理端口。
| 功能 | 普通代理 | TUN 模式 |
|---|---|---|
| 浏览器上网 | ✅ 支持 | ✅ 支持 |
| 游戏客户端 | ❌ 不支持 | ✅ 支持 |
| 桌面应用 | ❌ 不支持 | ✅ 支持 |
| UWP 应用 | ❌ 不支持 | ✅ 支持 |
| 命令行工具 | ❌ 不支持 | ✅ 支持 |
| 系统更新 | ❌ 不支持 | ✅ 支持 |
TUN 模式的原理
TUN 模式通过创建一个虚拟网卡(TAP/TUN),在操作系统层面拦截所有出站流量。这意味着:
- 真正的全局代理:所有应用程序的网络请求都会被拦截并处理
- 无需应用支持:应用程序无需主动配置代理
- 进程级分流:可以针对特定进程设置不同的代理策略
⚙️ 安装服务模式
Clash Verge 使用「服务模式」来实现 TUN 功能。服务模式会在系统中注册一个后台服务,用于管理虚拟网卡。
1 打开设置
在 Clash Verge 中,点击左侧「设置」或齿轮图标进入设置页面。
2 找到服务模式选项
在设置页面中,找到「服务模式」或「TUN 模式」相关选项。
3 安装服务模式
点击「安装」按钮。系统会提示输入管理员密码(Windows)或请求 sudo 权限(macOS/Linux)。
安装过程大约需要几秒钟,完成后会有成功提示。
安装服务模式需要管理员权限来注册系统级服务。这是所有 VPN 类软件的常规操作,用于创建虚拟网卡和修改路由表。Clash Verge 是开源软件,服务模式代码公开透明。
🚀 开启 TUN 模式
服务模式安装完成后,就可以开启 TUN 模式了:
- 在 Clash Verge 设置中,找到「TUN 模式」开关
- 将开关切换为「开启」状态
- 观察状态指示灯变为绿色,表示 TUN 模式已激活
开启 TUN 模式后,建议关闭「系统代理」开关。因为 TUN 模式本身已经实现了全局代理,同时开启可能导致双重代理,影响性能。
📊 TUN 模式高级配置
堆栈选择
Clash Verge 提供了不同的网络堆栈选项:
- System(系统):使用系统原生网络堆栈,兼容性最好
- gVisor:Google 的容器化网络堆栈,隔离性更好
- LWIP:轻量级实现,性能最好但兼容性可能较差
大多数情况下,选择「System」即可。如果遇到兼容性问题,再尝试其他选项。
DNS 劫持
TUN 模式下可以开启 DNS 劫持功能,强制所有 DNS 请求通过 Clash Verge 处理。这对于防止 DNS 污染非常有效。
推荐 DNS 配置
- fake-ip:返回伪造的 IP 地址,查询速度快,但无法获取真实域名
- redir-host:返回真实 IP 地址,需要额外 DNS 解析,但可以看到访问的域名
建议使用 fake-ip 模式以获得更好的性能。
IP 劫持
开启后,Clash Verge 会拦截并处理所有 IP 包,而不仅限于 TCP。这是更底层的代理方式,适合需要处理 UDP 流量的场景(如游戏、VoIP)。
🔧 常见问题排查
2. 确认已选择一个可用的代理节点
3. 尝试重新开关 TUN 模式
4. 检查防火墙是否阻止了虚拟网卡
5. 查看 Clash Verge 日志中的错误信息
2. 部分企业软件使用证书验证,可能无法通过代理
3. 确认 Clash Verge 中的规则没有将这些域名设为 DIRECT
📌 总结
TUN 模式是 Clash Verge 最强大的功能之一,它实现了真正的系统级全局代理:
- 所有应用自动走代理,无需单独配置
- 支持进程级分流和规则匹配
- 可以处理 UDP 流量,适合游戏和实时应用
- 配合 DNS 劫持,有效防止 DNS 污染
建议日常使用时开启 TUN 模式,需要极致低延迟时再考虑其他方案。