搜索 K
深色模式
深色模式
直接答案:掌握自定义规则编写是区分普通 Clash 用户与进阶网络工程师的核心分水岭。第三方公开规则库(如 ACL4SSR 或 Loyalsoldier)固然庞大,但永远无法覆盖企业内网 OA、私有 VPS 隧道、小众专业开发文档、以及刚上线的海外突发服务。编写一条高可用自定义规则的标准工业流程包括:① 通过 Clash 控制台日志或浏览器抓包捕获目标 Host -> ② 提炼二级根域名 -> ③ 依据匹配决断树挑选最优规则原语 -> ④ 注入配置并执行无感热重载验证。
在手写规则之前,首要任务是“抓出应用程序在后台悄悄请求了哪些域名或 IP”。以下为三种主流抓包方式的适用场景对比:
| 抓包工具 / 方式 | 捕获能力层级 | 操作复杂度 | 适用分析场景 |
|---|---|---|---|
| Clash 客户端 Connections 面板 | L4 ~ L7 传输层 | 极低 (一键查看) | 首选工具! 实时捕获全局所有 App 流量与当前命中规则 |
| 浏览器开发者工具 (F12) | L7 应用层 | 低 (浏览器内置) | 网页打不开、图片/CSS 切片资源加载失败排查 |
| Wireshark 原始数据包捕获 | L2 ~ L7 物理链路 | 高 (需解密 TLS) | 排查底层 UDP 丢包、非标准私有协议握手 |
假设你遇到一个海外新兴的 AI 绘画工具 paint-cloud.xyz 打不开,如何从 0 编写规则?
paint);Host: api-v2.paint-cloud.xyz:443
Network: TCP
Process: chrome.exe
Rule: MATCH --> DIRECT (发现问题:未命中任何代理规则,默认被兜底走直连导致被墙)很多现代 Web 应用的前端与后端 API、鉴权服务、图片存储是解耦的。在控制台往往会看到伴随产生的多条请求:
auth.paint-cdn.net (鉴权中心)static.paint-assets.org (静态图床)如果只写了 paint-cloud.xyz,就会出现“网页文字打开了,但图片全部裂开、无法登录”的半死不活现象。因此必须将这一组关联域名全部收纳。
提取出域名后,切忌无脑使用全通配。应当依据以下决断逻辑挑选开销最小、安全性最高的规则原语:
[获得捕获到的目标]
|
目标是纯 IP 吗? (如 192.168.1.50)
/ \
(是) (否: 是域名)
| |
选用 IP-CIDR 规则 是否需要匹配主域及所有子域名?
(加 no-resolve 避免多余解析) / \
(是) (否)
| |
选用 DOMAIN-SUFFIX 该服务仅开放单一 API 接口?
(如 DOMAIN-SUFFIX, / \
paint-cloud.xyz) (是) (否)
| |
选用 DOMAIN 选用 DOMAIN-KEYWORD
(严格单点匹配) (粗粒度包含匹配)DOMAIN-KEYWORD: 例如你写了 DOMAIN-KEYWORD,google,PROXY,不仅匹配了 Google 服务,还会误伤国内诸如 google.cn、甚至某些带有 google 字符的国内软件测试包。DOMAIN-SUFFIX: DOMAIN-SUFFIX,github.com 会完美覆盖 api.github.com、raw.githubusercontent.com(若包含二级主域),精准且由于底层采用 Trie 树索引,性能损耗趋近于零。提取好规则后,打开你的自定义配置文件,将其精准插入到合适的位置:
# ========================================================
# 自定义规则注入区 (Custom User Rules)
# 必须放置于 GEOIP,CN 以及 MATCH 兜底规则之前!
# ========================================================
rules:
# ========================================================
# 实战案例 1:私有海外 AI 工具全家桶走代理
# ========================================================
- DOMAIN-SUFFIX,paint-cloud.xyz,🚀 节点选择
- DOMAIN-SUFFIX,paint-cdn.net,🚀 节点选择
- DOMAIN-SUFFIX,paint-assets.org,🚀 节点选择
# ========================================================
# 实战案例 2:公司内网研发系统走直连 (防被代理劫持)
# ========================================================
- DOMAIN-SUFFIX,corp.internal.mycompany.com,DIRECT
- IP-CIDR,10.200.0.0/16,DIRECT,no-resolve
# ========================================================
# 实战案例 3:精准阻断顽固弹窗广告
# ========================================================
- DOMAIN,tracking.ad-analytics-bad.com,REJECT
# ========================================================
# 下方承接常规开源规则集与兜底规则
# ========================================================
- RULE-SET,direct-list,DIRECT
- GEOIP,CN,DIRECT,no-resolve
- MATCH,🚀 节点选择Host: api-v2.paint-cloud.xyz:443
Rule: DOMAIN-SUFFIX,paint-cloud.xyz --> 🚀 节点选择
Status: Connected (握手成功,延迟 35ms)IP-CIDR,0.0.0.0/0: 这会导致后续所有规则被短路,整个配置直接瘫痪。aliyuncs.com 走代理,会导致国内所有阿里云直连业务全部绕路境外。no-resolve 防污染: 除非你明确要求客户端必须发起权威 DNS 解析,否则任何自定义 IP 段规则均应追加 no-resolve 标示符。DOMAIN-SUFFIX 规则并保存了,网页还是打不开? A: 常见原因有三点:
GEOIP,CN,DIRECT 之后,且该域名此前被国内 DNS 解析为了某个大陆临时 IP 被短路拦截;http:// 的完整 URL(规则中只能写纯域名主机名,不能带协议头和路径)。A: 将这些自定义规则提炼为一个独立的本地文本文件(如 custom.list),并在主配置中声明一个 type: file 的 rule-providers,让主配置文件永远保持精简清爽。