为什么桌面用户会盯上 TUN 模式

在大多数图形客户端里,「一键开启」往往默认走的是系统代理:由 Clash 告诉操作系统「HTTP/HTTPS 流量请把请求交给本机某个端口」。浏览器、以及尊重系统代理设置的应用会跟着走;但不少程序要么内置自己的网络栈,要么直接发 TCP/UDP,不读系统代理表。于是你会看到:网页能开,游戏仍掉线,终端里的 curl、包管理器或 IDE 插件却像「没开梯子」。

Clash TUN 模式的思路是在更底层挂一张虚拟网卡,由系统把符合策略的流量交给这张网卡,再由内核把包送进 Clash 处理。对应用而言,它只是在正常访问目标地址,不必显式配置代理。代价是:你需要管理员权限、正确的驱动或系统扩展、以及更谨慎的 DNS 与路由设置——任何一环配错,都容易表现为开启后整机上不了网。下面先用对照表把概念钉死,再分平台说怎么开、怎么救。

TUN 模式与系统代理:一张表看清差异

不同客户端菜单名称略有出入(如 TUN、虚拟网卡、Enhanced Mode、Mixin 等),但底层大致可归入下表两类路径。阅读时请记住:系统代理解决的是「会听话的应用」TUN 解决的是「不听话或绕开代理端口的流量」

对比项 系统代理 TUN(透明代理 / 虚拟网卡)
作用层级 应用查询系统代理设置后,把 HTTP(S) 请求发到本地端口 操作系统路由层将流量导向虚拟网卡,由内核侧接入 Clash
典型覆盖 浏览器、部分尊重系统代理的桌面软件 更多 TCP/UDP 场景(仍受规则与模式影响)
权限与组件 一般用户权限即可写入系统代理 常需管理员 / 系统扩展;Windows 常见 Wintun 等驱动
常见副作用 漏网之鱼多、端口冲突、PAC 与手动代理混用混乱 路由或 DNS 环路时易整机断网;需核对绕过局域网与国内域名
适合谁 以浏览为主、希望改动面最小 需要终端、游戏、部分沙盒应用等同桌统一走策略
实践建议 若你仅浏览网页且已稳定,不必强行开 TUN。若你明确遇到「只有浏览器通、别的全直连」,再考虑 TUN,并预留一次「关 TUN → 恢复系统代理」的回退路径。

开启前的共同前提:内核、模式与规则

TUN 依赖 Clash 内核实际支持 TUN 栈;旧版闭源 Premium 与各类分支能力不一,社区主流已转向 Clash Meta(mihomo)。若你刚换客户端或从「仅系统代理」迁过来,建议先对照我们的内核升级教程确认版本与功能开关是否匹配,避免菜单里有 TUN 选项、核心却报不支持或静默失败。

配置层面,规则模式全局模式会直接影响「哪些流量进 TUN 之后仍被如何分流」。若规则集过旧、GEOIP 数据库缺失,或把 DNS 指到了错误的上游,也可能在开启 TUN 后表现为解析失败或黑洞路由。开始排错前,先确认:订阅可用、当前策略组能连通、且未同时叠多套互相改路由的软件(另一条 VPN、公司全局隧道、流量审计工具等)。

Windows 11:如何打开 TUN 与常见权限问题

Windows 11 上,图形客户端通常提供「以管理员身份运行」或安装 Wintun 等驱动的引导。若未提升权限,TUN 可能灰显、开启后立即回滚,或日志里出现创建适配器失败。请右键客户端快捷方式 → 属性 → 兼容性,勾选「以管理员身份运行此程序」;或使用客户端自带的「安装服务 / 安装 TUN」按钮按提示完成驱动安装。企业环境若禁止未签名驱动,需与安全策略管理员确认是否放行虚拟网卡类驱动。

开启后可在「设置 → 网络和 Internet → 高级网络设置」中查看是否出现新的虚拟适配器,名称常含 WintunMeta 或客户端品牌。若此处显示异常(禁用、无驱动、黄色感叹号),优先在设备管理器中卸载异常适配器后重启客户端,让其重新创建。另请关闭与 Clash 抢路由的「全局代理类」软件做对比测试,缩小是否为路由表冲突。

与系统代理并存时,建议明确主路径:要么以 TUN 为主并关闭系统代理写入,要么仅系统代理而不开 TUN。两套同时生效时,少数应用可能出现重复代理或环路,排错难度会陡增。

macOS:系统扩展、隐私与 TUN 开关位置

macOS 上,TUN 往往依赖系统扩展网络扩展框架。首次开启时,系统可能弹出「已阻止来自开发者某某的扩展」之类提示。请打开「系统设置 → 隐私与安全性」,在安全性区域允许加载对应扩展,必要时重启客户端或注销重新登录。Apple Silicon 与 Intel 在权限流程上一致,但若使用侧载或未公证的构建,门禁策略可能更严格,需按官方文档完成例外授权。

部分 Clash 系 macOS 客户端将 TUN 与「增强模式」「虚拟网卡」放在高级或实验选项中,开启前请阅读该发行版 Wiki:有的要求关闭某些自带的「系统代理自动设置」以免重复改表,有的提供「仅 TUN」「TUN + 系统代理」组合。与 iCloud 专用代理、第三方防火墙或 Little Snitch 类工具同时运行时,若出现仅 Safari 通、其他全断,优先检查这些工具对虚拟接口与 Clash 进程的策略。

虚拟网卡出现时,系统里到底发生了什么

可以把 虚拟网卡理解成操作系统里多了一块「逻辑网卡」:Clash 在这块网卡上接收本机要被代理的流量,再按规则决定走哪个节点或直连。路由表会新增指向这块网卡的路由条目;若规则把本不该进隧道的流量也兜了进来,或 DNS 查询被错误地送进代理链,就会出现「能 ping 通 IP 却打不开域名」或「看似连着 Wi‑Fi 却无外网」的现象。

因此,断网排查时很值得花一分钟在客户端日志里看三类信息:TUN 接口是否成功创建、默认路由是否被改写、DNS 劫持或 fake-ip 是否与本地解析冲突。很多案例并非节点坏了,而是DNS 模式与 TUN 同时启用时,局域网或国内 CDN 域名被误送出国,导致页面长时间白屏。

开启 TUN 后整机断网:按顺序排查

下面是一条由浅入深的检查链,建议从上到下执行,避免一上来重装系统或反复切换节点。

  1. 立即回退:关闭 TUN,恢复「仅系统代理」或完全退出客户端,确认网络恢复。若关后仍断,问题在系统或其他软件,不在 Clash。
  2. 看日志:查找 TUN 创建失败、权限拒绝、路由添加失败、DNS 超时等关键字;把首条红色错误与时间点记下来。
  3. 核对模式:误开「全局」且节点不可达时,会像整机关在墙外;先改回规则模式并选一个稳定节点再测。
  4. DNS:尝试在客户端内切换 redir-host 与 fake-ip 相关选项(以你所用核心文档为准),或临时指定可靠的上游 DNS;排除「解析进代理 → 代理又依赖解析」的环路。
  5. 绕过内网与国内:确认规则中有合理的 GEOIP、私有网段、局域网与直连列表;可参考YAML 指南检查规则顺序是否把直连流量误送代理。
  6. 冲突软件:退出其他 VPN、加速器、抓包工具后再开 TUN;尤其是也会改默认路由的程序。
  7. 驱动与扩展:Windows 重装 Wintun 或更新客户端;macOS 重新批准系统扩展后重启。
避免同时叠多套「全流量」方案 若你已在路由器或另一台设备上做透明代理,本机再开 TUN,极易出现双重 NAT 或路由环路。先明确只有一层接管默认路由。

TUN 已开,仍有软件直连或异常:常见原因

TUN 不是魔法:应用若使用硬编码代理、固定 DoH、或走自己的 VPN 隧道,仍可能绕过本机策略。另有一些程序以管理员权限运行,在 Windows 上与未提权的 Clash 路由交互异常,表现为「普通用户开的浏览器走代理,管理员身份的安装器不走」。可尝试同权限级别运行客户端,或查阅该应用是否自带代理开关。

开发者场景下,本地回环、内网 registry、公司 Git 与容器网络需要精细分流;我们的Cursor 与 npm 分流一文对「TUN / 系统代理下如何绕过本地与内网」有专门段落,可与本文对照阅读。若仅个别域名异常,多半仍是规则问题而非 TUN 本身损坏。

写在最后:先选对路径,再细调规则

Clash TUN 模式能把更多流量纳入统一策略,是许多桌面用户从「只会浏览器上网」走向「整台机器网络可控」的关键一步;但它把复杂度从「应用层代理端口」搬到了「路由与 DNS」。把系统代理当作轻量默认,把 TUN 当作按需开启的增强,并在每次故障时优先用「关 TUN、看日志、查 DNS 与路由」的顺序自救,你会少踩很多坑。相比零散试错,Clash 系工具在规则表达与 Meta 生态上更一致:一旦 TUN 与规则理顺,长期维护成本往往更低。

如果你希望在一个入口获取各平台客户端并减少版本混乱,可以从我们的下载中心选择适合自己系统的发行版,把精力留给网络策略本身。

立即免费下载 Clash,开启流畅上网新体验

更多内容可继续浏览技术专栏中的订阅排查、YAML 分流与 Meta 升级等文章,把「订阅 → 模式 → 规则 → TUN」串成一条完整链路。