入门指南 预计阅读 9 分钟

Clash 规则模式、全局模式与直连模式的区别及日常选择建议

对比规则、全局、直连三种代理模式的流量走向与适用场景,说明为什么日常推荐规则模式,以及临时切换全局时需要注意什么。

先选规则模式,再确认流量是否进入 Clash

日常使用优先选规则模式:需要代理的请求交给代理策略组,本地设备和适合直连的网站保留直连。全局模式更适合短时间排查分流问题,直连模式则适合比较原始网络表现。三者改变的是内核如何处理已经接收到的连接,不是网络加速档位。

先分清两层设置:系统代理、TUN 或 Android VPN 决定流量怎么进入内核;规则、全局、直连决定进入后怎么出去。只把模式切成全局,却没有开启系统代理,也没有让目标程序使用代理,这个程序仍可能直接访问网络。

三种代理模式的流量走向

模式与字段值 连接如何选择出口 常见用途
规则:rule 依次匹配规则,使用首条命中规则指定的策略 日常分流、局域网访问、按域名选择出口
全局:global 使用内置 GLOBAL 策略组的当前选择 临时绕过规则分流,比较访问结果
直连:direct 通过 DIRECT 直接连接目标 检查本地网络、比较代理前后差异

规则模式:命中什么策略,就走什么出口

规则通常按配置中的顺序从上到下判断,首条命中即决定策略。策略可以是 DIRECT、REJECT、某个节点,也可以是一个代理组。规则模式并不意味着“所有境外网站自动代理”,实际结果由订阅提供的规则、规则集和兜底策略共同决定。

例如,域名规则把某个服务交给 PROXY,但这个组当前选的是 DIRECT,连接最终依然直连。排查时必须同时看“命中的规则”和“策略组当前选择”,不能只看模式按钮。

全局模式:仍然需要选择 GLOBAL 的出口

切换全局后,常规规则列表不再负责为这些连接分流,内核使用 GLOBAL 的当前选择。不同客户端可能把它显示为“全局”或“GLOBAL”。如果这里选的是直连,切到全局也不会获得代理出口;如果选的是另一个策略组,还要继续确认那个组最后选中了什么节点。

全局模式也不会修复过期订阅、节点认证失败或服务器不可达。原先用于局域网直连的规则不再按规则模式生效,访问打印机、NAS 或路由器管理页时可能出现变化;不过被 TUN 路由排除的流量本来就不会进入这一步。

直连模式:不经代理节点,不代表内核停止工作

直连模式下,进入内核的连接通过本地网络直接访问目标。客户端仍可能监听端口、接收系统代理请求、运行 TUN 和 DNS 服务。因此,“切直连”与“退出客户端并恢复系统网络设置”不是同一个测试。如果怀疑 TUN 路由或 DNS 设置有问题,只切直连不足以排除这些因素。

YAML 中的 mode、rules 与策略组怎么对应

配置字段是顶层的 mode,常见取值为 rule、global、direct。下面是规则片段,不是完整订阅。使用前必须确认现有配置中已经有名为 PROXY 的节点或策略组;若实际组名是“节点选择”,应将两处 PROXY 都替换成完全一致的组名。

# 合并到已有配置,不要用此片段覆盖完整订阅。
mode: rule

rules:
  - DOMAIN-SUFFIX,example.com,PROXY
  - 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
  - MATCH,PROXY
  • DOMAIN-SUFFIX,example.com,PROXY:匹配示例域名本身及其子域名,适合解释域名分流,并非某个真实服务的推荐规则。
  • IP-CIDR:这里覆盖三段常见私有 IPv4 网段;它们不是完整的本地地址例外清单,回环、链路本地和 IPv6 等地址需按网络环境另行考虑。
  • no-resolve:不为了匹配这条 IP 规则主动发起域名解析,不等于关闭整个客户端的 DNS。
  • MATCH,PROXY:接住前面未匹配的连接。若将 MATCH 放在第一条,后续规则就没有匹配机会。

切换为全局时,顶层字段可改成下面这一行,但具体出口仍由运行时的 GLOBAL 选择决定:

mode: global

需要让内核收到的连接直连时,使用:

mode: direct

Clash 与 Clash Meta(现通常称 mihomo)的具体扩展字段并不完全相同,尤其是 DNS、TUN 和进程匹配相关功能。本文的三种模式属于基础概念;复制其他高级字段前,应在客户端的“关于”或内核信息处确认实际使用的内核,而不是只看应用名称。

日常选择:规则模式保留哪些实际好处

