TUN模式是什么
一句话:TUN模式是代理客户端创建虚拟网卡、在网络层接管整台设备流量再分流的工作方式,覆盖面比系统代理更广。
TUN 是操作系统提供的虚拟网络接口。客户端开启 TUN模式后,会创建一块虚拟网卡并调整系统路由,让设备发出的网络数据先进入这块网卡,再由客户端内核按规则决定直连还是走节点。因为不依赖各个软件主动读取代理设置,不认系统代理的程序也能被接管。开启通常需要管理员权限,具体入口和叫法以所用客户端为准。
先把最容易混的一点说清:TUN模式回答的是“怎么把流量抓过来”,全局模式与规则模式回答的是“抓过来之后怎么分”。 两个问题,两套开关,可以任意搭配。
它抓流量的位置,和系统代理不同
系统代理的做法,是在系统设置里登记一个代理地址,然后指望每个软件自觉去读。读了,就把请求发给客户端;没读,就直接出网,客户端完全不知情。
TUN 换了一个位置:
- 客户端创建一块虚拟网卡,并让系统把流量路由到这块网卡。
- 设备发出的数据包先进入虚拟网卡,被客户端内核取走。
- 内核还原出每一条连接,套用分流规则,决定直连还是走 节点。
由于是在网络层统一接管,命令行工具、部分游戏和不认系统代理的程序,也有机会被覆盖到。手机上的客户端则通常借助系统提供的 VPN 接口达到类似效果,所以首次连接时会弹出系统授权。
TUN模式和“全局模式”不是一回事
| 容易混的说法 | 实际含义 | 在哪个层面 |
|---|---|---|
| 开了 TUN,就是全局 | 不对,TUN 下仍然可以用规则模式 | 接管方式 |
| 全局模式,就是 TUN | 不对,全局模式在系统代理下也能用 | 分流方式 |
| 两者同时开 | 可以,但出问题时更难判断原因 | 两层叠加 |
所以日常最常见的组合是:TUN 负责接管,规则模式负责分流。分流怎么选,见 全局模式与规则模式。
什么时候值得开,什么时候别开
- 值得开:命令行里要走代理、某个软件完全不读系统代理、希望一次覆盖整台设备。
- 没必要开:日常浏览网页,系统代理已经够用,开 TUN 只是多了一层要维护的东西。
- 要多留心:公司电脑、同时装了其他虚拟网卡或安全软件的机器,先弄清冲突风险再开。
另外,UDP 流量能否被一并接管,与内核和协议有关。像 Hysteria2 这类基于 UDP 的协议,是否顺畅还要看客户端实现,以具体说明为准。
开了之后常见的 4 个坑
- 权限不足:创建虚拟网卡通常需要管理员权限,没有授权时开关可能点了没反应。
- 和其他 VPN 或虚拟网卡冲突:路由被抢,表现为断网或部分网站异常,先关掉其中一个再测。
- 局域网设备访问不了:内网地址也被接管了,需要给局域网网段加直连规则,思路见 分流规则。
- DNS 表现异常:开了 TUN 不等于 DNS 一定走对,DNS 设置另需检查,见 DNS泄漏检测。
如果你本来想用系统代理却发现不生效,先看 系统代理不生效,再决定是否需要换成 TUN。
开之前,先过一遍这份清单
- 客户端来自官方渠道,系统支持相应功能;Windows 端的选择思路见 Windows客户端教程。
- 订阅已更新、节点能连通,先在系统代理下确认基本可用。
- 记下开关位置,出问题时能一步关掉,再逐项排查。
- 具体步骤与各系统的差异,请看专门的 TUN模式开启教程。
使用相关服务请遵守所在地法律法规,机场牛不提供法律意见。