TUN模式是什么?和系统代理、全局模式到底有什么区别

约 5 分钟读完 2 次阅读

TUN模式是什么?它是代理客户端在系统里建一块虚拟网卡,让电脑上所有程序的网络流量都先经过这块网卡、再由客户端决定怎么处理。系统代理只能管住愿意读代理设置的程序,TUN 模式能管住全部程序,包括游戏、语音软件和命令行工具。

很多人把 TUN 模式和「全局模式」当成一回事,这是理解代理客户端设置时最常见的混淆。两者管的是完全不同的问题:一个决定接管哪些程序的流量,一个决定接管之后往哪送。这篇把这两件事拆开讲清楚,再说什么时候该开 TUN、开了上不了网怎么查。

系统代理和 TUN 模式的区别

系统代理是在操作系统里登记一个「代理地址」(比如 127.0.0.1:7890),程序联网前自己去读这个设置,读了才走代理。浏览器会读,很多程序不读。TUN 模式不需要程序配合,所有流量在网络层就被虚拟网卡截住了。

对比项系统代理TUN 模式
工作方式程序主动读取系统的代理设置虚拟网卡在网络层截住所有流量
能管住的程序只有读代理设置的程序(浏览器、大部分常用软件)所有程序
UDP 流量基本管不到管得到
游戏、语音通话通常不走代理走代理
命令行工具多数不读系统代理,需要单独设置走代理
需要的权限普通权限即可需要管理员权限(Windows)或 root(Linux)
出问题的影响面小,关掉就恢复大,配置不对会导致整台电脑上不了网

UDP 这一行最容易被忽略。很多游戏和语音软件走 UDP,系统代理模式下这些流量直接从你自己的网络出去,跟节点毫无关系;怎么确认 UDP 到底有没有走节点,见 节点UDP测试怎么做。

TUN 模式和全局模式的区别

代理客户端的设置里其实有两个互不相关的开关:

  • 怎么接管流量:系统代理,还是 TUN 模式。决定哪些程序的流量会进到客户端
  • 接管之后往哪送:规则模式(也叫智能分流),还是全局模式。决定进来的流量是走节点还是直连

所以一共有四种组合:

规则 / 智能分流全局
系统代理浏览器等程序进客户端,国内网站直连、国外走节点浏览器等程序进客户端,全部走节点
TUN 模式所有程序进客户端,国内网站直连、国外走节点所有程序进客户端,全部走节点

开了 TUN 不等于全部走代理。TUN 加规则模式时,国内网站照样直连,只是连游戏、命令行工具这类原本管不到的程序也按规则分流了。反过来,全局模式也不等于所有程序都走代理:系统代理加全局模式下,游戏照样不走。

规则和全局两种模式怎么选、规则怎么写,见 VPN客户端怎么设置分流。

什么时候该开 TUN

你的情况建议
只用浏览器看网页、看视频系统代理就够了,不用开 TUN
玩游戏、语音通话要走代理开 TUN
某个软件怎么都不走代理(命令行工具、部分客户端)开 TUN
公司电脑、没有管理员权限开不了,只能用系统代理,或给软件单独设置代理地址
同时装了别的 VPN、加速器先关掉其他的再开 TUN,否则容易冲突

手机上不用纠结这个问题:安卓和 iOS 上的代理客户端通常都以系统 VPN 的方式运行,本质上就是 TUN,所有 App 的流量默认都会进来。

开 TUN 为什么要管理员权限或「服务模式」

建虚拟网卡、改系统路由表,是操作系统只允许管理员做的事。所以 Windows 上开 TUN 需要用管理员身份运行客户端,Linux 上需要 root。

有的客户端为了避免每次都手动提权,提供了「服务模式」:安装一个后台服务,由它来做需要权限的那部分,客户端本身用普通权限运行即可。Clash Verge Rev 里看到「TUN 模式需要服务模式,请先安装服务」的提示,就是这个意思,按提示在设置里安装服务模式后再开 TUN。

开了 TUN 上不了网,按这个顺序查

  1. 虚拟网卡有没有建起来:没用管理员权限,或者服务模式没装成功,网卡就建不起来。Windows 可以在「网络连接」里看有没有多出一块新的网卡
  2. 有没有别的 VPN、加速器在同时运行:两个程序同时改路由,很容易互相覆盖,先关掉其他的
  3. 安全软件有没有拦截:部分安全软件会拦截虚拟网卡驱动的安装,需要放行
  4. 先关 TUN 看能不能上网:关掉就能上,说明问题出在 TUN 这一层;关掉也上不了,问题在节点或网络,排查方法见 节点超时怎么办
  5. 退出客户端后还是上不了网:通常是系统代理设置残留,清理方法见 VPN软件如何卸载 里的修复步骤

我们的电脑端怎么设置

我们的电脑端把上面说的两个开关分开了。默认是系统代理模式,本地监听 127.0.0.1:2080 的端口,只接管浏览器等读取系统代理的程序。勾选「代理所有应用」就是开 TUN,客户端会创建一块名为 FunMeGoTun 的虚拟网卡,接管所有程序的 TCP 和 UDP 流量。分流模式是另一个独立的选项:智能分流(国内直连、其余走代理)或全局代理,跟是否开 TUN 互不影响。

说一句对我们不利的实话:我们的电脑端目前没有服务模式。要开「代理所有应用」,需要用管理员身份运行软件,网卡没建起来时环境自检会提示;不像 Clash Verge Rev 那样装一次服务、以后就不用再管权限。

常见问题

TUN 模式是什么意思?

TUN 是一种虚拟网卡。代理客户端开启 TUN 模式后,会在系统里建一块这样的网卡,让所有程序的网络流量都先经过它,再由客户端按规则决定走节点还是直连。

TUN 模式和系统代理哪个好?

没有绝对的好坏。只用浏览器时系统代理更简单、影响面小;要让游戏、语音软件、命令行工具也走代理,就得开 TUN。

TUN 模式怎么开?

在客户端设置里找「TUN 模式」「虚拟网卡」或「代理所有应用」一类的开关。Windows 上需要用管理员身份运行客户端,或者先按提示安装客户端的服务模式。

Clash 的 TUN 模式无法上网怎么办?

先确认服务模式已安装、虚拟网卡已创建,再关掉其他 VPN 和加速器,看安全软件有没有拦截。关掉 TUN 后能上网,问题就在 TUN 这一层;关掉也不行,就去查节点和网络。

开了 TUN 模式还需要开全局模式吗?

不需要。TUN 决定接管哪些程序,全局或规则决定接管后往哪送,两者互不影响。大多数情况下 TUN 加规则模式就够了,国内网站照样直连。

在线客服
正在加载...