系统代理与 TUN 模式 System Proxy / TUN Mode
系统代理是操作系统层的代理设置,只有「遵守」它的程序(浏览器等)会走代理;TUN 模式建立虚拟网卡在网络层接管全部程序流量,不管程序配不配合。
这是「开了代理但某些软件不走」的根源:系统代理是君子协定,浏览器遵守、多数命令行工具和游戏不理会;TUN 模式是强制接管,创建虚拟网卡后所有流量都从它过。日常浏览用系统代理足够且省事;要让终端、游戏、不听话的客户端走代理,才需要开 TUN——它通常要求管理员权限或安装系统服务。

常见误解

  • 以为开了客户端就是全局代理。默认的系统代理模式下,不遵守系统设置的程序仍然直连。
  • 长期默认开 TUN。TUN 接管一切流量,规则没配好时连内网、打印机这类本地访问也可能被带偏。
  • 把 TUN 与安卓的 VPN 模式混淆。安卓客户端的 VPN 通道机制类似 TUN,因此安卓没有单独的「系统代理」概念。

「不走代理」问题的定位地图

现象与结论的对应关系:浏览器走、终端不走 → 系统代理模式的正常边界,不是故障;全都不走 → 系统代理开关没开或客户端没启动;开了 TUN 全都走但内网访问异常 → TUN 分流规则需要补内网直连规则。大部分「代理不生效」的求助帖,答案都在这三行里。

客户端里的位置

Clash 系桌面客户端(Clash Verge Rev、FlClash 等)通常把两个开关并列放在设置或工具页:「系统代理」与「TUN 模式(虚拟网卡)」。TUN 首次启用会请求管理员授权或安装服务,属正常流程。站内各客户端教程的「开启系统代理」步骤,讲的就是前一个开关。

关于「系统代理与 TUN 模式」的常见问题

系统代理和 TUN 模式有什么区别?

作用层级不同。系统代理写在操作系统设置里,等程序自觉来读——浏览器、多数 GUI 软件遵守,命令行工具、部分游戏和老软件无视它;TUN 模式创建一块虚拟网卡,在网络层拦下全部流量,程序无法绕过。一句话记忆:系统代理管「愿意配合的」,TUN 管「所有的」。

浏览器能用但其他应用不能用怎么办?

这是系统代理模式的标志性现象——浏览器遵守系统代理所以能用,其他应用不遵守所以直连失败。三个解决层级:该应用自身支持代理设置的,手动填客户端的本地端口;不支持的,开客户端的 TUN(虚拟网卡)模式强制接管;只在终端里需要的,临时设置 http_proxy 环境变量最轻量。

日常应该用哪个模式?

默认系统代理:够用、无需额外权限、出问题影响面小。切 TUN 的三个典型时机——需要命令行工具走代理、游戏或特定软件不遵守系统代理、想让整机流量统一分流。用完专项需求可以切回系统代理,两个模式随时切换,不是二选一的长期承诺。

全部术语

订阅 Subscription

订阅是一个地址,客户端访问它就能拿到当前可用的节点列表。

节点 Node / Server

节点是订阅里的一条具体服务器配置,包含地址、端口、协议和加密方式等连接所需的信息。

客户端 Client

客户端是运行在你自己设备上的软件,负责解析订阅、选择节点并按规则转发流量。

来源与说明

  1. 本站编辑部整理

    依据主流桌面客户端(Clash 系、sing-box 系)的模式实现归纳。

本词条最后更新: