系统代理与 TUN 模式怎么选:覆盖范围、性能、权限与适用场景对比
客户端两种工作方式的对比:系统代理只对读取系统设置的程序有效、TUN 通过虚拟网卡接管所有流量。从覆盖范围、性能开销、权限要求、DNS 处理、常见问题五个维度比较,给出不同用户的选择建议。
客户端有两种让流量经过它的方式。选哪种取决于你要代理的程序会不会读系统代理设置。
两种方式的原理
系统代理: 客户端把操作系统的代理设置改为「127.0.0.1:端口」。读取这项设置的程序(浏览器、多数图形软件)把流量发给客户端。不读的程序直连。原理见 系统代理是什么。
TUN: 客户端创建一张虚拟网卡并修改路由表,操作系统把所有出站流量交给这张网卡,客户端从网卡读取流量后按规则处理。程序无感知,全部经过。原理见 TUN 是什么。
五个维度对比
| 维度 | 系统代理 | TUN |
|---|---|---|
| 覆盖范围 | 读系统代理的程序 | 所有程序 |
| 终端程序 | 需设环境变量 | 自动 |
| 游戏与 UDP | 通常不走 | 走 |
| 权限 | 无 | 管理员 / 扩展授权 |
| 开销 | 无 | 轻微 |
| DNS | 程序自己解析 | 客户端接管(需开劫持) |
| 常见问题 | 部分程序不走 | 启动失败、与其他 VPN 冲突 |
哪些程序不读系统代理
- 终端程序:Claude Code、Codex CLI、curl、git、pip、npm
- 部分 IDE 与编辑器的网络请求
- 多数游戏
- 部分即时通讯与专用客户端
- 用 UDP 的应用
这些程序要么单独配置(环境变量、自身代理设置),要么用 TUN。
选择建议
| 用户 | 建议 |
|---|---|
| 只用浏览器看网页、视频 | 系统代理 |
| 用 AI 开发工具 | TUN |
| 玩游戏 | TUN |
| 电脑上程序很杂、不想逐个配置 | TUN |
| 企业电脑无管理员权限 | 系统代理 + 环境变量 |
同时开会怎样
一般不冲突,但少数环境下出现回环或 DNS 异常。建议只开一个。开 TUN 后关闭系统代理。
开启 TUN
Clash Verge 见 TUN 模式教程;sing-box 客户端默认 TUN;v2rayN 在设置中开启。启动失败见 TUN 无法启动。开发工具的具体用法见 AI 开发工具网络环境。
常见问题
- 系统代理和 TUN 有什么区别?
- 系统代理是操作系统的一项设置,只有读取该设置的程序(浏览器等)会走代理;TUN 创建虚拟网卡,操作系统把所有流量路由到它,任何程序都走代理。
- TUN 模式会更慢吗?
- 有轻微开销,日常感知不到。带宽瓶颈在节点,不在 TUN。
- 开了 TUN 还要开系统代理吗?
- 不需要。两者选一。