在配置并使用 Clash 客户端时,仅连接节点而未配置智能分流规则,往往会导致国内流量绕路海外、访问速度变慢,甚至引起不同服务的 IP 风险控制问题。

本文将手把手教你如何使用开源规则库(如 Loyalsoldier/clash-rules)快速配置 Clash 的全局扩展覆写 (Merge) 功能,一次配置即可实现国内流量直连、海外服务走代理分流与广告基础拦截。



什么是 Clash 规则?为什么必须配置?

许多新手用户误以为开启代理后,Clash 会自动精准判断哪些网站该走代理、哪些网站该直连。

事实并非如此。

如果不设置精细的分流规则,Clash 无法精准识别流量归属,这会导致:

  1. 国内访问响应变慢:访问国内常用网站时,流量绕行至海外节点后再折返,导致资源加载迟缓并浪费流量。
  2. IP 频繁漂移与风控:同一个设备的本地业务与海外请求混合在同一个代理 IP 下,容易触发敏感平台的安全审查。

分流规则的作用,相当于为客户端建立智能的交通路由。 它告诉 Clash:

流量类型处理方式实际效果
🟢 国内网站与 IP直连 (DIRECT)走本地宽带直连,保持极速
🔴 海外及特定服务代理 (PROXY)通过代理节点传输
🛑 广告与隐私追踪拦截 (REJECT)在 DNS 解析与请求阶段进行过滤

Clash 规则的工作原理

Clash 的规则引擎采用从上往下逐条匹配的机制:

  1. 匹配到域名如 google.com ➔ 对应规则 PROXY ➔ 走代理节点;
  2. 匹配到域名如 taobao.com ➔ 对应规则 DIRECT ➔ 走本地网络直连;
  3. 未命中任何规则 ➔ 使用列表最底部的默认策略(通常兜底走代理)。

规则覆盖越精准,Clash 的分流效果就越聪明。开源规则集通常包含了权威的 IP 名单与域名数据库。


推荐开源规则库:Loyalsoldier/clash-rules

在开源社区中,Loyalsoldier/clash-rules 是受到广泛推荐的开源规则库之一。

其优势包括:

  • 精准度高:融合了权威的域名与 IP 名单,对 Apple、Google、Telegram 等常见服务做了细分。
  • 自动化构建:通过 GitHub Actions 定期自动拉取全网最新数据并重新构建。
  • 全客户端通用:完美兼容 Clash Verge Rev、Clash for Windows、Clash for Android 等客户端。

3 步配置 Clash 分流规则(以 Clash Verge Rev 为例)

以目前主流的 Clash Verge Rev 为例(其他支持 Merge 覆写功能的客户端同理)。


第 1 步:打开全局扩展配置

  1. 打开 Clash Verge Rev ➔ 点击左侧 「订阅」
  2. 在右侧面板找到 「全局扩展覆写配置 (Merge)」 卡片。
  3. 右键点击 ➔ 选择 「编辑文件」

第 2 步:粘贴分流规则代码

在编辑器中全选并粘贴以下 YAML 配置代码(以 prepend 方式高优先级注入):

YAML
prepend-rule-providers:
  reject:
    type: http
    behavior: domain
    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/reject.txt"
    path: ./ruleset/reject.yaml
    interval: 86400

  icloud:
    type: http
    behavior: domain
    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/icloud.txt"
    path: ./ruleset/icloud.yaml
    interval: 86400

  apple:
    type: http
    behavior: domain
    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/apple.txt"
    path: ./ruleset/apple.yaml
    interval: 86400

  google:
    type: http
    behavior: domain
    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/google.txt"
    path: ./ruleset/google.yaml
    interval: 86400

  proxy:
    type: http
    behavior: domain
    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/proxy.txt"
    path: ./ruleset/proxy.yaml
    interval: 86400

  direct:
    type: http
    behavior: domain
    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/direct.txt"
    path: ./ruleset/direct.yaml
    interval: 86400

  private:
    type: http
    behavior: domain
    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/private.txt"
    path: ./ruleset/private.yaml
    interval: 86400

  telegramcidr:
    type: http
    behavior: ipcidr
    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/telegramcidr.txt"
    path: ./ruleset/telegramcidr.yaml
    interval: 86400

  cncidr:
    type: http
    behavior: ipcidr
    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/cncidr.txt"
    path: ./ruleset/cncidr.yaml
    interval: 86400

  lancidr:
    type: http
    behavior: ipcidr
    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/lancidr.txt"
    path: ./ruleset/lancidr.yaml
    interval: 86400

  applications:
    type: http
    behavior: classical
    url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/applications.txt"
    path: ./ruleset/applications.yaml
    interval: 86400

prepend-rules:
  - RULE-SET,applications,DIRECT
  - RULE-SET,private,DIRECT
  - RULE-SET,reject,REJECT
  - RULE-SET,icloud,DIRECT
  - RULE-SET,apple,DIRECT
  - RULE-SET,google,PROXY
  - RULE-SET,proxy,PROXY
  - RULE-SET,direct,DIRECT
  - RULE-SET,lancidr,DIRECT
  - RULE-SET,cncidr,DIRECT
  - RULE-SET,telegramcidr,PROXY
  - GEOIP,LAN,DIRECT
  - GEOIP,CN,DIRECT

第 3 步:保存并使配置生效

点击编辑器右下角的 保存(或快捷键 Ctrl + S)。

在 Clash Verge Rev 中,全局扩展覆写保存后会自动注入到底层配置中,无须手动重启。今后无论订阅更新多少次,分流规则都会保持生效。


检查与验证


延伸阅读

版权声明

链接: https://blog.fusi.cc/posts/clash-rules-advanced-config-guide/

许可证: 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议

本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。