本文详解Clash配置文件核心语法,包括代理组类型选择、TUN模式与系统代理差异、分流规则优先级,并通过实际YAML示例演示配置要点,帮助用户快速搭建稳定的跨境访问环境。
Clash配置文件核心结构
Clash配置文件采用YAML格式,核心包含四个部分:proxies(代理节点)、proxy-groups(代理组)、rules(分流规则)、dns(DNS配置),新手常犯的错误是直接复制订阅链接而不理解配置逻辑,导致节点无法生效。
proxies:
- name: "节点1"
type: ss
server: 1.2.3.4
port: 8388
cipher: aes-256-gcm
password: password123
proxy-groups:
- name: "自动选择"
type: url-test
proxies:
- 节点1
- 节点2
url: "http://www.gstatic.com/generate_204"
interval: 300
代理组类型选择与适用场景
代理组是Clash的核心功能,决定流量如何分配到不同节点:
| 类型 | 特点 | 适用场景 |
|---|---|---|
| select | 手动选择节点 | 需要指定特定节点 |
| url-test | 自动测速选择延迟最低 | 日常上网、视频 |
| fallback | 优先使用列表首个节点,失效则切换 | 重要业务不断线 |
| load-balance | 轮询分配流量 | 多节点负载均衡 |
普通用户建议使用url-test类型,设置测速URL为http://www.gstatic.com/generate_204,间隔300秒自动切换最优节点。
TUN模式与系统代理的区别
系统代理模式:仅接管HTTP/HTTPS/SOCKS5协议的流量,适合浏览器和常规应用,配置简单,但无法处理游戏、UDP流量。
TUN模式:创建虚拟网卡接管所有流量(包括UDP、游戏数据包),适合对延迟敏感的场景,开启方法:
dns:
enable: true
listen: 0.0.0.0:53
enhanced-mode: fake-ip
nameserver:
- 223.5.5.5
- 119.29.29.29
tun:
enable: true
stack: system
dns-hijack:
- 8.8.8.8:53
auto-route: true
TUN模式会显著增加CPU占用,移动设备建议仅在游戏时开启。
分流规则写法与优先级
Clash规则按顺序匹配,命中后停止遍历,常用规则类型:
- DOMAIN:精确域名匹配,如
DOMAIN,google.com - DOMAIN-SUFFIX:域名后缀匹配,如
DOMAIN-SUFFIX,youtube.com - IP-CIDR:IP段匹配,如
IP-CIDR,10.0.0.0/8,no-resolve - GEOIP:国家/地区匹配,如
GEOIP,CN
规则顺序建议:直连规则 → 代理规则 → 兜底规则,示例:
rules: - DOMAIN-SUFFIX,google.com,自动选择 - DOMAIN-KEYWORD,facebook,自动选择 - IP-CIDR,192.168.0.0/16,DIRECT - GEOIP,CN,DIRECT - MATCH,自动选择
常见问题FAQ
节点显示已连接但无法上网
现象:Clash显示"Connected"但浏览器无法访问
原因:DNS污染或规则配置错误导致流量未走代理
解决:检查dns配置中enhanced-mode是否为fake-ip,确认MATCH规则指向正确的代理组
开启TUN模式后部分应用无法联网
现象:微信、钉钉等应用无法连接
原因:TUN模式下虚拟网卡与部分应用不兼容
解决:在tun配置中添加exclude-app排除不兼容应用,或切换回系统代理模式
订阅链接更新后配置丢失
现象:每次更新订阅后自定义规则消失
原因:覆盖式更新会替换整个配置文件
解决:使用Clash Verge等客户端的"配置合并"功能,或使用SubConverter工具自定义配置模板
节点选择建议
不同使用场景对节点要求差异明显:4K视频需要高带宽专线,游戏需要低延迟线路,办公场景需要稳定连接,选择节点服务商时重点考察其线路质量、售后的响应速度以及是否支持退换,避免选择过于便宜的套餐,稳定性往往与价格正相关。
