为什么开了 Tun 模式就能绕过地区限制
首先,我们一般被卡在地区限制是因为某些服务只被开放给部分地区用户使用,如果你的 IP 不符合这些地区限制,就会被卡住。
假如你使用了代理模式下的美国 IP 进行登录,这些服务并不会认为你是美国 IP。
这和代理模式的原理有关。
代理模式的原理
电脑操作系统中都自带一个网络代理的功能,当你打开 Clash 客户端的代理模式之后,它会往这个操作系统网络代理中写入一个代理配置。
其他 App 发送请求的时候,可以选择使用你这个网络代理,也可以不使用,因为它只是一个操作系统配置项,很多常用软件比如命令行都是不管你这个配置的,它们会直接走正常网络发送请求。
所以你经常会发现,开了代理,命令行更新软件依然很慢,因为它不鸟这个配置,但是像浏览器这种软件,都会遵循你的代理进行请求。
很多有地区限制的服务就是不管你网络代理配置的,所以它并不认为你是美国 IP。
Tun 模式的原理
Tun 模式的原理是在你电脑上虚拟了一张网卡,因为所有流量的最终出口就是网卡,所以它等于在强制劫持你的流量,大部分软件也不会检测这个东西,所以你在使用 Tun 模式的时候能够更好的隐藏自己是否开了代理。
打开这个模式之后,那些有地区限制的服务已经认为自己在美国 IP 网络环境了。
因为它涉及到所有流量接管,所以当你使用 Tun 模式的时候,你需要进行管理员验证。
两种模式的核心区别
| 特性 | 代理模式 | Tun 模式 |
|---|---|---|
| 原理 | 操作系统代理配置项 | 虚拟网卡劫持全部流量 |
| 覆盖范围 | 仅遵循代理配置的软件 | 所有网络流量 |
| 隐蔽性 | 低,软件可选择忽略 | 高,强制接管 |
| 权限要求 | 无需特殊权限 | 需要管理员验证 |
| 命令行生效 | 通常不生效 | 生效 |
Tips:在一些老版本的 Clash 软件上面,这个 Tun 模式叫做增强模式。
还看到一些推友说需要改 Google 地址,我今天亲测不用,我的 Google 区域是新加坡。