Clash 是什么,能解决什么问题

简单说,Clash 是一款「按规则分流」的网络代理客户端:它会检查每一个网络请求要去哪里,再按你配置好的规则决定这个请求该怎么走——国内常用的服务直接放行,速度完全不受影响;需要代理才能访问的服务转发到对应节点;广告和恶意域名则直接在本地拦截掉,请求根本发不出去。整个过程是自动的,用户平时感觉不到「切换」这件事,打开哪个网站该走哪条路,规则早就写好了。

它是完全开源、跨平台的项目,Windows、macOS、Linux、Android、iOS 都有对应的客户端或内核,配置文件格式统一,换设备也不用重新学一套用法。用起来只需要理解三个角色:

  • 客户端 —— 你安装的那个程序(图形界面或命令行),负责读取配置、连接节点、展示当前状态;
  • 订阅链接 —— 由你使用的代理服务商提供,一条包含节点列表的地址,客户端定期拉取更新;
  • 配置文件 —— 一份 config.yaml,定义了所有的分流规则和策略组逻辑,多数情况下订阅会自动生成,不需要自己动手写。
提示: Clash 只是执行规则的工具本身,不提供、也不代售任何代理节点,节点与订阅需要向你正在使用的服务商获取。

3 步快速上手

装好客户端到实际用上代理,其实只需要三步,全程点点鼠标就能搞定,不用碰配置文件:

1

下载并安装客户端

按自己的系统选一个图形界面客户端最省心,全平台的安装包和详细步骤都在下载页面,跟着装完就行。

2

粘贴订阅链接并导入

在客户端「订阅管理」里粘贴代理服务商给你的订阅地址并保存,客户端会立刻拉取一次节点列表,形如 https://example.com/api/v1/subscribe?token=xxx 这样的地址整条复制即可,不要手动截断。

3

选节点,打开系统代理

节点列表里选一个策略组(客户端通常会自动帮你测速选优),打开「设置为系统代理」,访问一个海外网站试试,能打开就说明已经生效了;不用的时候关掉开关即可。

核心概念,看懂这 5 个就够了

日常用不需要研究这些,但如果你想自己微调规则、或者遇到问题想搞清楚原因,下面这几个概念是绕不开的,挑重点讲,尽量说人话:

策略组 Proxy Group

策略组把多个节点打包成一个整体调用,常见的有三种类型:「自动选择」会定期测速,自动切到延迟最低的节点;「手动切换」由你自己决定当前用哪一个;「故障转移」在主节点失效时自动切到备用节点,避免断线。大多数订阅生成的配置已经内置了合理的策略组,日常使用一般不需要手动调整。

规则与规则集 Rules

规则按顺序逐条匹配,一旦命中就立即生效、不再继续往下匹配,因此顺序非常关键——越精确、越常用的规则应该放在越靠前的位置。规则集(Rule-Set)则是把大量同类规则打包成一个可远程更新的文件,避免逐条手动维护,订阅更新时规则集也会一并刷新。

GeoIP / GeoSite

GeoIP 是 IP 地址到地理位置的对照数据库,GeoSite 则是域名到归属分类的对照数据库,两者都是规则引擎判断「是不是境内地址」最常用的依据。规则集中通常已经内置这些数据,不需要额外下载或配置。

DNS 防泄漏

如果只代理了流量但没有接管 DNS 查询,域名解析请求可能仍然直接发往本地运营商 DNS,暴露出你正在访问的真实域名,这就是「DNS 泄漏」。客户端会按规则分流解析请求(境内域名走本地 DNS,境外域名走安全的远程 DNS),从根源上避免这一问题,多数客户端默认已经开启,无需额外设置。

TUN 模式

系统代理只对遵循系统代理设置的程序生效,部分游戏、命令行工具、系统级请求并不会走系统代理。TUN 模式会创建一张虚拟网卡,在网络层接管全部流量,代理范围更彻底,缺点是对系统权限要求更高(需要管理员/Root 权限)。日常网页浏览用系统代理已经足够,有特殊需求时再开启 TUN。

想看真实的配置写法?点开这里的示例片段
proxy-groups:
  - name: 自动选择
    type: url-test
    proxies: [节点A, 节点B, 节点C]
    url: http://www.gstatic.com/generate_204
    interval: 300
  - name: 手动切换
    type: select
    proxies: [自动选择, 节点A, 节点B, DIRECT]

