Clash 直连规则与拒绝规则编写指南:DIRECT 与 REJECT 实战教程
为什么必须掌握 DIRECT 和 REJECT 规则
Clash 默认只配置了一组基础的“绕过局域网”和“国内IP段直连”的规则,远远覆盖不了真实使用中的复杂场景。如果不主动编写 DIRECT 与 REJECT 规则,会出现两类典型问题:
- 该直连的走了代理——例如百度网盘、知乎、CSDN,本来国内直连速度更快,却走了代理反而变慢甚至出现验证码
- 该拒绝的没有被拒绝——某些广告域名、跟踪脚本、挖矿流量在后台偷偷消耗代理流量
掌握好这两个规则类型,是从“会用 Clash”升级到“精通 Clash”的关键一步。
DIRECT 与 REJECT 基础概念
DIRECT(直连)
DIRECT 表示该条规则不经过任何代理节点,由本地网络直接发起请求。
rules:
- "DOMAIN-SUFFIX,baidu.com,DIRECT"
- "GEOIP,CN,DIRECT"
上面这两行表示:
- 所有
baidu.com结尾的域名(如pan.baidu.com、tieba.baidu.com)直连 - 所有判定为“中国大陆 IP”的目标流量直连
REJECT(拒绝)
REJECT 表示直接丢弃该请求,返回 ERR_CONNECTION_REFUSED,目标服务器根本收不到请求。
rules:
- "DOMAIN-SUFFIX,doubleclick.net,REJECT"
- "DST-PORT,25,REJECT"
上面这两行表示:
- 所有
doubleclick.net结尾的请求被直接拒绝 - 任何发往 25 端口(SMTP)的请求被拒绝(防止挖矿木马外发邮件)
关键区别
| 特性 | DIRECT | REJECT |
|---|---|---|
| 目标服务器能否收到请求 | ✅ 能 | ❌ 不能 |
| 本地网络流量 | 走正常网络 | 不产生流量 |
| 节省代理流量 | ✅ | ✅✅ |
| 节省本地带宽 | ⚠ 仍占 | ✅ 完全节省 |
| 误用影响 | 速度变慢/网站打不开 | 请求失败/功能禁用 |
DIRECT 规则的 5 大实战场景
场景 1:国内大厂域名直连
几乎所有国内服务(百度、阿里、腾讯、字节跳动)在国外节点走代理反而更慢。推荐规则:
rules:
- "DOMAIN-SUFFIX,baidu.com,DIRECT"
- "DOMAIN-SUFFIX,qq.com,DIRECT"
- "DOMAIN-SUFFIX,weixin.qq.com,DIRECT"
- "DOMAIN-SUFFIX,alipay.com,DIRECT"
- "DOMAIN-SUFFIX,taobao.com,DIRECT"
- "DOMAIN-SUFFIX,tmall.com,DIRECT"
- "DOMAIN-SUFFIX,jd.com,DIRECT"
- "DOMAIN-SUFFIX,bilibili.com,DIRECT"
- "DOMAIN-SUFFIX,douyin.com,DIRECT"
- "DOMAIN-SUFFIX,bytedance.com,DIRECT"
进阶技巧:使用 DOMAIN-KEYWORD 匹配包含子字符串的域名:
rules:
- "DOMAIN-KEYWORD,alicdn,DIRECT" # 阿里 CDN 资源
- "DOMAIN-KEYWORD,qpic,DIRECT" # 腾讯图片 CDN
- "DOMAIN-KEYWORD,bdimg,DIRECT" # 百度图片 CDN
场景 2:CDN 资源直连
大型 CDN(CloudFlare、Akamai、阿里云)在全球都有节点,国内访问直连比走代理快 3-10 倍:
rules:
- "DOMAIN-SUFFIX,cloudflare.com,DIRECT"
- "DOMAIN-SUFFIX,akamaiedge.net,DIRECT"
- "DOMAIN-SUFFIX,alicdn.com,DIRECT"
- "DOMAIN-SUFFIX,bootcdn.net,DIRECT"
- "DOMAIN-SUFFIX,staticfile.org,DIRECT"
场景 3:内网与局域网直连
家庭/办公内网服务必须直连,否则会进入代理绕一大圈:
rules:
- "IP-CIDR,10.0.0.0/8,DIRECT,no-resolve"
- "IP-CIDR,172.16.0.0/12,DIRECT,no-resolve"
- "IP-CIDR,192.168.0.0/16,DIRECT,no-resolve"
- "IP-CIDR,127.0.0.0/8,DIRECT,no-resolve"
- "DOMAIN-SUFFIX,local,DIRECT"
- "DOMAIN-SUFFIX,lan,DIRECT"
注意:内网 IP 不需要 DNS 解析,加
no-resolve提高性能。
场景 4:已知国内 IP 段直连
CN-IP 段走 GEOIP 规则(需要 Clash 内置 GeoIP 数据库):
rules:
- "GEOIP,CN,DIRECT"
- "GEOIP,PRIVATE,DIRECT" # 私有 IP 段
但 GEOIP 不能 100% 覆盖,有时漏掉新分配的 IP 段,需配合手动 IP-CIDR 补充。
场景 5:国内应用内嵌资源
很多 App 的“分享/H5”页面会嵌入国外域名,默认走代理反而打不开,需要单独设置:
rules:
- "DOMAIN-SUFFIX,weibo.cn,DIRECT"
- "DOMAIN-SUFFIX,weibo.com,DIRECT"
- "DOMAIN-SUFFIX,xiaomi.com,DIRECT"
- "DOMAIN-SUFFIX,mi.com,DIRECT"
REJECT 规则的 5 大实战场景
场景 1:广告域名拦截
广告联盟的域名追踪你的浏览习惯,拒绝它们既省流量又保护隐私:
rules:
- "DOMAIN-SUFFIX,doubleclick.net,REJECT"
- "DOMAIN-SUFFIX,googlesyndication.com,REJECT"
- "DOMAIN-SUFFIX,googleadservices.com,REJECT"
- "DOMAIN-SUFFIX,adservice.google.com,REJECT"
- "DOMAIN-SUFFIX,adsystem.amazon.com,REJECT"
- "DOMAIN-SUFFIX,scorecardresearch.com,REJECT"
- "DOMAIN-SUFFIX,outbrain.com,REJECT"
- "DOMAIN-SUFFIX,taboola.com,REJECT"
场景 2:电信运营商劫持域名
国内运营商经常在 DNS 阶段劫持某些域名(强插广告),直接拒绝从源头切断:
rules:
- "DOMAIN-KEYWORD,ads,REJECT"
- "DOMAIN-KEYWORD,tracker,REJECT"
- "DOMAIN-KEYWORD,stat,REJECT"
- "DOMAIN-KEYWORD,analysis,REJECT"
- "DOMAIN-KEYWORD,pixel,REJECT"
⚠️ 注意:
DOMAIN-KEYWORD,ads会误伤一些合法域名(如 github 的 ads 子域名外的其他服务),先小范围测试再加入。
场景 3:危险端口拒绝
恶意软件常通过以下端口外联,必须彻底拒绝:
rules:
- "DST-PORT,25,REJECT" # SMTP 木马外联
- "DST-PORT,135,REJECT" # Windows RPC
- "DST-PORT,139,REJECT" # NetBIOS
- "DST-PORT,445,REJECT" # SMB 勒索病毒通道
- "DST-PORT,3389,REJECT" # RDP(防止扫描)
- "DST-PORT,4444,REJECT" # Metasploit 默认端口
- "DST-PORT,6667,REJECT" # IRC 后门
场景 4:加密挖矿流量拒绝
加密货币挖矿流量会大量消耗代理流量,发现可疑 JS 注入或端口时直接 REJECT:
rules:
- "DOMAIN-SUFFIX,coinhive.com,REJECT"
- "DOMAIN-SUFFIX,cryptoloot.com,REJECT"
- "DOMAIN-SUFFIX,minero.cc,REJECT"
- "DST-PORT,3333,REJECT" # 常见矿池端口
- "DST-PORT,7777,REJECT" # 矿池端口
- "DST-PORT,8888,REJECT" # 矿池端口
场景 5:内网横向攻击防护
家庭/办公局域网被攻击者扫描时直接拒绝所有外发请求:
rules:
- "SRC-IP-CIDR,10.0.0.0/8,REJECT" # 阻止 10 网段所有外联请求
- "SRC-IP-CIDR,172.16.0.0/12,REJECT"
- "SRC-IP-CIDR,192.168.0.0/16,REJECT"
规则类型速查表
Clash 支持 10 余种规则类型,编写 DIRECT/REJECT 时必须配合正确的规则类型才能生效:
| 规则类型 | 作用 | 典型用法 |
|---|---|---|
DOMAIN-SUFFIX |
匹配域名后缀 | DOMAIN-SUFFIX,google.com 匹配 mail.google.com |
DOMAIN-KEYWORD |
匹配域名包含子串 | DOMAIN-KEYWORD,google 匹配所有含 google 的域名 |
DOMAIN |
精确域名匹配 | DOMAIN,www.baidu.com 仅匹配这一个域名 |
GEOIP |
匹配 IP 归属国 | GEOIP,CN 匹配中国大陆 IP |
IP-CIDR |
匹配 IP 段 | IP-CIDR,192.168.0.0/16 |
IP-CIDR6 |
匹配 IPv6 段 | IP-CIDR6,2400:3200::/32 |
SRC-PORT |
匹配源端口 | SRC-PORT,7891 防止本地代理套娃 |
DST-PORT |
匹配目标端口 | DST-PORT,443 |
SRC-IP-CIDR |
匹配源 IP 段 | 适用于网关/路由器场景 |
PROCESS-NAME |
匹配进程名 | PROCESS-NAME,WeChat.exe |
MATCH |
兜底规则 | 必须在最后一行 |
规则顺序的黄金法则
Clash 规则从上到下依次匹配,命中即停止。顺序错了会完全失效。
推荐的规则顺序
rules:
1. # 1. 最严格的白名单规则(精确域名)
2. - "DOMAIN,internal.local,DIRECT"
3.
4. # 2. 内网 IP 段(必须最早,否则会被 DNS 污染)
5. - "IP-CIDR,10.0.0.0/8,DIRECT,no-resolve"
6. - "IP-CIDR,172.16.0.0/12,DIRECT,no-resolve"
7. - "IP-CIDR,192.168.0.0/16,DIRECT,no-resolve"
8.
9. # 3. 国内大厂域名直连
10. - "DOMAIN-SUFFIX,baidu.com,DIRECT"
11. - "DOMAIN-SUFFIX,qq.com,DIRECT"
12. - "DOMAIN-SUFFIX,alipay.com,DIRECT"
13.
14. # 4. 国内 IP 段直连(GEOIP 兜底)
15. - "GEOIP,CN,DIRECT,no-resolve"
16.
17. # 5. 危险端口/恶意域名 REJECT(必须在代理规则之前)
18. - "DST-PORT,25,REJECT"
19. - "DST-PORT,445,REJECT"
20. - "DOMAIN-SUFFIX,doubleclick.net,REJECT"
21.
22. # 6. 自定义代理规则(优先节点的)
23. - "DOMAIN-SUFFIX,google.com,Proxy"
24. - "DOMAIN-SUFFIX,github.com,Proxy"
25.
26. # 7. 兜底 MATCH
27. - "MATCH,Proxy"
顺序错误示例
❌ 错误:把 GEOIP 放在 DOMAIN-SUFFIX 之前
rules:
- "GEOIP,CN,DIRECT" # ← 会先命中所有中国 IP
- "DOMAIN-SUFFIX,baidu.com,Proxy" # ← 这条永远不会执行
✅ 正确:DOMAIN-SUFFIX 在前,GEOIP 作为兜底
rules:
- "DOMAIN-SUFFIX,baidu.com,DIRECT"
- "GEOIP,CN,DIRECT,no-resolve"
实战:一套完整的 DIRECT + REJECT 规则模板
以下模板可以直接复制到 Clash 配置文件 config.yaml 的 rules: 字段下:
rules:
# ===== 第一段:内网与基础设施(必须最早)=====
- "DOMAIN-SUFFIX,local,DIRECT"
- "IP-CIDR,10.0.0.0/8,DIRECT,no-resolve"
- "IP-CIDR,172.16.0.0/12,DIRECT,no-resolve"
- "IP-CIDR,192.168.0.0/16,DIRECT,no-resolve"
- "GEOIP,PRIVATE,DIRECT,no-resolve"
# ===== 第二段:国内大厂域名直连(提升速度)=====
- "DOMAIN-SUFFIX,cn,DIRECT"
- "DOMAIN-KEYWORD,alicdn,DIRECT"
- "DOMAIN-KEYWORD,bdimg,DIRECT"
- "DOMAIN-SUFFIX,baidu.com,DIRECT"
- "DOMAIN-SUFFIX,qq.com,DIRECT"
- "DOMAIN-SUFFIX,alipay.com,DIRECT"
- "DOMAIN-SUFFIX,weibo.com,DIRECT"
- "DOMAIN-SUFFIX,weibo.cn,DIRECT"
- "DOMAIN-SUFFIX,xiaomi.com,DIRECT"
# ===== 第三段:GEOIP 中国 IP 直连兜底 =====
- "GEOIP,CN,DIRECT,no-resolve"
# ===== 第四段:危险端口与广告 REJECT(必须在代理前)=====
- "DST-PORT,25,REJECT"
- "DST-PORT,135,REJECT"
- "DST-PORT,139,REJECT"
- "DST-PORT,445,REJECT"
- "DST-PORT,3389,REJECT"
- "DOMAIN-SUFFIX,doubleclick.net,REJECT"
- "DOMAIN-SUFFIX,googlesyndication.com,REJECT"
- "DOMAIN-SUFFIX,scorecardresearch.com,REJECT"
- "DOMAIN-SUFFIX,coinhive.com,REJECT"
# ===== 第五段:自定义代理策略(按需调整)=====
- "DOMAIN-SUFFIX,google.com,Proxy"
- "DOMAIN-SUFFIX,youtube.com,Proxy"
- "DOMAIN-SUFFIX,github.com,Proxy"
- "DOMAIN-SUFFIX,openai.com,Proxy"
# ===== 第六段:兜底规则 =====
- "MATCH,Proxy"
调试技巧:验证规则是否生效
1. 用 web 控制台看命中
打开 Clash Dashboard(默认 http://127.0.0.1:9090/ui),切换到“Connections”或“Logs”面板,每个请求都会显示“Rule”列告诉你命中了哪条规则。
2. 用 curl 测试直连
# 测试 baidu.com 是否直连(应返回国内 IP)
curl -v --resolve baidu.com:443:220.181.38.148 https://baidu.com 2>&1 | grep "Connected to"
# 测试 google.com 是否走代理
curl -v https://google.com 2>&1 | grep "Connected to"
3. 用 no-resolve 优化
内网 IP、已知名 IP 段不需要 DNS 解析。加 no-resolve 跳过 DNS 查询,提高匹配速度 20-50ms:
- "IP-CIDR,10.0.0.0/8,DIRECT,no-resolve"
- "GEOIP,CN,DIRECT,no-resolve"
常见误区与排错
误区 1:把所有国内服务都设为 DIRECT
❌ 错误:把 google.cn 也设为 DIRECT(虽然它在大陆有服务器,但 google.cn 会被强制跳转)
✅ 正确:仅对确实在国内有 CDN 的服务(baidu.com、qq.com、alipay.com 等)设 DIRECT
误区 2:REJECT 替代 DROP 防止被探测
有的用户会用 DROP(直接丢弃,不回应)代替 REJECT,但实际上REJECT 已足够:
- "DST-PORT,445,REJECT" # ✅ 直接拒绝,节省握手时间
- "DST-PORT,445,DROP" # ❌ 不必要,反而增加端口扫描被长时间挂起的风险
误区 3:忽视 SRC-IP-CIDR 的安全价值
在企业/共享网络环境,最好用 SRC-IP-CIDR 限制只有本机可以出网:
- "SRC-IP-CIDR,192.168.1.0/24,DIRECT" # 仅允许 192.168.1.x 网段出网
- "SRC-IP-CIDR,192.168.1.0/24,REJECT" # 其他网段直接拒绝
总结与最佳实践
- 顺序是关键:内网 → 国内大厂 → GEOIP 兜底 → REJECT 危险 → 代理规则 → MATCH 兜底
- 优先用 DOMAIN-SUFFIX:比 DOMAIN-KEYWORD 精确,避免误伤
- REJECT 放在代理规则之前:防止危险流量先走代理再被丢弃
- 加 no-resolve 优化性能:内网和已知 IP 段避免多余 DNS 查询
- 定期 review 规则:每季度检查一次,新增常访问的国内服务
- 结合 Rule Providers 维护:广告/跟踪域名库每日更新,建议订阅
ruleset.adguard.com等公开规则集
精通 DIRECT 和 REJECT 规则的本质是理解“流量应该去哪里”——合理的规则配置能让你的代理服务用得最省、最快、最安全。
这篇教程有帮助吗?立即下载Clash入门试试吧!
全平台支持 · 安全无毒 · 官方最新版