梯子地图

原理

梯子TUN模式是什么意思:什么时候要开,开了有什么变化

短答

梯子的 TUN 模式是让客户端在系统里建一张虚拟网卡,所有程序发出的数据包先进这张网卡再由客户端分流,所以不读系统代理的游戏和终端命令也能走节点。平时只开系统代理就够用,某个程序开了梯子仍然直连时才需要开 TUN。开启要装系统服务或者给管理员权限,关闭要在客户端里拨回开关,别直接结束进程。

更新于

你现在多半停在这一步。客户端装好了,订阅也导入了,浏览器能打开海外网页,但某个游戏、某条命令行工具,或者某个不经过浏览器的程序还是连不上。设置页里有一个叫 TUN 或者虚拟网卡的开关,你拿不准该不该拨。这一页把这个开关讲清楚,先讲它和系统代理差在哪,再讲什么时候开、开了会看到什么、关的时候要注意什么。

梯子 TUN 模式和系统代理差在哪

系统代理是写在系统设置里的一行地址和端口。浏览器这类程序启动时会去读这一行,然后主动把请求发到客户端监听的端口上,Clash Verge Rev 的混合端口默认是 7897。读不读这一行,由程序自己决定,所以总有一部分程序对它视而不见。

TUN 走的是另一条路。客户端向系统申请一张虚拟网卡,再把默认路由指到这张网卡上。此后任何程序发出的数据包都会先进网卡,再由客户端按规则决定直连还是走节点。程序不需要知道代理的存在,也没有机会绕开它。mihomo 和 sing-box 的文档都把 TUN 归在入站(inbound)一类,和 HTTP、SOCKS 端口并列,意思是它只是另一个收流量的口子,分流规则和节点还是原来那一套。

两种方式放在一张表里对照。

对照项 系统代理 TUN 模式
接管范围 只有主动读代理设置的程序 整台设备在网络层发出的流量
需要的权限 普通用户 管理员权限,或者先装一个系统服务
程序能不能绕开 能,程序可以无视那行设置 基本不能,数据包在网卡这一层就被截走
对 DNS 的影响 程序和系统各自解析 客户端接管解析,部分客户端会临时改系统 DNS
常见的开关名 系统代理 TUN 模式、Tun 模式、虚拟网卡、虚拟网卡模式

什么时候要开 TUN 模式

判断只需要做一件事。先把系统代理打开,再去用那个连不上的程序,看它有没有走节点。走了就不用碰 TUN,没走,这个程序多半没有读系统代理,TUN 就是给它准备的。

官方文档里举的例子集中在两类。Clash Verge Rev 的文档拿游戏和命令行举例,Surge 的手册举的是 macOS 自带的邮件程序。本站在 Mac 上走 Clash Verge Rev 教程时记下的例子是 App Store 版的 Telegram 和终端命令,它们同样不读系统代理。归纳起来,下面几种情况才轮到 TUN 出场。

  • 游戏客户端和游戏启动器。它们大多直接连自己的服务器,对系统代理不感兴趣。
  • 终端里跑的命令。git、curl、各种包管理器默认只认环境变量,系统设置里那一行对它们无效。
  • 自带网络库的桌面程序。邮件客户端、部分聊天软件的商店版属于这一类。
  • 你想让整台设备的流量都走同一套分流规则,包括系统后台服务的流量。

反过来,只在浏览器里看网页和视频的,系统代理已经够用,TUN 开了只多一道权限和一张网卡。

开了 TUN 以后会看到什么变化

第一次拨开开关,客户端会先向你要权限,不同系统的画面不一样。

  • Windows 上的 Clash Verge Rev v2.5.5 会弹出提示,告诉你要么装一个系统服务,要么用管理员权限运行,装完服务开关才能保持打开。服务装不上的时候,内核会以 Sidecar 方式运行,这时 TUN 拨不开,开关会自己弹回去。
  • macOS 上会弹系统的授权询问。以 Surge 为例,它从 5.8.0 起改用 Network Extension 实现虚拟网卡,第一次开会弹系统询问,点允许。
  • Linux 上的 FlClash 要求系统里有 pkexec,AppImage 包无法给内核授权,想开虚拟网卡要用 deb 或 rpm 包。
  • clashN 要求整个程序以管理员身份运行,标题栏会直接显示这几个字。