rules:
  - DOMAIN-SUFFIX,google.com,PROXY
  - DOMAIN-KEYWORD,youtube,PROXY
  - GEOIP,CN,DIRECT
  - DOMAIN-SUFFIX,doubleclick.net,REJECT
  - MATCH,PROXY

这几行规则依次表示:google.com 结尾的域名走代理;域名包含 youtube 走代理;IP 归属地为中国大陆的直连;广告域名直接拦截;剩下没命中的流量最后统一走代理兜底。

这些场景,Clash 都能搞定

掌握了基础用法之后,下面这几个是日常最常被问到的实用场景:

分应用代理

只想让特定 App(比如某个视频或聊天软件)走代理,其余应用保持直连,可以在客户端「分应用代理」设置里把目标应用加入名单,其余应用默认走直连,互不影响,也能降低不必要的流量消耗。

拦截广告与追踪

在规则文件里加入广告域名规则集,命中的请求会被标记为 REJECT 直接丢弃,相当于在网络层做了一层广告过滤,浏览器、App 里的部分广告和追踪脚本会因此加载失败而不显示。

多个订阅合并用

如果同时拥有多个服务商的订阅,大多数客户端支持添加多条订阅链接,在策略组里把不同来源的节点混合编组;也可以使用「配置合并」功能,把多份配置整合进同一份最终配置,避免来回切换。

局域网设备共享

在客户端网络设置中开启「允许来自局域网的连接」,并记下本机局域网 IP 与代理端口,同一网络下的其他设备(如电视盒子、游戏主机)手动填入这组代理地址,即可共享同一份代理规则,无需单独安装客户端。

进阶技巧,用熟了再看

远程规则集自动更新 —— 把规则集配置为 Rule Provider 远程链接,内容会随订阅周期自动刷新,不用手动替换文件。

配置覆写与合并 —— 部分客户端支持「覆写」或「合并」功能,能在不改动订阅原始配置的前提下叠加自定义规则,订阅更新后自定义部分也不会被覆盖。

多设备同步配置 —— 只要订阅链接一致,不同设备导入后的节点和规则是一致的;如果自定义了覆写规则,建议单独备份该部分,方便换设备或重装后快速恢复。

省电省资源 —— 在意耗电或性能的话,适当延长测速间隔、关闭详细连接日志,对老旧设备和路由器尤其有效。

想再深入一些,比如自己手写规则语法、配置 Provider 远程管理、调整 DNS/TUN 高级参数,可以继续看 进阶配置文档

常见问题

什么是订阅链接,去哪里获取?

订阅链接是代理服务商生成的一条 URL,包含了你可使用的节点列表和推荐规则。Clash 官网不提供节点资源,需要向你使用的服务商索取订阅地址。

导入订阅后显示没有可用节点?

请先确认订阅链接是否已过期或达到设备数量上限;也可以检查客户端底部日志面板,查看拉取订阅时是否有网络错误或格式解析失败提示。

系统代理和 TUN 模式该怎么选?

日常网页与 App 使用系统代理即可,配置简单、兼容性好;如果需要代理游戏、命令行工具等不遵循系统代理设置的程序,建议开启 TUN 模式实现全局接管。

如何确认哪些流量走了代理,哪些是直连?

大多数图形界面客户端提供「连接」或「日志」面板,会实时显示每条请求匹配到的规则与最终走向(DIRECT / PROXY / REJECT),排查分流是否生效非常直观。

更换订阅链接后,旧节点信息还残留怎么办?

在「订阅管理」中删除旧的订阅条目并重新添加新链接,或使用客户端自带的「更新订阅」功能强制覆盖,避免新旧节点列表混合造成困扰。

不小心改乱了设置,如何恢复?

重新导入一次订阅链接即可覆盖大部分自定义改动;如果使用了覆写或合并功能,建议提前备份自定义部分,或直接删除客户端配置目录后重新导入。

手机上使用会不会很耗电或耗流量?

正常使用的耗电与耗流量增量很小,主要开销来自后台测速与日志记录;可以在设置中降低测速频率、关闭详细日志来进一步节省资源。

配置文件一般存放在哪里?

不同客户端路径略有差异,通常在设置面板里能直接找到「打开配置目录」这类入口;如果需要手动编辑或备份,从这个入口进去即可找到 config.yaml 所在文件夹。

看完原理和配置语法,接下来只需要下载客户端、导入订阅,就可以正式开始使用了。