最后更新于:2026年06月

如果你是一名进阶用户,你可能已经发现:代理客户端的配置远不止是"填订阅链接,真正决定使用体验的,是分流规则、策略组、TUN 模式等进阶功能。Clash Meta 作为当前最强大的开源代理核心,凭借其强大的规则引擎与灵活的策略组系统,成为了进阶用户的首选。
本文将带你深入理解 Clash Meta 的核心概念,掌握规则编写策略组、DNS 分流与 TUN 透明代理,把你的 Clash 客户端打造为一台功能齐全的网络分流神器。
🧭 Clash Meta 核心架构
在深入配置之前,我们需要先理解 Clash Meta 的三大核心组件,它们共同构成了你看到的一切。
┌────────────────────────────────────────────────────┐
│ Clash Meta │
│ │
│ [Proxies(代理节点] │
│ ├── VLESS / Trojan / Shadowsocks / WireGuard│
│ └── (你的订阅节点) │
│ │
│ [Proxy Group(策略组) │
│ ├── 手动选择 (select) │
│ ├── 自动测速 (url-test) │
│ ├── 故障转移 (fallback) │
│ └── 负载均衡 (load-balance) │
│ │
│ [Rules(规则引擎) │
│ ├── DOMAIN-SUFFIX / DOMAIN-KEYWORD │
│ ├── IP-CIDR / GEOIP │
│ ├── PROCESS-NAME / SRC-PORT │
│ └── MATCH(最终规则) │
│ │
│ [DNS 模块] │
│ ├── nameserver / fallback │
│ ├── fake-ip / redir-host │
│ └── DoH / DoT │
└────────────────────────────────────────────────────┘
核心概念速查
| 概念 | 含义 | 类比 |
|---|---|---|
| Proxies | 代理节点列表 | 你拥有的所有"钥匙" |
| Proxy Group | 节点分组与选择逻辑 | 如何选择用哪一把钥匙 |
| Rule | 流量分流规则 | 不同网站走不同钥匙 |
| DNS | 域名解析策略 | 如何将域名转为 IP |
| TUN | 虚拟网卡模式 | 所有流量强制走 Clash |
📦 配置文件结构
Clash Meta 使用 YAML 格式。一份完整的配置包含以下模块:
# 基础配置
mixed-port: 7890
allow-lan: true
mode: rule
log-level: info
external-controller: 127.0.0.1:9090
# DNS 配置
dns:
enable: true
listen: 0.0.0.0:53
enhanced-mode: fake-ip
nameserver:
- 223.5.5.5
- 119.29.29.29
fallback:
- https://1.1.1.1/dns-query
- https://dns.google/dns-query
# 代理节点
proxies:
- name: "节点1"
type: vless
server: server1.example.com
port: 443
uuid: your-uuid
network: tcp
tls: true
servername: www.microsoft.com
# 策略组
proxy-groups:
- name: "🚀 节点选择"
type: select
proxies:
- "节点1"
- "节点2"
# 规则
rules:
- DOMAIN-SUFFIX,google.com,🚀 节点选择
- GEOIP,CN,DIRECT
- MATCH,🚀 节点选择配置文件位置
- Windows:
C:\Users\用户名\.config\clash\config.yaml - macOS:
~/.config/clash/config.yaml - Linux:
~/.config/clash/config.yaml
🎯 Proxies:代理节点配置
Clash Meta 支持多种协议。以下是各主流协议的配置模板。
VLESS + Reality 配置
- name: "VLESS-Reality"
type: vless
server: server.example.com
port: 443
uuid: your-uuid-here
network: tcp
tls: true
servername: www.apple.com
reality-opts:
public-key: your-public-key
short-id: ""
client-fingerprint: chrome
udp: trueTrojan 配置
- name: "Trojan"
type: trojan
server: trojan.example.com
port: 443
password: your-password
network: tcp
tls: true
servername: trojan.example.com
sni: trojan.example.com
alpn:
- h2
- http/1.1Shadowsocks 2022 配置
- name: "SS2022"
type: ss
server: ss.example.com
port: 8388
password: your-password
cipher: 2022-blake3-aes-128-gcm
udp: true订阅导入
大多数用户使用订阅链接,无需手动填写节点。在 GUI 客户端(如 Clash Verge Rev、Clash Meta for Android)中,粘贴订阅链接即可自动拉取节点列表。
# 在 GUI 客户端中通常使用以下格式
# subscription: https://your-subscription-url.com🚀 Proxy Group:策略组详解
策略组是 Clash Meta 的精髓。通过合理的策略组设计,你可以实现智能的灵活性与高性能的平衡。
1. Select(手动选择)
- name: "🚀 节点选择"
type: select
proxies:
- "节点1"
- "节点2"
- "节点3"
- "香港 🌏"
use:
- provider1适用场景:主入口策略组。用户手动选择节点。
2. URL-Test(自动选最快)
- name: "⚡ 自动选择"
type: url-test
proxies:
- "节点1"
- "节点2"
url: http://www.gstatic.com/generate_204
interval: 300
tolerance: 50参数说明:
url:测试目标 URL,推荐 `http://www.gstatic.com/generate_204interval:测试间隔秒数tolerance:容忍偏差(毫秒)
3. Fallback(故障转移)
- name: "🔄 故障转移"
type: fallback
proxies:
- "主节点"
- "备用节点1"
- "备用节点2"
url: http://www.gstatic.com/generate_204
interval: 300工作原理:按顺序使用第一个可用节点,失败自动切换到下一个。
4. Load-Balance(负载均衡)
- name: "⚖️ 负载均衡"
type: load-balance
proxies:
- "节点1"
- "节点2"
strategy: consistent-hashing
url: http://www.gstatic.com/generate_204
interval: 300策略:
round-robin:轮询选择consistent-hashing:基于域名哈希,保证同一域名走同一节点(推荐)
实战:多级策略组
proxy-groups:
- name: "🚀 节点选择"
type: select
proxies:
- ⚡ 自动选择
- 香港节点
- 日本节点
- 美国节点
- 新加坡节点
- DIRECT
- name: "⚡ 自动选择"
type: url-test
include-all: true
proxies: []
use:
- all_provider
- name: "香港节点"
type: select
use:
- hk_provider
- name: "日本节点"
type: select
use:
- jp_provider
- name: "美国节点"
type: select
use:
- us_provider📜 Rules:规则引擎深度解析
规则决定了每一个请求的走向。这是 Clash Meta 配置中最重要、最灵活的部分。
规则类型速查
| 规则类型 | 匹配对象 | 示例 |
|---|---|---|
DOMAIN |
完整域名 | DOMAIN,www.google.com,🚀 节点选择 |
DOMAIN-SUFFIX |
域名后缀 | DOMAIN-SUFFIX,google.com,🚀 节点选择 |
DOMAIN-KEYWORD |
域名关键词 | DOMAIN-KEYWORD,google,🚀 节点选择 |
DOMAIN-REGEX |
域名正则 | DOMAIN-KEYWORD,goog.*?,🚀 节点选择 |
IP-CIDR |
IP 地址段 | IP-CIDR,10.0.0.0/8,DIRECT,no-resolve |
GEOIP |
IP 地理位置 | GEOIP,CN,DIRECT |
PROCESS-NAME |
进程名称 | PROCESS-NAME,chrome.exe,DIRECT |
SRC-IP-CIDR |
源 IP | SRC-IP-CIDR,192.168.1.100/32,DIRECT |
DST-PORT |
目标端口 | DST-PORT,80,DIRECT |
SRC-PORT |
源端口 | SRC-PORT,1234,DIRECT |
IN-TYPE |
入站类型 | IN-TYPE,SOCKS/HTTP,DIRECT |
MATCH |
最终匹配 | MATCH,🚀 节点选择 |
规则编写实战
1. 国内网站直连
- DOMAIN-SUFFIX,baidu.com,DIRECT
- DOMAIN-SUFFIX,qq.com,DIRECT
- DOMAIN-SUFFIX,taobao.com,DIRECT2. 国外网站走代理
- DOMAIN-SUFFIX,google.com,🚀 节点选择
- DOMAIN-SUFFIX,youtube.com,🚀 节点选择
- DOMAIN-SUFFIX,github.com,🚀 节点选择
- DOMAIN-SUFFIX,twitter.com,🚀 节点选择3. 广告拦截
- DOMAIN-SUFFIX,doubleclick.net,REJECT
- DOMAIN-SUFFIX,googletagmanager.com,REJECT
- DOMAIN-SUFFIX,googleadservices.com,REJECT4. 局域网直连
- 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-resolve5. GEOIP 分流
- GEOIP,LAN,DIRECT,no-resolve
- GEOIP,CN,DIRECT,no-resolve6. 进程名规则
- PROCESS-NAME,chrome.exe,🚀 节点选择
- PROCESS-NAME,firefox.exe,🚀 节点选择
- PROCESS-NAME,WeChat.exe,DIRECT规则顺序很重要
Clash Meta 按顺序逐条匹配规则,第一条命中即停止。所以必须把最精确的规则放在最前面,最宽泛的规则放在最后。
完整规则模板
rules:
# 1. 常见 CDN 和本地
- IP-CIDR,127.0.0.1/32,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
- IP-CIDR,10.0.0.0/8,DIRECT,no-resolve
- IP-CIDR,172.16.0.0/12,DIRECT,no-resolve
# 2. 常见国内网站
- DOMAIN-SUFFIX,baidu.com,DIRECT
- DOMAIN-SUFFIX,bilibili.com,DIRECT
- DOMAIN-SUFFIX,qq.com,DIRECT
- DOMAIN-SUFFIX,taobao.com,DIRECT
# 3. 常见加速网站
- DOMAIN-SUFFIX,google.com,🚀 节点选择
- DOMAIN-SUFFIX,googleapis.com,🚀 节点选择
- DOMAIN-SUFFIX,youtube.com,🚀 节点选择
- DOMAIN-SUFFIX,github.com,🚀 节点选择
- DOMAIN-SUFFIX,twitter.com,🚀 节点选择
- DOMAIN-SUFFIX,telegram.org,🚀 节点选择
- DOMAIN-SUFFIX,discord.com,🚀 节点选择
# 4. 流媒体分流
- DOMAIN-SUFFIX,netflix.com,🎬 流媒体
- DOMAIN-SUFFIX,disneyplus.com,🎬 流媒体
- DOMAIN-SUFFIX,spotify.com,🎬 流媒体
# 5. 地理位置分流
- GEOIP,CN,DIRECT,no-resolve
# 6. 默认规则
- MATCH,🚀 节点选择🌐 DNS 配置与分流
DNS 是科学上网体验中的关键环节。配置不好的 DNS 会导致解析缓慢甚至 DNS 泄漏。
基础 DNS 配置
dns:
enable: true
listen: 0.0.0.0:53
ipv6: false
enhanced-mode: fake-ip
fake-ip-range: 198.18.0.1/16
use-hosts: true
default-nameserver:
- 223.5.5.5
- 119.29.29.29
nameserver:
- https://223.5.5.5/dns-query
- https://1.12.12.12/dns-query
fallback:
- https://1.1.1.1/dns-query
- https://8.8.8.8/dns-query
fallback-filter:
geoip: true
geoip-code: CN
ipcidr:
- 240.0.0.0/4DNS 模式详解
| 模式 | 说明 | 适用场景 |
|---|---|---|
| fake-ip | 返回假 IP,真正的 IP 请求在 fake-ip 中映射后获取 | 大多数用户 |
| redir-host | 返回真实 IP,性能略低但兼容性好 | 有特殊应用需求 |
为什么 fake-ip 更快?
传统流程:
应用 → DNS 请求 → 等待 DNS 回复 → 连接真实 IP
fake-ip 流程:
应用 → DNS 请求 → 返回假 IP(本地保存映射)
↓
真正请求通过代理转发
↓
代理服务器负责解析真实 IP
fake-ip 模式下,DNS 请求不再需要等待真实 DNS 响应,显著提升首次连接速度。
DNS 过滤配置
fallback-filter:
geoip: true
geoip-code: CN
ipcidr:
- 240.0.0.0/4
domain:
- "+.google.com"
- "+.facebook.com"
- "+.youtube.com"工作原理:当域名匹配 geoip: CN 时,使用 nameserver(国内 DNS)解析;否则使用 fallback(国外 DNS)解析。
🔒 TUN 模式与透明代理
TUN 模式是 Clash Meta 的杀手级特性。启用 TUN 后,系统所有网络流量都会被 Clash 接管,实现系统级代理。
TUN 模式架构
应用程序
│
▼
系统网络栈
│
▼
TUN 虚拟网卡(Clash 接管)
│
├── 国内流量 → 直连(DIRECT)
│
├── 国外流量 → 走代理(PROXY)
│
└── 广告流量 → 拒绝(REJECT)
TUN 配置
tun:
enable: true
stack: system
dns-hijack:
- "any:53"
- "tcp://any:53"
auto-route: true
auto-detect-interface: true参数详解
| 参数 | 值 | 说明 |
|---|---|---|
enable |
true |
是否启用 TUN |
stack |
system |
使用系统网络栈 |
dns-hijack |
any:53 |
DNS 劫持端口 |
auto-route |
true |
自动设置路由表 |
auto-detect-interface |
true |
自动检测网络接口 |
macOS 启用 TUN
# macOS 需要 sudo 权限
sudo chown root:admin /Applications/Clash\ Meta.app/Contents/MacOS/clash-metaWindows 启用 TUN
Windows 下需要安装 WinTun 驱动。大多数 GUI 客户端会自动处理。
TUN 模式注意事项
- 需要管理员/root 权限
- 首次启用可能需要安装虚拟网卡驱动
- 启用后系统所有流量都会经过 Clash
- 确保 DIRECT 规则正确,否则可能导致网络问题
- TUN 模式与其他代理软件可能冲突
⚡ 性能优化技巧
1. 优化 DNS 缓存
dns:
enable: true
enhanced-mode: fake-ip
fake-ip-range: 198.18.0.1/16fake-ip 模式下,首次请求会缓存 DNS 映射,显著降低延迟。
2. 合理设置并发连接
unified-delay: true
tcp-concurrent: true
find-process-mode: strict3. 内存优化
profile:
tracing: false4. 日志级别调整
log-level: warning # silent/error/warning/info/debug生产环境建议使用 warning 或 silent,减少日志写入。
5. 规则集(Rule Provider)
将大规则集拆分为单独的 Rule Provider,实现动态加载:
rule-providers:
reject:
type: http
behavior: domain
url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/v2ray-rules-dat@release/reject.list"
path: ./ruleset/reject.yaml
interval: 86400
cn:
type: http
behavior: domain
url: "https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/cn.txt"
path: ./ruleset/cn.yaml
interval: 86400然后在规则中引用:
rules:
- RULE-SET,reject,REJECT
- RULE-SET,cn,DIRECT
- MATCH,🚀 节点选择🔧 故障排查手册
问题 1:无法连接
# 检查 Clash 是否运行
# 查看日志(log-level: info/debug)
# 检查 mixed-port 是否被占用
netstat -ano | findstr 7890问题 2:DNS 泄漏
# 确保配置中启用 fake-ip
dns:
enable: true
enhanced-mode: fake-ip
# 同时检查系统 DNS 设置指向 127.0.0.1问题 3:规则不生效
# 检查规则顺序(首条匹配优先)
# 打开 debug 日志查看规则匹配
log-level: debug问题 4:TUN 模式无法启用
# Windows: 以管理员身份运行
# macOS: 检查虚拟网卡权限
# Linux: 检查内核模块问题 5:订阅更新失败
# 检查订阅链接是否有效
# 检查网络是否正常
# 尝试手动下载订阅链接文件📚 完整生产配置模板
以下是一份完整的配置模板,可直接复制使用:
mixed-port: 7890
allow-lan: true
mode: rule
log-level: warning
external-controller: 127.0.0.1:9090
external-ui: ui
ipv6: false
tcp-concurrent: true
find-process-mode: strict
unified-delay: true
dns:
enable: true
listen: 0.0.0.0:53
ipv6: false
enhanced-mode: fake-ip
fake-ip-range: 198.18.0.1/16
use-hosts: true
default-nameserver:
- 223.5.5.5
- 119.29.29.29
nameserver:
- https://dns.alidns.com/dns-query
- https://223.5.5.5/dns-query
fallback:
- https://1.1.1.1/dns-query
- https://dns.google/dns-query
fallback-filter:
geoip: true
geoip-code: CN
ipcidr:
- 240.0.0.0/4
proxies:
- name: "香港节点"
type: vless
server: hk.example.com
port: 443
uuid: your-uuid
network: tcp
tls: true
servername: www.apple.com
reality-opts:
public-key: your-public-key
short-id: ""
client-fingerprint: chrome
udp: true
proxy-groups:
- name: "🚀 节点选择"
type: select
proxies:
- ⚡ 自动选择
- 香港节点
- DIRECT
- name: "⚡ 自动选择"
type: url-test
proxies:
- 香港节点
url: http://www.gstatic.com/generate_204
interval: 300
rules:
- IP-CIDR,127.0.0.1/8,DIRECT,no-resolve
- IP-CIDR,192.168.0.0/16,DIRECT,no-resolve
- DOMAIN-SUFFIX,baidu.com,DIRECT
- DOMAIN-SUFFIX,qq.com,DIRECT
- DOMAIN-SUFFIX,google.com,🚀 节点选择
- DOMAIN-SUFFIX,youtube.com,🚀 节点选择
- GEOIP,CN,DIRECT,no-resolve
- MATCH,🚀 节点选择🎓 下一步学习
恭喜你掌握了 Clash Meta 的核心配置!接下来推荐学习:
- 📖 订阅转换:学习使用 subconverter/sub-web 等订阅转换服务
- 📖 Provider 管理:多订阅的节点 Provider 和 Rule Provider
- 📖 Dashboard 使用:Clash Dashboard 图形化管理面板
- 📖 Mihomo 内核:探索 Mihomo 内核(原 Clash Meta 的继任者)
- 📖 与 sing-box 配合:搭配 sing-box 网关与终端客户端
结语
Clash Meta 的强大之处在于其灵活的规则引擎与策略组。通过合理的配置,你可以构建一套高度定制化的网络分流系统。无论是简单的科学上网,还是复杂的企业级路由,Clash Meta 都能胜任。
**总结要点:
- ✅ Proxies 配置灵活,支持多协议并存
- ✅ 策略组让节点选择智能而高效
- ✅ Rules 引擎强大,支持多种匹配方式
- ✅ fake-ip DNS 模式提升解析速度
- ✅ TUN 模式实现系统级透明代理
- ✅ Rule Provider 实现规则集的动态加载与维护
Clash Meta 不仅仅是代理工具,更是网络艺术。掌握它,你就拥有了高度定制的网络自由。
愿你在网络世界中畅游无阻!🚀