一、先看全局:一次完整配置需要经过四个阶段
很多人第一次配 Clash 会感觉步骤很多,但把它们按顺序摆开之后,其实只有四个阶段:导入订阅、接管流量、定制分流、保持更新。前两步是必做的,做完就能上网;后两步是加分项,做完体验会明显不一样。
下面的章节按这四步展开。每一节都会先讲「这一步解决什么问题」,再给出不同平台的具体操作路径。如果你只想快速跑通,可以只读前两节;如果你想让规则按自己的想法走,第三节值得细看。
二、第一步:导入订阅,让节点列表先出来
订阅链接是整条链路的入口。它通常由机场后台的「一键订阅」入口提供,也可能由自建服务生成。拿到链接后,先确认两件事:它是否返回 Clash 专用格式,以及令牌参数是否完整。
2.1 先验链接:用浏览器快速判断订阅有效性
在导入之前,建议先花十秒验证一次链接。把订阅地址粘贴进浏览器地址栏并回车,观察返回内容:
- 返回一大段以
proxies:开头的纯文本 → 链接有效,可以继续 - 返回一个网页、登录框或「请先登录」提示 → 令牌已失效,需要回机场后台重新获取
- 返回 403、404 或 Cloudflare 拦截页 → 订阅域名被限流,稍后再试或联系服务商
如果不方便打开浏览器,用命令行查看响应前几行也可以,速度更快:
返回 <!DOCTYPE html> 或 <html 开头的基本可以判定为网页,而不是配置。这时候导入客户端只会得到「解析失败」,先解决订阅本身再回来操作。
2.2 导入配置:不同平台的入口位置
确认链接有效之后,进入客户端导入。各平台的菜单名称略有差别,但逻辑一致:找到订阅 / Profiles 页面,粘贴链接,确认下载。
| 客户端 | 操作路径 | 备注 |
|---|---|---|
| Clash Verge Rev | 左侧菜单「订阅」→ 顶部输入框粘贴链接 → 回车确认 | 支持多订阅并存,可分别命名 |
| ClashX Pro | 菜单栏图标 → 配置 → 管理 → 添加订阅地址 | 只支持 macOS |
| Clash for Android | 「配置」标签 → 右下角加号 → 从 URL 导入 | 建议关闭省电优化 |
| Stash / Shadowrocket | 「订阅」标签 → 右上角加号 → 粘贴链接 | 需外区 App Store 账号 |
2.3 另一种方式:直接放入 YAML 文件
如果你已经拿到一份现成的 YAML 文件,也可以直接把它放进客户端的配置目录。各平台的默认路径如下:
放好之后,需要在客户端里手动刷新一次配置列表,仅复制文件不会自动出现条目。部分客户端使用私有配置目录,具体路径可在设置页查看。
三、第二步:接管流量,让请求真的经过 Clash
订阅导入之后,节点列表已经有了,但这时候流量还没有经过 Clash。接管流量有两种方式:系统代理和TUN 模式。二者的覆盖范围不同,选择哪一种取决于你要接管哪些应用。
3.1 系统代理与 TUN 模式的核心差异
| 对比项 | 系统代理 | TUN 模式 |
|---|---|---|
| 覆盖范围 | 只接管读取系统代理设置的应用 | 接管设备全部 TCP / UDP 流量 |
| 典型覆盖 | 浏览器、部分桌面软件 | 浏览器、游戏、命令行、Docker 容器 |
| 配置复杂度 | 低,一键开关 | 中,首次需安装虚拟网卡、授权 |
| 权限要求 | 无 | Windows 需管理员、macOS 需网络扩展授权 |
| 适用场景 | 日常浏览为主 | 游戏、开发调试、全屋网关 |
3.2 TUN 模式开启方法(Clash Verge Rev)
Clash Verge Rev 把 TUN 开关放在主界面比较显眼的位置。开启流程如下:
- 进入「设置」页面,找到「TUN 模式」开关
- 打开开关,系统会弹出授权提示(Windows 管理员授权 / macOS 网络扩展授权)
- 确认授权后,客户端会自动安装虚拟网卡驱动
- 驱动安装完成后,TUN 状态灯变绿,说明接管生效
虚拟网卡驱动安装失败怎么办
少数情况下,驱动会因为安全软件拦截或系统策略限制而安装失败。判断方式:打开系统的「网络连接」面板,查看是否多出一张 Clash 相关的虚拟网卡。如果没有,说明驱动没有装成功。
- Windows:临时关闭第三方杀毒软件,重新开启 TUN 触发驱动安装
- macOS:在「系统设置 → 隐私与安全性」中检查是否有被拦截的扩展授权
- 如果系统里存在其他 VPN 或虚拟机网卡(VMware、VirtualBox),临时禁用它们后再试
系统防火墙放行内核
TUN 模式需要内核进程拥有创建网络接口与修改路由表的权限。如果系统防火墙把内核进程拦截了,会出现「TUN 显示已开启但完全没网」的情况。可以在防火墙的出站规则中把 Clash 客户端目录整个放行,或者把内核进程(mihomo / clash-verge-service)加入白名单。
3.3 切换到「规则」模式
无论使用系统代理还是 TUN,都需要把运行模式切到「规则(Rule)」。客户端顶部通常有一个下拉或分段按钮,提供「规则 / 全局 / 直连」三种选项。日常使用选「规则」,Clash 会按配置文件里的分流规则自动判断每条请求的去向。
- 规则模式(Rule):国内直连、境外走节点,日常首选
- 全局模式(Global):强制所有流量走代理,用于临时测试节点质量
- 直连模式(Direct):完全关闭代理,用于排查网络问题
四、第三步:规则分流,让流量按你的想法走
规则分流是 Clash 最核心的能力。它决定了「哪些请求走代理、哪些请求走直连、走代理的请求分配到哪个节点」。这一节先讲规则集的加载方式,再讲常用规则类型的写法,最后给出一个可套用的规则结构模板。
4.1 用规则集(rule-providers)加载远程规则
把所有规则写死在配置文件里,维护起来很痛苦。更推荐的方式是用规则集把规则放在远程维护,本地只引用。修改规则时改远程文件,本地会自动同步。
配置结构大致如下:
interval 是规则集自动更新间隔,单位秒。86400 表示每天更新一次。行为类型 domain 表示规则集里放的是域名规则,还可以用 ipcidr 表示 IP 段规则、classical 表示混合类型。
4.2 常用规则类型与写法
Clash 的规则语法不复杂,掌握几种常用的就能覆盖绝大多数场景。下面按匹配粒度从细到粗列出:
| 规则类型 | 匹配方式 | 典型写法 |
|---|---|---|
DOMAIN |
完整域名精确匹配 | DOMAIN,www.google.com,PROXY |
DOMAIN-SUFFIX |
域名后缀匹配,含所有子域名 | DOMAIN-SUFFIX,google.com,PROXY |
DOMAIN-KEYWORD |
域名关键词包含匹配 | DOMAIN-KEYWORD,youtube,PROXY |
IP-CIDR |
IPv4 地址段匹配 | IP-CIDR,8.8.8.8/32,PROXY |
IP-CIDR6 |
IPv6 地址段匹配 | IP-CIDR6,2001:db8::/32,PROXY |
GEOIP |
按 IP 归属国家 / 地区匹配 | GEOIP,CN,DIRECT |
SRC-IP-CIDR |
按来源 IP 段匹配 | SRC-IP-CIDR,192.168.1.0/24,DIRECT |
MATCH |
兜底规则,匹配所有剩余请求 | MATCH,PROXY |
no-resolve 标记的用法
在 IP 类规则后加上 no-resolve,表示匹配时不触发 DNS 解析。对已知的 IP 段规则加上这个标记,能减少不必要的解析请求,也能避免部分域名被提前暴露。
4.3 规则顺序为什么重要
规则匹配是从上到下逐条判断,命中第一条就停止。因此规则顺序直接决定分流结果。一个常见的误区是把宽泛的规则写在前面,导致更具体的规则永远不会被命中。
推荐的规则排序思路
- 广告拦截:把
REJECT规则放在最前,避免无效请求占用带宽 - 局域网与内网:
SRC-IP-CIDR与IP-CIDR私有网段走DIRECT - 具体域名规则:
DOMAIN与DOMAIN-SUFFIX精确匹配 - 关键词规则:
DOMAIN-KEYWORD用来兜底一批同类型站点 - GeoIP 兜底:
GEOIP,CN,DIRECT让国内 IP 走直连 - MATCH 兜底:
MATCH,PROXY处理所有剩余请求
4.4 一个可直接套用的规则结构
如果你不想从零组织规则,可以直接从下面这个结构开始,再按需要替换域名:
reject 与 proxy 规则集放在远程维护,本地只保留少量自定义规则。更新规则时改远程文件即可,不必动本地配置。
五、第四步:让配置保持自动更新
Clash 的配置文件包含两大部分:节点订阅与规则集。两者都需要定期更新——前者保证节点列表不过期,后者保证分流规则跟上新服务。
5.1 更新间隔设置建议
更新频率不是越高越好。过于频繁的更新会产生额外流量,也会因为频繁重载配置造成连接中断。下面是推荐的间隔设置:
| 内容 | 推荐间隔 | 理由 |
|---|---|---|
| 节点订阅 | 12 ~ 24 小时 | 机场调整线路不频繁,一天一次足够 |
| 代理规则集 | 24 小时 | 规则变化较慢,一天一次足够 |
| 广告拦截规则集 | 24 ~ 72 小时 | 变化更慢,无需频繁更新 |
5.2 避免更新打断连接的两个技巧
- 把更新安排在空闲时段:比如凌晨。更新时配置会重载,既有连接会短暂中断,放在不常用网络的时段影响最小
- 用订阅与规则分离的客户端:Clash Verge Rev 支持节点订阅与规则集分别管理,更新节点时不动规则文件,重载范围更小、影响更轻
六、各平台差异速查
整体流程一致,但不同客户端的操作入口与文件位置存在细微差别。下表把最常被问到的环节按平台列出来,遇到具体问题时可以对照参考。
| 操作环节 | 桌面端(Win / macOS / Linux) | 移动端(Android / iOS) |
|---|---|---|
| 导入订阅 | 「订阅 / Profiles」→ 粘贴链接 → 回车 | 「配置」→ 加号 → 从 URL 导入 |
| 配置文件目录 | ~/.config/clash/ 或客户端自带目录 |
客户端内部管理,一般不手动放置 |
| 开关代理 | 主界面「系统代理」开关,设置页开 TUN | 首页一键启动,触发 VPN 授权弹窗 |
| 模式切换 | 主界面顶部「规则 / 全局 / 直连」分段按钮 | 配置详情页内的运行模式选项 |
| 订阅更新 | 订阅条目右键「更新」,或开启自动更新 | 订阅条目下拉刷新,或开启自动更新 |
| 节点测速 | 策略组页面点「测速」按钮,按延迟排序 | 策略组内点击测速图标,或长按节点 |
七、配置完成后的四个验证动作
开关都打开了不代表流量真的走了代理。配置完成后,用下面四个动作快速确认链路是否正常:
- 看节点延迟:在策略组页面点一次测速。数值能出来(一般低于 300ms)说明客户端已经能连上节点服务器
- 访问境外站点:打开一个境外网站,能正常加载说明代理链路通畅。同时打开一个国内网站对比速度,确认分流生效
- 查看连接日志:客户端的「连接」页面会列出当前活动请求,以及每条请求命中的规则与出口节点
- 确认出口 IP:访问任意 IP 查询站点,返回的地址应与你选择的节点地区一致。如果仍显示本地 IP,说明流量没有走代理
八、小结与下一步
到这一步,一份可长期使用的 Clash 配置就基本成型了:订阅导进来了、流量接管住了、规则分流按你的想法工作了、配置也在自动更新。日常使用基本不需要再手动干预。
如果想继续深入,可以看两个方向:一个是策略组调度(把多个节点编组,用延迟优选或故障转移自动切换),另一个是软路由部署(把 Mihomo 内核跑在内网服务器上,用 TProxy 接管整个局域网)。这两个方向分别在协议页和进阶语法页里有详细说明。