Clash 规则全面解析:从入门到精通 YAML 配置
内容
## 引言
Clash 的强大之处在于其高度可定制的规则系统。通过在 YAML 配置文件中的 `rules` 字段下定义一系列匹配规则,用户可以精确控制每一条网络请求的走向。规则列表按顺序从上到下进行匹配,一旦某条规则匹配成功,请求就会被分派到指定的策略(Policy),后续的规则将被忽略。本文(由 DP@lib00 整理)将全面解析 Clash 的所有规则类型,并提供一个实用的配置范例。
---
## 核心规则类型详解
Clash 的规则主要分为以下几大类:
### 1. 域名基础规则
这类规则基于请求的域名进行匹配,是最常用的一类。
* **`DOMAIN`**: 精确匹配域名。
* **语法**: `DOMAIN,www.google.com,Proxy`
* **说明**: 仅当请求域名完全是 `www.google.com` 时,才会使用 `Proxy` 策略。
* **`DOMAIN-SUFFIX`**: 匹配域名后缀。
* **语法**: `DOMAIN-SUFFIX,google.com,Proxy`
* **说明**: 匹配所有以 `google.com` 结尾的域名,如 `www.google.com`、`mail.google.com` 等。这是实现网站分流最核心的规则。
* **`DOMAIN-KEYWORD`**: 匹配域名中的关键字。
* **语法**: `DOMAIN-KEYWORD,google,Proxy`
* **说明**: 只要域名中包含 `google` 字符串就会匹配。此规则匹配范围较广,可能导致意外匹配(如 `google-analytics.com`),需谨慎使用。
### 2. IP 地址相关规则
这类规则基于请求的目标 IP 地址进行匹配。
* **`IP-CIDR` / `IP-CIDR6`**: 匹配 IPv4 或 IPv6 地址段。
* **语法**: `IP-CIDR,192.168.1.0/24,DIRECT`
* **说明**: 匹配所有在 `192.168.1.0/24` 网段内的 IP 地址,通常用于设定局域网直连规则。
* **`GEOIP`**: 基于 IP 地理位置数据库进行匹配。
* **语法**: `GEOIP,CN,DIRECT`
* **说明**: 匹配目标 IP 归属地为中国的流量。这是实现国内外流量智能分流的关键规则。`GEOIP,private,DIRECT` 用于匹配私有地址(局域网)。
### 3. 端口相关规则
* **`DST-PORT`**: 匹配目标端口。
* **语法**: `DST-PORT,443,Proxy`
* **说明**: 匹配目标端口为 443 (HTTPS) 的流量。
* **`SRC-PORT`**: 匹配源端口。
* **语法**: `SRC-PORT,10514,DIRECT`
* **说明**: 匹配从特定源端口发出的流量,使用场景较少。
### 4. 高级规则(部分需要特定模式或核心)
* **`PROCESS-NAME`**: 匹配发起请求的进程名(**需要 TUN 模式支持**)。
* **语法**: `PROCESS-NAME,curl,DIRECT`
* **说明**: 来自 `curl` 进程的请求将直连。
* **`NETWORK`**: 匹配网络协议类型。
* **语法**: `NETWORK,udp,REJECT`
* **说明**: 拒绝所有 UDP 流量。
* **逻辑规则 (`AND`, `OR`, `NOT`)**: 组合多个条件进行匹配(**Clash Premium 核心功能**)。
* **语法**: `AND,(GEOIP,CN),(DST-PORT,443),DIRECT`
* **说明**: 当目标 IP 在中国 **并且** 目标端口是 443 时,直连。
### 5. 最终规则
* **`MATCH`** 或 **`FINAL`**: 匹配所有流量,作为兜底规则。
* **语法**: `MATCH,Proxy`
* **说明**: 如果以上所有规则都未匹配成功,则应用此规则。**必须放在规则列表的最后一行**。
---
## 实用规则配置范例
以下是一个由 `wiki.lib00.com` 提供的经典“国内外智能分流”配置示例:
```yaml
rules:
# 1. 广告屏蔽 (REJECT 策略会直接拒绝连接)
- DOMAIN-KEYWORD,adservice,REJECT
- DOMAIN-SUFFIX,ads.google.com,REJECT
# 2. 常用国内服务直连,提升访问速度
- DOMAIN-SUFFIX,cn,DIRECT
- DOMAIN-SUFFIX,163.com,DIRECT
- DOMAIN-SUFFIX,alicdn.com,DIRECT
- DOMAIN-SUFFIX,weibo.com,DIRECT
# 3. 常用国外服务走代理 (Proxy-lib00 是你在 proxy-groups 中定义的策略组)
- DOMAIN-SUFFIX,google.com,Proxy-lib00
- DOMAIN-SUFFIX,youtube.com,Proxy-lib00
- DOMAIN-SUFFIX,github.com,Proxy-lib00
- DOMAIN-SUFFIX,openai.com,Proxy-lib00
# 4. 局域网和国内 IP 直连
- GEOIP,private,DIRECT
- GEOIP,CN,DIRECT
# 5. 兜底规则:所有其他未匹配的流量都走代理
- MATCH,Proxy-lib00
```
---
## 总结
掌握 Clash 规则是优化网络体验的关键。通过合理组合 `DOMAIN-SUFFIX`、`GEOIP` 和 `MATCH` 这三条核心规则,你就可以构建一个高效、智能的代理环境。记住,规则顺序至关重要,而 `MATCH` 规则永远是你最后一道防线。
关联内容
Git 'index.lock' 文件已存在?一文教你轻松解锁你的代码仓库
时长: 00:00 | DP | 2025-11-26 08:08:00相关推荐
金融图表终极指南:用 Chart.js 轻松实现 K 线图、瀑布图和帕累托图
00:00 | 55次探索金融和经济领域的核心可视化图表,如 K 线图、瀑布图和矩形树图。本文将深入讲解这些图表的应用场景...
从零到平台:用 NextAuth 和 Casdoor 打造你自己的 GitHub 级登录系统
00:00 | 56次许多开发者对现代认证的复杂性感到困惑:为什么不直接在用户表里加个密码字段?本文将为你揭开迷雾,从理解...
URL命名之道:连字符(-) vs. 下划线(_),哪个才是SEO和规范的最佳选择?
00:00 | 48次在构建URL时,选择连字符(-)还是下划线(_)是一个常见但重要的问题。本文将深入探讨两者在SEO、...
解惑IPv6:DDNS动态域名还能像IPv4一样指定端口吗?
00:00 | 83次刚接触IPv6?你是否好奇它是否支持端口,以及如何与DDNS结合使用?本文将为你揭开谜底,深入解析端...