先分清两个问题:流量是否进入内核,进入后如何出站
Clash 的规则、全局、直连是出站决策模式,不是三种流量接管方式。系统代理、应用手动代理与 TUN 负责把连接送入内核;模式负责决定这些连接下一步交给谁。没有进入内核的连接,不会因为切换到全局模式就自动走代理。
例如,浏览器遵循系统代理设置,可以把请求交给本机代理端口;某个游戏没有使用系统代理,其连接可能仍直接经过物理网卡。两者同时运行时,Clash 的“全局”只对已经接管的那部分连接生效。TUN 能扩大接管范围,但仍受路由、排除项、权限与平台实现影响。
下文适用于常见 Clash 及 Clash.Meta(后续更名为 mihomo)内核的模式概念。图形客户端可能把入口叫作“模式”“代理模式”或“出站模式”;按钮位置和译名不统一,判断时以当前激活模式、连接记录与实际出站链为准。
三种模式对照:规则判断、统一出站与直接连接
| 模式与配置值 | 已接管连接的处理方式 | 典型用途 |
|---|---|---|
规则:rule |
按规则列表匹配,交给命中规则指定的策略 | 日常浏览、境内外分流、局域网例外 |
全局:global |
不按普通分流规则选择出站,交给 GLOBAL 策略 |
验证节点、对照规则问题、临时统一出口 |
直连:direct |
不按普通分流规则选择出站,使用 DIRECT |
检查本地网络、临时恢复直接访问 |
规则模式不等于全部走代理
规则可以指向代理节点、代理组、DIRECT 或 REJECT。因此,规则模式既能代理,也能直连和拒绝连接。一次访问到底走哪条路径,要看命中了哪条规则,以及该规则指向的代理组当前选中了什么。
全局模式不等于所有设备流量都被接管
全局模式通常把已接管连接交给内置的 GLOBAL 选择组。若该组选择的是代理节点,连接才会经该节点出站;若选择了 DIRECT,实际仍是直连。只看到“全局”两个字,不能确认出口已经变化,还要检查全局策略的选择结果。
直连模式不等于退出客户端
直连时,系统代理或 TUN 可能仍然启用,内核也仍可能处理连接与 DNS。它只是将出站策略切为直接连接。需要排除整个客户端对网络的影响时,应另行关闭接管功能,并确认系统代理、路由等设置已恢复;单独点击直连不等价于这一步。
规则模式:按顺序决定哪些连接直连
普通规则列表按从上到下的顺序检查,命中后采用对应策略。具体的域名例外应放在宽泛条件之前,MATCH 作为兜底放在最后。订阅里的节点数量并不能代表规则是否完整;代理节点、代理组和规则列表是三个不同部分。
下面是配置片段,不是可单独导入的完整订阅。它假设现有配置已经定义名为“节点选择”的代理组;实际使用时应替换为配置中真实存在的策略名,并保留原有节点、DNS 等字段。
mode: rule
rules:
- DOMAIN-SUFFIX,example.com,DIRECT
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- GEOIP,CN,DIRECT
- MATCH,节点选择
DOMAIN-SUFFIX,example.com匹配example.com及其子域名;这里用作示例,不能直接代表某类网站清单。- 三个私有 IPv4 网段用于演示局域网直连,不覆盖所有本地地址、IPv6、本机回环或特殊用途网段。
no-resolve表示不为匹配这条 IP 规则而主动解析域名;若连接已有目标 IP,仍可据此匹配。GEOIP,CN依据 IP 地理数据库判断,不等于“所有中文网站”,也不能保证所有境内服务都被准确识别。MATCH接住前面未命中的连接,再交给“节点选择”代理组决定具体出口。
全局模式:用于节点验证与分流对照
全局模式适合减少一个排查变量:暂时跳过普通规则分流,让测试连接使用同一个出站策略。它不能修复过期订阅、错误凭据、节点不可达或 DNS 故障,也不保证每个应用都能正常工作。
- 先记录规则模式下失败的目标域名,以及当前代理组选择的节点。
- 切换到全局模式,在
GLOBAL中选择同一个节点,避免同时改变模式和节点。 - 关闭对应旧连接,再重新访问同一目标;浏览器已有的长连接可能继续沿用原来的出站。
- 查看“连接”或“日志”页,确认新连接确实进入内核,并检查出站链是否包含预期节点。
如果同一节点在全局模式下可用、在规则模式下失败,应优先检查命中规则、策略组选择与兜底规则,而不是立刻更换订阅。如果两种模式都失败,再检查节点连通性、认证、解析与目标服务状态。这只是定位方向,最终仍需结合日志判断。
临时统一出口的取舍
全局模式可能让已接管的局域网连接、软件下载和视频流量也经过代理节点,增加流量消耗与时延。公司内网、NAS 或路由器管理页可能因此无法访问。长期需要“多数走代理、少数直连”时,更适合在规则模式中添加明确例外,而不是反复切换全局。
直连模式:检查本地网络与局域网访问
直连模式适合回答一个具体问题:不经过远端代理节点时,当前网络能否连接目标?例如访问局域网打印机、排查本地门户认证,或对照某个境内服务的访问情况。若目标本身需要代理才能到达,切换直连后失败并不能说明客户端存在故障。
局域网设备无法访问时的检查顺序
- 先用设备的实际 IP 地址测试,例如
192.168.1.1;该地址只是常见示例,应以当前网关或设备地址为准。 - 若 IP 可访问而设备名称不可访问,检查 DNS、搜索域与名称发现;
.local常涉及 mDNS,不能只靠普通 DNS 规则判断。 - 若直连模式可访问、规则模式不可访问,查看私有网段是否误交给代理策略,以及前面是否有更早命中的规则。
- 若两种模式都失败,再检查 Wi-Fi 客户端隔离、设备防火墙、子网差异和其他 VPN 路由冲突。
TUN 开启时,还要区分“进入 TUN 后由 DIRECT 出站”与“通过路由排除而不进入 TUN”。两条路径不是同一回事。对于企业 VPN 或特殊内网,应根据客户端支持情况配置接管排除项,避免同时修改多组路由而失去排查依据。
系统代理、TUN 与模式开关如何组合
模式与接管方式可以独立组合。系统代理加规则模式适合遵循代理设置的桌面应用;TUN 加规则模式可以处理更多不读取系统代理的连接。TUN 加全局模式也不意味着网络必然可用,节点的 UDP 支持、DNS 路径和操作系统路由仍会影响结果。
| 使用场景 | 优先选择 | 需要确认 |
|---|---|---|
| 日常网页与常用应用 | 规则模式 | 应用是否使用系统代理,规则是否指向预期策略 |
| 浏览器可用,游戏不可用 | 先确认接管,再考虑 TUN | 游戏连接是否出现,节点及客户端是否支持所需 UDP 流量 |
| 单个域名疑似分流错误 | 全局模式短时对照 | 使用同一节点和新连接测试 |
| NAS、路由器或公司内网 | 规则模式配置直连例外 | 目标地址、DNS、路由及其他 VPN 冲突 |
手动设置代理端口时,以客户端显示值为准。例如,只有配置明确写了 mixed-port: 7890,应用才应使用对应的本机混合代理端口;127.0.0.1:7890 不是所有客户端通用的固定地址。不要把 external-controller 的控制接口端口填进浏览器代理设置,也不要把本地监听端口当成远端节点端口。
切换模式后仍异常:按连接记录排查
Clash 的模式切换通常针对后续新连接。浏览器连接复用、视频长连接、下载任务和应用内置 DNS 缓存都可能让结果看起来没有变化。测试前先记下原设置,每次只调整一个变量,再用同一目标复测。
- 连接记录里没有目标:先查流量是否进入内核,包括系统代理是否开启、应用是否自带代理设置,以及 TUN 是否成功启动。
- 规则模式命中 DIRECT:检查命中条件是否符合预期;如果应走代理,修改具体规则或规则顺序,不要只切换节点。
- 规则命中代理组但仍直连:检查该组及其下级组是否选中了
DIRECT,不要只看组名。 - 全局模式仍然失败:确认
GLOBAL的实际选择,再查节点握手、认证失败、连接超时等日志。 - 域名失败但 IP 路径有响应:继续检查 DNS;HTTPS 还涉及证书与 SNI,直接用 IP 打开网页不能完整替代域名访问测试。
首次配置可接着查看安装与设置教程;需要确认不同客户端的系统代理、TUN 与平台支持情况,可查看客户端对比。这些能力取决于具体客户端和内核,不能只根据“Clash”名称判断。