Clash 规则怎么写?自定义分流规则与覆写教程(附常用模板)
大多数人用机场订阅自带的规则就够了。但总有例外:某个网站该走代理却直连了,公司内网被代理了,想让 ChatGPT 固定走美国节点……这时就需要自己加规则。
一、规则怎么生效:从上往下,命中即停
Clash 的 rules 是一个列表,每个连接从第一条开始依次比对,命中第一条就按它处理,后面的不再看。所以:
rules:
- DOMAIN-SUFFIX,openai.com,🇺🇸 美国节点 # 1. 先看这条
- GEOIP,CN,DIRECT # 2. 国内 IP 直连
- MATCH,🚀 节点选择 # 3. 都没命中就走代理
自定义规则一定要放在最前面,放在 GEOIP,CN 或 MATCH 后面等于没写。
每条规则的格式是:类型,匹配内容,策略。策略可以是 DIRECT(直连)、REJECT(拦截)或订阅里某个策略组的名字。
二、常用规则类型
| 类型 | 含义 | 示例 |
|---|---|---|
DOMAIN |
完全匹配域名 | DOMAIN,api.example.com,DIRECT |
DOMAIN-SUFFIX |
匹配域名及其所有子域名 | DOMAIN-SUFFIX,github.com,🚀 节点选择 |
DOMAIN-KEYWORD |
域名包含关键字 | DOMAIN-KEYWORD,google,🚀 节点选择 |
GEOSITE |
按网站分类(需 Mihomo) | GEOSITE,cn,DIRECT |
GEOIP |
按 IP 所属国家 | GEOIP,CN,DIRECT |
IP-CIDR |
匹配 IP 段 | IP-CIDR,192.168.0.0/16,DIRECT |
PROCESS-NAME |
按发起连接的程序 | PROCESS-NAME,WeChat,DIRECT |
RULE-SET |
引用在线规则集 | RULE-SET,ai,🇺🇸 美国节点 |
MATCH |
兜底,放最后 | MATCH,🚀 节点选择 |
DOMAIN-SUFFIX 最常用:写 github.com 就同时覆盖 api.github.com、raw.github.com 等。
三、常用规则模板
公司内网 / 局域网直连
- DOMAIN-SUFFIX,corp.example.com,DIRECT
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
no-resolve 表示不为了匹配这条规则去解析域名,能减少不必要的 DNS 查询。
AI 服务固定美国节点
- DOMAIN-SUFFIX,openai.com,🇺🇸 美国节点
- DOMAIN-SUFFIX,chatgpt.com,🇺🇸 美国节点
- DOMAIN-SUFFIX,anthropic.com,🇺🇸 美国节点
- DOMAIN-SUFFIX,claude.ai,🇺🇸 美国节点
原因和更多域名见 Claude 用什么节点。
指定程序直连(如国内会议软件)
- PROCESS-NAME,WeChat,DIRECT
- PROCESS-NAME,TencentMeeting,DIRECT
进程名以「活动监视器」或「任务管理器」中显示的为准。PROCESS-NAME 在 TUN 模式下最可靠。
屏蔽某个域名
- DOMAIN-SUFFIX,ads.example.com,REJECT
四、在 Clash Verge Rev 里加规则(推荐方式)
直接编辑订阅文件,下次更新订阅就会被覆盖。Clash Verge Rev 提供了两种不会丢失的方式:
方式一:编辑规则(图形界面)
在「订阅」页面右键订阅 →「编辑规则」,选择规则类型、填写内容和策略,添加到「前置规则」。
方式二:扩展覆写配置(Merge)
在「订阅」页面打开全局扩展覆写配置,写入:
prepend-rules:
- DOMAIN-SUFFIX,corp.example.com,DIRECT
- DOMAIN-SUFFIX,claude.ai,🇺🇸 美国节点
prepend-rules 会把这些规则插到订阅规则的最前面。保存后在「订阅」页面重新激活一下当前订阅即可生效。不同版本的菜单名称可能略有差异,以客户端界面为准。
五、怎么确认规则命中了
打开客户端的「连接」页面,访问目标网站,找到对应的连接,看「规则」一栏显示的是哪条规则、走了哪个策略。这是排查分流问题最快的方法。
六、写规则的几个坑
- 策略组名要一字不差:包括表情符号,建议从配置里复制;
- 顺序比内容更重要:规则没生效,先检查是不是被前面的规则截走了;
- 不要滥用 DOMAIN-KEYWORD:关键字太短(比如
ai)会误伤大量无关域名; - 改完先在全局模式对比:全局模式能用、规则模式不能用,就是规则问题。
想了解规则模式、全局模式和 TUN 的关系,看 Clash 代理模式详解。
常见问题
我写的规则为什么不生效?
规则从上往下匹配,命中第一条就停止。如果你的规则放在 GEOIP,CN 或 MATCH 后面,就永远不会被用到。把自定义规则放在最前面。
直接改订阅的配置文件可以吗?
可以但不推荐。订阅一更新,手动修改就会被覆盖。用客户端的覆写(Merge)或「编辑规则」功能,修改会在每次更新后自动重新应用。
规则里的策略组名字写错会怎样?
配置会加载失败或该规则报错。策略组名称必须和订阅中的完全一致,包括表情符号和空格。