知识库 · 入门

系统代理和 TUN 模式的区别:哪些软件不走系统代理,什么时候要开 TUN

系统代理在应用层,只接管「愿意配合」的程序;TUN 在网络层,用虚拟网卡接管全部流量。本文讲两种模式的原理差异、哪些软件只认哪种模式、Clash Verge、FlClash、sing-box、Shadowrocket 各自怎么切换,以及同时开两个的后果和推荐组合。

两种模式在哪一层工作

系统代理在应用层。它只是在操作系统里写一条设置:「HTTP 和 HTTPS 流量请发到 127.0.0.1:7890」。程序启动时读取这条设置,如果程序愿意配合,就把流量发给客户端;不愿意配合或根本不读这条设置的程序,流量照旧直接出去。

TUN 模式在网络层。客户端创建一张虚拟网卡,并把系统默认路由指向它。此后任何程序发出的 IP 包,无论它知不知道代理的存在,都先经过这张网卡进入客户端,由客户端按规则决定直连还是走节点。

一句话:系统代理靠程序自觉,TUN 靠系统强制。

哪些程序只认系统代理

浏览器是最典型的配合者:Chrome、Edge、Safari 默认读系统代理设置,Firefox 可选。多数用 WebView 或系统网络库写的桌面软件也配合,比如 Telegram 桌面版、Discord、Slack、Spotify、Steam 商店页面的网页部分。

这些程序在系统代理模式下工作良好。它们还有个优点:把域名原样交给客户端,由客户端决定解析方式,所以 DNS 问题少。

哪些程序不走系统代理

这些程序想走代理,只有 TUN 一条路。

TUN 模式的代价

开了 TUN 没网、权限报错、虚拟网卡冲突等问题的具体排查,见 TUN 模式问题排查。

各客户端怎么切换

Clash Verge Rev(Windows / macOS / Linux):左侧「设置」,顶部有「系统代理」和「TUN 模式」两个开关。首次开 TUN,Windows 建议先在同一页安装「服务模式」,之后不用每次管理员启动;macOS 会弹系统扩展授权。完整配置见 Clash Verge 教程。

FlClash(全平台):首页「设置」下方的「TUN」开关;桌面端另有「系统代理」开关。安卓版只有 VPN 模式,即 TUN。

Mihomo Party:设置页「虚拟网卡」开关对应 TUN,「系统代理」单独开关,支持同时开。

sing-box 系(sing-box 官方 App、GUI.for.SingBox、Karing、Hiddify):配置文件里 inbound 用 tun 还是 mixed 决定模式。图形界面通常提供「TUN」或「VPN 模式」开关。

Shadowrocket / Stash / Surge / Loon / Quantumult X(iOS):iOS 没有系统代理模式的概念,所有客户端都通过 VPN 接口工作,等同 TUN。开关就是那个大按钮。Surge for Mac 则有「增强模式」,就是 TUN。

v2rayN(Windows):右下角「系统代理」菜单切换清除 / 自动配置,TUN 模式在主界面左下的「Tun 模式」开关,需要管理员。

Clash Meta for Android / v2rayNG 等安卓客户端:VPN 模式等同 TUN,是默认模式。个别客户端有「仅代理」或「HTTP 代理」模式,那是系统代理,只对浏览器之类有效。

同时开两个会怎样

可以同时开,不会打架。流程是:浏览器把流量发到 127.0.0.1:7890(系统代理),客户端收下后匹配规则决定去向;其他程序的流量被 TUN 网卡拦下,同样匹配规则。两条入口最后汇到同一套规则和节点,结果一致。

但同时开有两点要注意:

  1. 来自系统代理的流量带着域名,来自 TUN 的流量多数只有 IP(除非用 Fake-IP),规则匹配的信息量不同。开了 Fake-IP 则两边一致。
  2. 退出客户端时如果崩溃,系统代理设置可能残留,表现为「关了客户端全部网站打不开」。到系统网络设置里手动关掉代理即可。

推荐做法:桌面日常用系统代理,需要跑终端、游戏、UWP 时开 TUN;或者干脆常开 TUN 并关掉系统代理,一套规则管全部。两种选法都没错,取决于你是否常用不配合的程序。

怎么判断该用哪个

一个简单的测试:开着系统代理,打开那个你觉得「不走代理」的程序,看客户端的连接面板里有没有它的连接记录。有,说明它配合系统代理,不用 TUN;没有,开 TUN 再看,连接出现了就是解决了。

模式之外还有规则的问题:开了 TUN 但某个网站仍走直连,是规则没匹配上,不是模式的错。规则、分流与三种代理模式的关系见 代理模式与规则。

常见误区

「开了 TUN 就是全局代理」:不是。TUN 只是把流量接管进客户端,之后仍然按规则分流,国内网站照样直连。全局还是规则,由客户端的模式决定,和 TUN 无关。

「系统代理不安全,TUN 才安全」:两者的安全性相同,都是在本机内把流量交给同一个客户端。差别只在覆盖范围,不在加密强度。

「TUN 会拖慢网速」:在电脑和手机上,TUN 的处理开销在毫秒级,测速结果和系统代理模式几乎没有差别。能感知到慢的只有性能极弱的路由器和盒子。

「浏览器连不上一定要开 TUN」:浏览器走系统代理就够。浏览器连不上通常是节点或规则问题,开 TUN 不会改变结果。

什么时候必须用 TUN

把不走系统代理的程序列成一张清单,看看你有没有在用其中任何一个:命令行工具、游戏、微软商店应用、系统更新、虚拟机或容器、不读代理设置的桌面软件。有,就常开 TUN。没有,系统代理足够,少一层权限和配置。

常见问题

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

各有用处。只用浏览器,系统代理够且省资源;要让游戏、终端、微软商店应用、其他不走代理的软件也通,必须 TUN。

为什么开了系统代理终端还是连不上?

终端命令行工具不读系统代理设置,要么在终端里设 https_proxy 环境变量,要么开 TUN。

TUN 模式和系统代理可以同时开吗?

可以,不会冲突,走系统代理的程序会在客户端内部再匹配一次规则。但多数情况下开 TUN 就够了,同时开只是多一层无用的转发。

手机上有系统代理和 TUN 的区别吗?

iOS 和 Android 的客户端都用 VPN 接口,本质就是 TUN,不存在系统代理模式的选择。Android 上有个别客户端提供「仅代理」模式,那才是系统代理。

开 TUN 需要管理员权限吗?

需要。创建虚拟网卡是系统级操作,Windows 要管理员或安装服务模式,macOS 要授权系统扩展,Linux 要 root 或 CAP_NET_ADMIN。


本文为信息整理与个人经验,不构成购买建议。机场政策与软件界面可能变化,以官方为准。发现过期内容请 联系纠错。

继续阅读

回到 知识库 · 机场推荐 2026 · 排行榜