一、先对齐现象:国内站变慢常见长什么样
如果你遇到的是下面几类情况,就可以把「误走代理」放进怀疑列表,而不是急着换节点。第一,只有访问大陆常见电商、银行、政务或本地服务时明显卡顿,访问境外站点反而正常。第二,页面能打开,但首包时间很长,图片与脚本加载断断续续,像是从很远的地方绕了一圈。第三,同一 Wi-Fi 下,关掉系统代理或退出客户端后,境内站立刻恢复流畅。第四,客户端日志里能看到境内域名的连接被标到了某个境外策略组或节点名,而不是 DIRECT。
这与「全网都慢」「只有某一个境外站超时」不同:后者更像节点质量、DNS、TLS 或规则漏写境外域名。境内站异常却常和分流顺序、GEOIP 是否生效、以及订阅里是否把 MATCH 全部丢进代理有关。我们在 fake-ip 与 DNS 排查 一文里强调过:先把解析与模式问题剥离开;本文则聚焦规则层如何把大陆流量送回直连。
二、为什么「开着代理」反而拖慢境内站
Clash 的核心是按规则决定每一流往哪里走。当某条规则过早地把「所有未命中的流量」送进代理,而又没有在更前面把中国大陆或私网地址标成直连时,境内访问也会跟着走隧道。对用户来说,体感就是:明明访问的是大陆机房,却要先出境再回来,或者走一条对大陆站点并不友好的跨境路径。
另一个常见误区是以为「我用了全局模式才会这样」——实际上,很多订阅模板在 MATCH 或等价兜底规则里写的是代理策略组,若缺少 GEOIP 或 geosite 的境内前置规则,效果与「全局」相差无几。再加上部分节点对 QUIC、HTTP/3 或长连接支持一般,浏览器表现为视频转圈、登录跳转慢、网银控件握手久。
| 策略 | 对境内站的大致影响 |
|---|---|
| DIRECT(直连) | 流量按本地运营商路径访问大陆目标,通常延迟最低;适合明确的大陆域名与大陆 IP 段。 |
| 代理策略组 | 流量经远端转发;若目标实际在大陆,可能绕路、抖动或被站点风控另眼相看。 |
| 规则顺序错误 | 即便写了 GEOIP CN,若排在过宽的域名规则之后,仍可能永远匹配不到。 |
三、第一步:确认是不是误走代理
在改 YAML 之前,建议用客户端自带的连接列表、日志或规则命中预览做一次「验伤」。打开问题页面复现一次,然后在 Clash 系客户端里查看该连接对应的规则链:最终动作是 DIRECT 还是某个 PROXY 组。若是后者,再向上看是哪一条规则先命中——往往是一条过宽的 DOMAIN-SUFFIX、GEOSITE 订阅段,或直接把 MATCH 指到了代理。
和 DNS 表现区分开
有时日志里域名对、策略也对,但页面仍怪:要先排除 fake-ip 与 DNS 污染问题,再谈 GeoIP。可对照 fake-ip-filter 一文 做短时对照实验;若关闭 fake-ip 后仅解析异常消失、策略仍指向代理,则继续回到本节查规则。
四、第二步:规则顺序与 GEOIP CN → DIRECT
Clash 自上而下匹配规则,顺序即语义。一套常见、可读性好的骨架是:先处理明确要直连或要代理的域名,再处理私网与局域网,然后用 GEOIP 把中国大陆标成 DIRECT,最后再用 MATCH 把剩余流量交给代理策略组。这样「大陆 IP 走直连、境外 IP 走代理」的大框架就立住了。
GEOIP 行里为什么常写 no-resolve
在基于域名的规则尚未耗尽时,部分流还没有解析出最终 IP。no-resolve 的作用是仅在具备 IP 信息时才参与 GEOIP 匹配,避免在纯域名阶段误触发或重复解析。具体行为以你所用的 Mihomo / Meta 版本文档为准;若你的模板来自较旧内核,请核对字段是否仍兼容。
示意片段(请按实际策略组名称替换)
下列 YAML 仅示意结构,域名列表与策略组名需与你的订阅合并逻辑一致,避免重复键或缩进错误。
# Rule order matters: specific domains first, then private, then CN, then fallback.
rules:
- DOMAIN-SUFFIX,localhost,DIRECT
- IP-CIDR,127.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
- GEOIP,private,DIRECT,no-resolve
- GEOIP,CN,DIRECT,no-resolve
- MATCH,PROXY
若你更习惯用 geosite 管理大陆域名,也可以在 IP 规则前插入 GEOSITE,cn,DIRECT 一类条目(名称以你所用规则集为准)。要点仍是:不要把过宽的「全量代理」规则插在 GEOIP CN 之前,否则大陆 IP 永远没有机会匹配到直连。
五、GeoIP 资料与 geosite:别忘更新
GeoIP 判断依赖本地的 GeoIP 数据库或等价数据源。资料过旧时,可能出现新段大陆 IP 未被标成 CN,从而继续误走代理。养成定期在客户端内更新 GeoIP / Country.mmdb(或你所用发行版对应的下载项)的习惯,尤其在遇到「只有个别站点慢、换网络又正常」时,先更新再排查。
使用 rule-providers 拉取远程 geosite 规则集时,同样要关注更新周期与回退:拉取失败时客户端是否仍用上一份缓存,避免空白规则导致全部被兜底到代理。若你不确定当前生效的是哪一份规则,可在支持预览的客户端里查看规则集版本或哈希。
六、与 DNS、fake-ip、TUN 的交叉影响
即使规则写得正确,若 DNS 先把域名解析到「不像大陆」的地址,GEOIP 阶段看到的可能也不是你预期的结果。此类问题在开启 fake-ip 时更要结合嗅探与 filter 一起看,避免把解析问题误判成分流失败。建议将本文步骤与 fake-ip 排查 串联:先确认连接日志里的目标 IP 与策略,再决定是动规则还是动 DNS。
TUN 模式会改变系统默认路由与 DNS 劫持范围,有时表现为「浏览器直连正常、某几个 UWP 或系统组件仍绕圈」。若你启用了 TUN,请同时阅读 TUN 与 Windows 路由防火墙排查,确认没有全局环回或防火墙拦截,再回到 GEOIP 与 DIRECT 段落微调。
七、银行、政务与企业内网:额外建议
即便大陆 IP 已走 DIRECT,部分金融与政务站点仍可能对「本机存在代理软件、存在多网卡或证书扫描」敏感。若你已确认策略为直连但仍有控件加载失败,可尝试:临时关闭浏览器的 QUIC 实验选项做对照;避免同一机器上多代理软件争用虚拟网卡;在企业内网场景下,遵守单位的信息安全规定,必要时改用合规接入方式。
对于分流清单里未覆盖的大陆域名,可以按需补充 DOMAIN-SUFFIX 或 geosite 规则,放在 GEOIP 之前,以减少「先误判再兜底」的窗口。维护时建议记录域名、原因、日期,方便下次换订阅或升级客户端后快速合并。
八、小结
代理常开时国内网页变慢,优先怀疑境内流量误走代理:用连接日志确认命中规则,再调整规则顺序,让私网、GEOIP 中国大陆落在 DIRECT,境外由 MATCH 进入代理策略组。同步保持 GeoIP 资料与规则集较新,并在 fake-ip 与 TUN 场景下核对 DNS 与路由,避免误判。
相比在论坛碎片里试错,把「大陆直连 + 境外代理」这条主链路写清楚,再配合本站其它排障文分模块检查,维护成本会低很多。若你希望从可信渠道获取客户端与基础文档,可先阅读 本站配置文档,按本文检查规则段与资料更新。
相比其他同类工具,Clash 系在规则可读性、GeoIP 与多模式协同上资料较完整;理顺 DIRECT 与代理边界后,境内外站点往往能同时保持可用与流畅。