规则模式的价值是让不同请求走合适的出口,而不是保证每个网站都更快。代理节点的带宽、线路质量、目标站点和本地网络仍然决定体验。合理的规则能避免让局域网访问、无需代理的下载和需要特定出口的服务全部挤到一条线路上。

  • 网页与办公服务:按域名分流,国内可直接访问的服务通常保留直连,需要代理的服务使用指定策略组。
  • NAS、打印机与路由器:为实际本地网段安排直连,并检查 TUN 路由排除设置,避免本地访问被送往远端出口。
  • 账号登录:让同一服务的相关域名尽量使用一致出口;登录过程中反复切节点,可能触发额外验证。
  • 下载与大流量任务:先在连接面板确认出口。全局模式下,这些任务也可能消耗代理线路的流量额度。

不要为了“更彻底”长期保留全局。它只是减少了规则分流这个变量,并没有增加节点质量,也没有扩大系统代理的接管能力。若规则模式只有一个网站异常,通常应修正该网站的匹配规则或策略组,而不是长期改变所有连接的出口。

规则打不开、全局能打开:按这五步定位

这是最适合临时使用全局模式的情况。测试时尽量保持同一个节点、同一个网址和同一个网络,只改变模式,否则结果无法说明是规则还是线路的问题。

  1. 记录基准设置。记下当前模式、规则命中的组,以及该组所选节点。打开客户端的“连接”或“Connections”页面,准备观察新连接。
  2. 在规则模式重现。关闭目标网站相关标签页后重新打开,查看目标域名、命中规则和最终链路。留意是否意外命中 DIRECT、REJECT 或错误的兜底组。
  3. 切到全局并选同一节点。在“代理”或“Proxies”页面找到 GLOBAL,选择要比较的出口。不同客户端菜单位置不同,应以界面实际显示为准,不要把“系统代理”开关当成模式选择。
  4. 重新建立连接再比较。模式切换通常不会把已有 TCP 连接迁移到另一个出口。可在连接面板关闭目标连接,或彻底关闭对应应用后再启动;注意不要误关仍在下载的任务。
  5. 恢复规则并修正原因。若全局正常而规则失败,优先检查规则顺序、远程规则集是否加载成功、组名是否一致,以及相关子域名是否遗漏。改完后回到规则模式复测。

用明确的代理端口确认请求进入内核

如果当前配置确实使用 mixed-port: 7890,可在桌面终端运行下面的命令,让一次 HTTPS 请求明确经过本地 HTTP 代理。Windows PowerShell 建议使用 curl.exe,避免旧环境中的同名命令别名造成参数差异。

curl --proxy http://127.0.0.1:7890 --connect-timeout 10 --max-time 20 -I https://example.com/

Windows 对应写法:

curl.exe --proxy http://127.0.0.1:7890 --connect-timeout 10 --max-time 20 -I https://example.com/

如果实际监听端口是 7891,命令也必须同步修改。这个测试只能证明该次请求经由指定端口,不能证明所有应用均已接管,也不能仅凭返回状态码认定使用了远端节点。最终出口应结合连接面板的策略链判断。连接被拒绝时,先查内核是否运行、端口是否一致,不要急着改规则。

模式切换后仍异常,重点看 DNS、TUN 和旧连接

全局模式不会自动修好 DNS

代理模式与 DNS 配置不是同一个开关。使用 mihomo 时,解析行为还可能受 dns.enhanced-mode、nameserver、nameserver-policy 等字段影响。切到全局后,不能据此断言所有 DNS 请求都经由代理,更不能断言应用自己的加密 DNS 已被接管。

遇到“域名打不开,但网络似乎正常”,先看日志是否出现解析超时,再检查当前 DNS 配置是否被覆写。不要同时更换模式、解析服务器和节点;一次改一个变量,才有机会找到真正原因。

TUN 是入口,不是第四种代理模式

TUN 开启后仍然可以选择规则、全局或直连。桌面端要确认虚拟网卡和路由是否建立,Android 端要确认 VPN 授权已生效。应用排除列表中的程序,即使当前显示全局模式,也可能不经过内核。反过来,直连模式下 TUN 仍可继续接收并转发流量。

直连失败不一定是代理规则的问题

如果规则、全局和直连都失败,先检查本地网络、目标服务状态、端口监听以及内核日志。若需要完全绕开客户端进行对照,应先关闭系统代理与 TUN,再正常退出客户端,确认系统没有残留代理设置。只切换到直连,无法排除内核 DNS 和路由层面的影响。

Clash最新版下载