日常用规则,排查时切换全局或直连
日常浏览优先使用规则模式:需要代理的目标交给代理策略组,其他目标按配置直连。遇到某个网站打不开,可以短暂切换全局模式,判断问题是否与分流规则有关;需要比较本地网络能否直接访问时,再切换直连模式。三种模式是连接的路由决策方式,不是三档网速,也不是三种加密强度。
本文适用于使用 Clash 配置语法的客户端,也适用于基于 Clash Meta(现名 mihomo)内核的客户端。界面可能把它们显示为「规则 / 全局 / 直连」或「Rule / Global / Direct」。配置文件中对应的值是 mode: rule、mode: global 和 mode: direct。
三种代理模式的流量对照
| 模式 | 进入内核后的处理 | 典型用途 | 主要检查项 |
|---|---|---|---|
| 规则 Rule | 按 rules 顺序匹配,交给命中的策略 |
日常分流、内网直连、不同服务使用不同出口 | 匹配规则、策略组当前选择、兜底规则 |
| 全局 Global | 通常由内置 GLOBAL 组统一决定出口 |
临时比较代理可达性、定位规则误匹配 | GLOBAL 当前选中的节点或策略 |
| 直连 Direct | 由本地网络直接连接目标,不经远端代理节点 | 比较本地网络、检查节点是否影响访问 | 本地网络、目标可达性、DNS 解析 |
这里的「全局」范围是已进入内核的流量。如果某个游戏忽略系统代理,切到全局也不代表游戏连接会自动经过节点。另外,全局组可以选中 DIRECT;此时即便界面显示全局,实际仍可能直连。必须同时确认模式与出口,不能只看开关文字。
规则模式:先命中规则,再选择策略
规则自上而下匹配
规则模式不是按网站名称自动猜测用途,而是执行当前生效配置中的规则。一个连接通常在命中适用规则后就交给对应策略处理,不会继续寻找后面的“更优”规则。把宽泛规则放得过早,可能遮住后面更具体的域名规则。
下面是可合并到现有配置的片段,不是完整订阅。示例中的 代理选择 必须替换成配置内真实存在的策略组名。example.com 是用于说明语法的示例域名,应按实际需求调整。
mode: rule
mixed-port: 7890
rules:
- DOMAIN-SUFFIX,example.com,代理选择
- 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,代理选择
DOMAIN-SUFFIX,example.com匹配该域名及其子域名,不是任意包含这段文字的域名。- 三条
IP-CIDR覆盖常见 IPv4 私有地址段,适合展示内网直连;是否命中仍取决于连接可用的目标地址信息。 no-resolve表示不为匹配这条 IP 规则额外触发域名解析,并不表示整个连接不需要 DNS。MATCH是兜底规则,应放在末尾。示例让未命中的连接进入代理组,也可以按需求改为DIRECT。
策略组不是固定节点
规则命中「代理选择」后,还要继续看组内选择。如果这是 select 类型的手动选择组,当前可能选了某个节点,也可能选了另一个策略组,甚至是 DIRECT。因此,看到规则命中代理组,不等于已经确定使用了远端节点。
在客户端的「连接」或「Connections」页面中,找到刚发起的请求,检查目标域名、命中规则和代理链。若规则正确、代理链却走向直连,应先检查策略组选择,而不是继续添加重复规则。
全局模式:适合对照测试,不代替流量接管
全局模式通常绕过普通 rules 列表的分流选择,把进入内核的连接交给 GLOBAL。切换后应打开客户端的代理选择页面,确认全局组选择了可用节点。有些客户端会把全局组放在单独区域,其选择不一定与规则模式中的常用策略组同步。
- 记录规则模式下失败的网站与时间,避免同时更换 DNS、节点和配置。
- 在「模式」中选择「全局 / Global」,为
GLOBAL选中一个明确的节点。 - 关闭该网站的旧连接,再重新访问相同网址。
- 若全局成功、规则失败,回到规则模式检查该连接的匹配规则和实际出口。
这个对照只能缩小范围,不能单独证明规则有错。两种模式如果选择了不同节点,结果差异也可能来自节点出口。更可靠的做法是让全局组与规则命中的策略组最终指向同一个节点,再比较访问结果。
直连模式:绕过节点,不等于关闭客户端
直连模式让已进入内核的连接从本地网络出站。它适合回答一个具体问题:不经过远端代理节点时,这个目标是否可达?若直连正常而指定节点失败,应继续检查节点、远端出口或相关协议支持,而不是把直连正常理解为所有配置都正确。
切到直连后,客户端依然可以接收连接,系统代理也可能仍然指向本地端口,TUN 虚拟网卡也可能继续工作。内核内置 DNS、Fake-IP 映射等组件是否参与解析,取决于当前 DNS 与流量接管配置。因此,直连模式不能完全模拟“客户端从未运行”的网络环境。
如何比较真正的本地网络
- 先切换直连,用同一目标做一次测试。
- 如需进一步隔离客户端影响,再关闭系统代理或 TUN,并确认没有其他代理工具接管。
- 重新建立连接;有必要时关闭并重开浏览器,减少旧连接复用。
- 比较两次结果,测试后恢复原来的接管方式和规则模式。
不要在系统代理仍指向 127.0.0.1:7890 时直接退出监听该端口的客户端,否则遵循系统代理的应用可能连接失败。示例端口 7890 只是常见配置值,实际应以客户端「设置」中的 HTTP 或 Mixed 监听端口为准。
模式切换不生效:按连接链路逐项检查
第一步:确认请求是否进入内核
打开「连接 / Connections」页面,再访问一个新页面。若完全看不到对应连接,优先检查系统代理是否开启、应用是否设置了独立代理,以及浏览器扩展是否覆盖系统设置。Windows 11 可到「设置」→「网络和 Internet」→「代理」查看;macOS 可到「系统设置」→「网络」→ 当前网络服务的「详细信息」→「代理」查看。
系统代理主要供遵循代理设置的应用使用,不等于系统级全部流量接管。需要接管更多应用时,可评估 TUN;但 TUN 还涉及路由、权限与 DNS 设置,不应为了测试一个网页就同时改动所有选项。
第二步:用显式代理请求排除系统设置差异
如果当前配置确实监听本机 Mixed 端口 7890,可使用下面的命令做对照。Windows 使用 curl.exe,避免部分 PowerShell 环境把 curl 解释成其他命令;macOS 与 Linux 通常使用 curl。
# Windows:明确使用本机 HTTP 代理
curl.exe --noproxy "" -I --connect-timeout 10 --max-time 20 --proxy http://127.0.0.1:7890 https://example.com/
# Windows:绕过代理
curl.exe --noproxy "*" -I --connect-timeout 10 --max-time 20 https://example.com/
# macOS / Linux:明确使用本机 HTTP 代理
curl --noproxy "" -I --connect-timeout 10 --max-time 20 --proxy http://127.0.0.1:7890 https://example.com/
这些命令将连接超时设为 10 秒、总耗时上限设为 20 秒,便于避免长时间等待,不是性能实测结果。测试具体故障时,应将示例网址换成实际目标。直连命令只绕过 curl 的代理选择;若 TUN 仍开启,底层连接仍可能被接管,不能据此断言流量完全绕过客户端。
第三步:检查旧连接、DNS 与配置覆盖
- 旧连接复用:模式切换通常影响新连接,不保证已有 HTTP/2、WebSocket 或下载连接立即换出口。先关闭目标连接再重试,不必一开始就重启整台设备。
- DNS 失败:日志若显示解析超时,先检查解析器是否可达。改成全局并不自动修复 DNS,Fake-IP 模式也不代表目标域名永远不需要真实解析。
- 配置未生效:确认选中的是当前订阅配置,修改后已重新加载。客户端的覆写、合并或脚本功能可能改变最终的
mode与rules。 - 连接被拒绝:若连接详情显示
REJECT,检查规则命中原因;若是本地端口连接被拒绝,则先确认内核已运行且端口一致。
需要继续定位时,可参考本站问题诊断。记录目标域名、模式、实际出口、错误信息和时间,比只描述“切换后没反应”更容易复现问题。分享截图前,应遮住订阅地址、节点凭据及个人连接信息。
常见问题与日常设置建议
全局模式一定比规则模式快吗?
不一定。延迟与速度主要取决于本地网络、节点线路、目标服务和拥塞情况。全局还可能把原本适合直连的连接送往远端节点。比较速度时应固定目标、节点与测试条件,不能只比较模式名称。
开了 TUN,还需要规则模式吗?
需要根据分流需求选择。TUN 是流量接管方式,规则模式是出口决策方式,两者可以同时使用。TUN 将连接带入内核后,规则仍可决定直连、代理或拒绝;切到全局则改变后续出口选择。
更新订阅后,模式和节点选择会不会改变?
取决于客户端如何保留界面状态、加载配置及应用覆写。更新后应检查当前模式、策略组是否仍存在以及所选节点是否被移除。需要长期保留的自定义分流,应使用客户端支持的覆写或合并机制,直接修改订阅生成文件可能在更新时被替换。
日常可保持「规则模式 + 明确的策略组选择」,遇到故障再依次确认流量接管、规则命中、出口节点和 DNS。每次只改一个变量,测试后恢复原设置。关于策略组、Fake-IP 和 TUN 的概念,可继续查阅术语表;首次配置则从入门指南开始。