规则配置文档
了解 Clash 分流规则的类型与写法,实现国内直连、国外走代理的精准控制
规则的作用
Clash 的 rules 字段决定每条流量走哪条出口:直连(DIRECT)、指定代理节点,或拒绝(REJECT)。规则按从上到下顺序匹配,第一条命中即生效,因此精确规则应放前面,兜底的 MATCH 放最后。
常用规则类型
| 类型 | 匹配方式 | 示例 |
|---|---|---|
DOMAIN |
完整域名精确匹配 | DOMAIN,www.google.com,Proxy |
DOMAIN-SUFFIX |
域名后缀匹配(含子域名) | DOMAIN-SUFFIX,google.com,Proxy |
DOMAIN-KEYWORD |
域名包含关键词 | DOMAIN-KEYWORD,youtube,Proxy |
IP-CIDR |
IP 地址段匹配 | IP-CIDR,192.168.0.0/16,DIRECT |
GEOIP |
基于 IP 归属国家 | GEOIP,CN,DIRECT |
MATCH |
兜底匹配(必须放最后) | MATCH,Proxy |
规则配置示例(YAML)
典型分流规则配置:国内直连、国外走代理、局域网直连:
rules:
# 局域网直连
- IP-CIDR,127.0.0.0/8,DIRECT
- IP-CIDR,192.168.0.0/16,DIRECT
- IP-CIDR,10.0.0.0/8,DIRECT
# 常用国内域名直连
- DOMAIN-SUFFIX,cn,DIRECT
- DOMAIN-SUFFIX,baidu.com,DIRECT
- DOMAIN-SUFFIX,taobao.com,DIRECT
- DOMAIN-SUFFIX,qq.com,DIRECT
- DOMAIN-SUFFIX,bilibili.com,DIRECT
# 常用国外域名走代理
- DOMAIN-SUFFIX,google.com,Proxy
- DOMAIN-SUFFIX,youtube.com,Proxy
- DOMAIN-SUFFIX,github.com,Proxy
- DOMAIN-KEYWORD,twitter,Proxy
- DOMAIN-SUFFIX,openai.com,Proxy
# 中国大陆 IP 直连
- GEOIP,CN,DIRECT
# 兜底:其余全部走代理
- MATCH,Proxy
使用规则集(Rule Provider)
手写规则难以维护,推荐使用 Rule Provider(规则集):从远程 URL 拉取已整理好的规则列表,自动更新,无需手动维护。机场提供的 Clash 订阅通常已内置完整规则集,导入即可使用。
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
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
rules:
- RULE-SET,reject,REJECT
- RULE-SET,proxy,Proxy
- RULE-SET,direct,DIRECT
- GEOIP,CN,DIRECT
- MATCH,Proxy
rule-providers 完整用法。
策略组配置文档
通过 Proxy Group 灵活组合节点,实现自动测速、故障切换与负载均衡
什么是策略组
策略组(Proxy Group)是 Clash 中的节点组合单元,可将多个节点归为一个策略组,由客户端自动选择最优节点或手动切换。规则中使用策略组名称作为出口目标(如 MATCH,Proxy 中的 Proxy)。
四种策略组类型
| 类型 | 行为 | 适用场景 |
|---|---|---|
url-test |
定期测速,自动选择延迟最低节点 | 日常主力代理组(推荐) |
fallback |
首选第一个节点,不可用时自动切换下一个 | 高可用备份节点配置 |
load-balance |
多节点轮询分发流量 | 多节点负载均衡(大流量场景) |
select |
手动从列表中选择节点 | 需要固定某个节点时手动切换 |
策略组配置示例(YAML)
包含自动测速组(Proxy)、手动选择组和故障切换备用组:
proxy-groups:
# 自动测速,选最低延迟节点(日常推荐)
- name: Proxy
type: url-test
url: https://www.gstatic.com/generate_204
interval: 300 # 每 300 秒测速一次
tolerance: 50 # 延迟差 50ms 以内不切换
proxies:
- 香港-01
- 香港-02
- 美国-01
- 日本-01
# 手动选择节点
- name: Manual
type: select
proxies:
- Proxy # 可嵌套其他策略组
- 香港-01
- 美国-01
- DIRECT
# 故障自动切换
- name: Fallback
type: fallback
url: https://www.gstatic.com/generate_204
interval: 120
proxies:
- 香港-01
- 美国-01
- 日本-01
# 多节点负载均衡
- name: LoadBalance
type: load-balance
url: https://www.gstatic.com/generate_204
interval: 300
strategy: round-robin
proxies:
- 香港-01
- 香港-02
- 香港-03
使用建议
机场的 Clash 订阅配置通常已预设好策略组,导入即可使用,无需手动编写。若需自定义,可在 Clash Verge Rev 等客户端中使用「覆写配置(Override)」功能修改策略组,无需直接编辑 YAML 文件。
proxies 列表中填写节点名称(与 proxies: 字段中定义的 name 保持一致),也可以嵌套其他策略组名称。
订阅链接使用教程
从获取机场订阅 URL,到一键导入 Clash 客户端的完整流程说明
什么是订阅链接
订阅链接(Subscription URL)是机场(代理服务提供商)给用户的专属 URL,包含所有节点配置信息。Clash 通过这个链接自动下载并解析节点列表,无需手动输入每个节点参数。
支持的订阅格式
Clash(Mihomo 内核)支持以下主流订阅格式:
- Clash YAML 格式(推荐):机场直接提供的
config.yaml格式,节点和规则全部内置,开箱即用 - Base64 编码格式:SS / VMess 节点的 Base64 编码列表,Clash 客户端可自动识别并转换
- SIP008 格式:Shadowsocks 标准订阅格式,Mihomo 原生支持
- clash:// 协议:点击链接可唤起客户端并自动导入,部分机场支持
如何获取订阅链接
- 登录您的机场(VPN 服务提供商)官网控制台
- 找到「订阅」、「节点」、「使用教程」或「一键导入」页面
- 选择 Clash 格式 或 Mihomo 格式 的订阅链接
- 点击「复制」按钮,获取完整的订阅 URL
如何导入订阅(以 Clash Verge Rev 为例)
- 打开 Clash Verge Rev,点击左侧「订阅」菜单
- 点击右上角「+」按钮,选择「导入」
- 在 URL 输入框粘贴订阅链接,填写备注名称
- 点击「导入」,等待节点配置下载完成
- 点击订阅卡片右侧的「激活」按钮将其设为当前配置
订阅自动更新
机场节点可能定期更新,建议开启订阅自动更新:在 Clash Verge Rev 中右键点击订阅卡片 → 「编辑」→ 设置「自动更新间隔」(推荐 24 小时)。客户端会定期从机场拉取最新节点配置,无需手动操作。
API 与控制台文档
通过 RESTful API 与 Web UI 实时监控流量、管理节点、切换策略组
开启外部控制器
Mihomo 内核内置 RESTful API 服务,通过 external-controller 配置项对外暴露,默认监听 127.0.0.1:9090。Web UI 通过此端口与内核通信。
# 外部控制器监听地址与端口
external-controller: 127.0.0.1:9090
# API 访问密钥(留空则不需要密码)
secret: "your-secret-here"
# 指定 Web UI 静态文件目录(可选,用于本地部署 UI 面板)
external-ui: /path/to/ui/folder
使用 Web UI 控制台
Clash 客户端通常内置 Web 控制台入口,也支持第三方开源 UI 面板在线使用:
| 面板名称 | 特点 | 在线地址 |
|---|---|---|
| Yacd | 界面简洁,功能全面,社区主流 | yacd.haishan.me |
| MetaCubeX Dashboard | 官方出品,功能最全,深色主题 | d.metacubex.one |
| Zashboard | 视觉效果突出,UI 精美 | github.com/Zephyruso/zashboard |
| 客户端内置 UI | Clash Verge Rev 等客户端已内置,无需单独配置 | 客户端菜单直接打开 |
secret 配置项的值,即可连接本地 Clash 内核。
常用 API 接口
Mihomo RESTful API 基础路径为 http://127.0.0.1:9090,需在请求头携带 Authorization: Bearer <secret>:
# 获取当前版本信息
GET /version
# 查看所有代理节点(含延迟信息)
GET /proxies
# 切换策略组选中的节点
PUT /proxies/{groupName}
Body: { "name": "节点名称" }
# 对某个节点测速
GET /proxies/{name}/delay?url=https://www.gstatic.com/generate_204&timeout=5000
# 查看所有实时连接
GET /connections
# 强制关闭所有连接
DELETE /connections
# 查看当前规则列表
GET /rules
# 获取全局配置
GET /configs
# 修改全局配置(如切换代理模式)
PATCH /configs
Body: { "mode": "rule" } # rule / global / direct
在客户端中使用
Clash Verge Rev 等 GUI 客户端已将以上 API 功能封装到界面操作中:「代理」页可切换节点和测速,「连接」页可查看实时连接并断开指定连接,「设置」中可切换代理模式(规则 / 全局 / 直连)。绝大多数用户无需直接调用 API。
wiki.metacubex.one),其中包含全部端点的请求/响应格式说明。