权限过了以后,有三处会变,你可以逐一对照。

  1. 网络适配器列表里多出一张网卡。Windows 在“网络连接”里能看到,macOS 在“系统设置”的网络列表里,Surge 建的那张叫 Surge VIF。
  2. 系统 DNS 可能被改掉。Clash Verge Rev 开启 TUN 时会把系统 DNS 换成固定的公共 DNS,停用后换回来。
  3. 系统代理那一行变成可选项。Clash Verge Rev 的说明写明 TUN 开后不必再开系统代理。GUI for Clash 的官方排查文档则把“系统代理和 TUN 同时打开”列为要先检查的一项。本站的判断是,两个一起开通常不会出错,但排查问题时先关掉一个,剩下的现象更好解释。

确认 TUN 在干活有三个办法,按顺序试。先打开之前连不上的那个程序再试一次。再去客户端的连接面板看,会出现以这个程序名为来源的连接记录,后面跟着它命中的规则和节点。最后在一个 IP 查询页看出口地区,页面上的地区变成你选的节点所在地才算,怎么读这类页面见梯子 IP 查询怎么看出口地区。

关 TUN 模式的顺序和关错了怎么办

关的顺序是先在客户端里把开关拨回去,等网卡从列表里消失,再退出客户端。直接结束进程、强制关机,或者客户端自己崩溃,虚拟网卡和被改过的 DNS 可能留在系统里,表现是客户端已经关了,但所有网页都打不开。

遇到这种情况,先把客户端重新打开,让它把 TUN 正常关一次,多数时候网络就回来了。还不行,去系统的网络设置里把 DNS 改回自动获取,再禁用那张多出来的虚拟网卡。路由器上的 OpenClash 改 TUN 设置要重启内核,等 3 到 5 秒再看结果。

和 TUN 相关的反馈,几家客户端在 2026 年 9 月都有。Clash Party 仓库有两条未关闭的 Issue,#2179(2026-09-22)是 Windows 11 打开 TUN 后无法使用,#2167(2026-09-21)是 macOS 上 TUN 重启后 DNS 覆写被重置。Clash Verge Rev 升级到 v2.5.5 后有用户报告内核起不来、降到 Sidecar 或 TUN 异常(#8035,2026-09-23;#8043,2026-09-24),官方到核验日 2026-09-24 没有给出结论。Clash Meta for Android 有一条未合并的 PR #832(2026-09-15),内容是 TUN 路由排除设置在安卓上未生效。这些编号你可以拿去仓库里对照自己的版本。

什么时候这个答案不成立

  • 版本变了。Clash Verge Rev 从 v2.5.5(2026-09-22)起把这个开关改叫“虚拟网卡模式”,老版本叫 Tun 模式,1.x 还有一个单独的“服务模式”开关。其他客户端的版本本站没有逐一核对,菜单位置以你手里的版本为准。
  • 手机和路由器。安卓、iOS、鸿蒙的客户端以系统 VPN 服务的形式运行,本站没有在手机上走过这一段。路由器上的实现方式和电脑不同,这篇只讲了 OpenClash 改设置后要等几秒。
  • 公司电脑和校园网。这类环境常有自己的 VPN 客户端或者组策略,TUN 会和它们争默认路由,本站没测过。
  • 冲突软件。Surge 官方列出可能冲突的有 Little Snitch、AdGuard、Viscosity,其他客户端的冲突清单资料未写。
  • 时间。上面的 Issue 编号和状态按 2026-09-24 前后的核验,之后可能已经关闭或修复。

接下来去哪

延伸问题

正文没展开、但和这个问题挨着的几条。点问题展开答案。

开了 TUN 模式还要再开系统代理吗

可以不开。Clash Verge Rev 的说明写明 TUN 开启后系统代理不再是必需的。两个同时开一般也能用,但排查连不上的问题时先关掉一个,少一个变量。GUI for Clash 的官方排查文档就把两个同时打开列为要先检查的一项。

开 TUN 模式以后游戏延迟会下降吗

不会。TUN 只是改变了流量被接管的方式,数据包仍然走你选中的那个节点,延迟由节点到游戏服务器的距离决定。TUN 解决的是游戏完全没走代理的问题,延迟高低要换节点才会变。

手机上的梯子客户端有 TUN 模式吗

安卓和 iOS 的客户端通常以系统 VPN 服务的形式运行,界面上多半没有单独的 TUN 开关,设置里的分应用代理、排除应用对应的是同一层功能。本站没有在手机上走过这一段,手机端的现象以客户端自己的文档为准。

参考

  1. Clash Verge Rev 官方文档
  2. mihomo 文档,TUN 入站
  3. sing-box 文档,TUN 入站
  4. Clash Verge Rev 仓库

相关问答

下一步问题没解决,回问答目录找挨着的那一条;要动手装,去梯子客户端按系统走;和这一篇相关的还有Clash Verge Rev Windows挂梯子教程:10 步,节点都超时先查哪里。