client/desktop · 集群 B · 桌面进阶配置 · 2/6
Clash 规则分流配置:规则写法、顺序调整与覆写自定义规则
Clash 系客户端的规则由“类型, 匹配内容, 策略”三部分组成,按从上到下的顺序匹配,命中第一条即停止。添加自定义规则时,应使用客户端提供的覆写或扩展功能,并把规则插在订阅规则之前,否则既可能被订阅更新覆盖,也可能因为排在后面而永远不会命中。规则不生效时,先在连接面板确认实际命中的规则。
订阅中的规则长什么样
打开一份 Clash 系配置,规则部分通常是一长串列表,每一条都由类型、匹配内容、策略三部分组成,用逗号分隔。下面是一个示意片段(域名均为示例,并非真实配置):
rules:
- DOMAIN-SUFFIX,lan,DIRECT
- DOMAIN,ads.example.com,REJECT
- DOMAIN-SUFFIX,example-service.com,节点选择
- DOMAIN-KEYWORD,examplecdn,节点选择
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
- GEOIP,CN,DIRECT
- MATCH,节点选择
逐条解读:
| 部分 | 示例 | 含义 |
|---|---|---|
| 类型 | DOMAIN-SUFFIX | 按域名后缀匹配 |
| 匹配内容 | example-service.com | 该域名及其所有子域名 |
| 策略 | 节点选择 | 交给名为“节点选择”的策略组 |
| 附加参数 | no-resolve | 遇到此 IP 规则时不触发 DNS 解析 |
最后一条 MATCH 是兜底规则,前面都没命中的流量按它处理。规则匹配与 DNS 解析时机的底层原理见 分流原理。
常用规则类型速查
日常自定义最常用的是以下几种类型。具体支持的类型以所用内核文档为准,不同版本可能有差异。
| 规则类型 | 匹配方式 | 典型用途 |
|---|---|---|
| DOMAIN | 完整域名精确匹配 | 只针对某一个域名 |
| DOMAIN-SUFFIX | 域名后缀 | 某网站及其所有子域名 |
| DOMAIN-KEYWORD | 域名包含关键字 | 快速覆盖一类域名(易误伤) |
| IP-CIDR | IPv4 网段 | 局域网、特定服务器 |
| IP-CIDR6 | IPv6 网段 | IPv6 网段 |
| GEOIP | IP 地理位置 | 按国家或地区分流 |
| PROCESS-NAME | 进程名 | 让某个程序整体走代理或直连 |
| RULE-SET | 外部规则集 | 引用一批规则 |
| MATCH | 兜底 | 放在最后 |
DOMAIN-KEYWORD 要谨慎使用:关键字匹配范围很广,可能误伤许多无关域名。能用 DOMAIN-SUFFIX 解决的,优先用后缀匹配。
规则顺序的四条原则
规则是自上而下匹配、命中即停的,所以顺序就是优先级。添加或调整规则时,遵循四条原则:
- 越具体越靠前:精确域名放在后缀规则前,后缀规则放在关键字规则前;
- 局域网与私有地址最先直连:避免内网访问被送进代理;
- 自定义规则插在订阅规则之前:否则可能被订阅中更宽泛的规则先命中;
- 兜底规则永远在最后:放在前面会让后续规则全部失效。
推荐的整体结构:
┌──────────────────────────────┐
│ 自定义规则(前置) │ ← 你的个性化需求
├──────────────────────────────┤
│ 订阅规则 │ ← 服务商提供
├──────────────────────────────┤
│ MATCH 兜底 │
└──────────────────────────────┘
用覆写添加自定义规则
不要直接修改订阅配置文件——订阅更新时它会被重新下载并覆盖。正确的做法是使用客户端提供的覆写、扩展或合并功能(名称可能随版本变化,例如“覆写”“扩展配置”“全局扩展脚本”等)。
以 Clash Verge Rev 为例的通用思路:
① 在“订阅 / 配置”页面找到目标订阅
│
▼
② 进入该订阅的“编辑规则”或“扩展 / 覆写”入口
│
▼
③ 添加规则,并选择插入到前置位置
│
▼
④ 保存后客户端会把自定义规则与订阅规则合并
│
▼
⑤ 在连接面板中验证新规则是否命中
不同客户端的覆写方式不同:有的提供图形化的规则编辑器,有的使用类 YAML 的合并文件,有的支持脚本。请参考你所用客户端的项目说明。Clash Verge Rev 的基础使用见 Clash Verge Rev 安装与订阅导入。
几个常见的自定义场景
下面是几个常见需求及对应思路,均使用示例域名:
| 需求 | 规则思路 | 注意 |
|---|---|---|
| 某个工作网站强制直连 | DOMAIN-SUFFIX,示例域名,DIRECT | 放在前置位置 |
| 某个服务固定走某地区节点 | DOMAIN-SUFFIX,示例域名,地区策略组 | 策略组名称需与配置一致 |
| 某个软件全部走代理 | PROCESS-NAME,程序名,节点选择 | 通常需要 TUN 模式才能完整生效 |
| 屏蔽某个跟踪域名 | DOMAIN,示例域名,REJECT | 误屏蔽会导致网站功能异常 |
| NAS 等局域网设备直连 | IP-CIDR,局域网网段,DIRECT,no-resolve | 放在最前 |
PROCESS-NAME 规则依赖客户端能看到该程序的连接,系统代理模式下不读代理设置的程序无法被匹配,这时需要 TUN 模式,见 桌面端 TUN 模式开启指南。
访问 AI 或流媒体平台时,请遵守平台服务条款与支持地区,本站不提供规避平台风控的分流配置。
规则不生效的排查方法
规则写好了却不生效,几乎都能通过连接面板找到原因。排查步骤:
- 访问目标网站,打开客户端的连接面板;
- 找到该网站的连接,查看“命中规则”一栏;
- 对照判断:
连接面板中能找到该连接吗?
├─ 不能 → 流量没进客户端(系统代理未生效 / 软件不读代理)→ 考虑 TUN
└─ 能 ↓
命中的是你的自定义规则吗?
├─ 是,但策略不对 → 检查策略组名称与节点选择
└─ 否,命中了别的规则 ↓
├─ 命中了订阅中更靠前的规则 → 把自定义规则移到前置
├─ 命中了 IP 类规则 → 检查域名写法、DNS 设置
└─ 命中了 MATCH 兜底 → 自定义规则写法有误或未保存
另外,订阅更新后若自定义规则消失,说明你可能直接改了订阅文件而非使用覆写。日志阅读方法见 读懂客户端日志。
修改规则前的备份习惯
规则写错可能导致配置加载失败,客户端无法启动代理。为了能随时回退,建议养成几个习惯:修改前先导出或复制一份当前的覆写内容;每次只添加一两条规则,保存后立即验证;如果配置加载失败,先查看客户端提示中指出的行号或字段,多数是缩进、逗号或策略组名称的问题。另外,规则不是越多越好——数量庞大的自定义规则会增加维护负担,也更容易与订阅规则相互冲突。优先依靠订阅自带的规则,只为确有需要的少数场景补充自定义规则,是更省心的做法。
小结
规则分流的实操要点可以浓缩为三句话:读懂“类型, 内容, 策略”;记住“自上而下、命中即停”;自定义规则用覆写并放前置。掌握这些,就能在不破坏订阅更新的前提下,让流量按你的需要分流。
如果你在比较服务商提供的订阅与规则质量,可以前往 机场品牌库 查看资料,或使用 对比工具 并排比较,数据来自品牌资料,本站未实测。
常见问题
为什么不建议直接修改订阅配置文件?
订阅更新时客户端会重新下载配置并覆盖本地文件,直接修改的内容会丢失。使用覆写或扩展功能可以让自定义内容在每次更新后自动合并。
自定义规则加了但不生效,怎么办?
最常见的原因是规则位置在订阅规则之后,被前面更宽泛的规则先命中。在连接面板中查看该连接实际命中的规则,再调整自定义规则的位置。
规则里的策略名称写错会怎样?
如果规则指向一个不存在的策略组名称,配置可能加载失败或该规则无效。策略名称必须与配置中策略组的名称完全一致,包括大小写和符号。
规则集文件从哪里来?
规则集通常由订阅配置引用,也可以自行引用。来源需要可靠,因为规则集决定了大量流量的去向;不明来源的规则集可能导致流量被错误分流。
信息来源与更新时间
- 信息来源
- 品牌清单资料(品牌公开信息整理)
- 测试范围
- 本站未进行测速与解锁实测,所有能力描述均为资料声明或未测试状态。
- 发布时间
- 待核实
- 核实日期
- 待核实
- 最近更新
- 待核实