clash / 开源网Clash开源网 · 全平台客户端下载
Public基于规则分流的开源代理客户端下载与文档站。覆盖 Windows、macOS、Android、iOS、Linux 五个平台的安装包获取、订阅导入与 TUN 模式配置,附中文教程与故障排查手册。
核心特性
以下五份文档对应 Clash 的五个核心能力。点击左侧文件名,右侧查看说明与真实配置片段。
rules.md
Clash 按配置文件 rules 段的顺序逐条匹配每一个新建连接:DOMAIN-SUFFIX 看域名后缀,DOMAIN-KEYWORD 做关键词包含,GEOIP 按目标 IP 归属地判断,MATCH 放在最后兜底。命中即停,写在前面的规则优先级更高。相比全局代理一刀切,规则分流可以让局域网与常用直连站点不绕路、需要代理的域名精确走代理。规则来源支持订阅内置、本地追加与 rule-providers 远程规则集三种,保存后热加载生效,不需要重启客户端。
rules:
- DOMAIN-SUFFIX,github.com,PROXY
- DOMAIN-KEYWORD,google,PROXY
- GEOIP,CN,DIRECT
- MATCH,PROXY
tun-mode.md
系统代理依赖应用主动读取代理设置,命令行工具、游戏客户端和不少桌面软件会直接忽略它。TUN 模式在系统里创建一块虚拟网卡,在网络层接管全部出站流量,再交给 Clash 内核按规则处理——不遵守系统代理的程序也一并覆盖。开启位置在客户端设置页的 TUN / 虚拟网卡开关,Windows 首次启用需要以管理员身份安装服务,macOS 与 Linux 会请求一次系统授权。DNS 劫持配合 fake-ip 可以避免 DNS 泄漏,是全局接管场景的默认组合。
tun:
enable: true
stack: system
auto-route: true
dns-hijack:
- any:53
subscription.md
订阅是一条返回完整 YAML 配置的 URL,节点、策略组与规则都由它下发。客户端里粘贴链接即可导入,支持设定自动更新间隔——服务商调整节点后,到期自动拉取新配置,不需要手工替换文件。多条订阅可以并存,互相独立切换。更新失败时,先在浏览器里直接打开订阅链接确认返回的是 YAML 文本而不是 HTML 报错页,再检查链接是否过期、是否需要经过订阅转换服务适配格式。本站故障排查手册对每种报错都有对应条目。
# 手动验证订阅返回内容
curl -A "clash" -sL "https://example.com/sub?token=xxxx" | head -n 20
# 正常应输出 YAML,如 proxies: / proxy-groups: 开头的段落
policy-group.md
策略组把多个节点组织成一个可被规则引用的逻辑单元。select 组由用户手动选择;url-test 组定期对组内节点发起延迟测试,自动切到最快的一个;fallback 组按顺序检测可用性,首选失效自动降级到下一个;load-balance 组把连接分散到多个节点。规则末端写策略组名而不是具体节点名,节点变动时只需要调整组内成员,规则一行不用改。这是 Clash 配置可维护性的核心机制,也是它区别于简单代理开关的地方。
proxy-groups:
- name: AUTO
type: url-test
url: http://www.gstatic.com/generate_204
interval: 300
proxies: [node-a, node-b, node-c]
dashboard.md
Clash 内核通过 external-controller 暴露一套 RESTful API,网页控制面板据此实现节点切换、延迟测试、连接查看与日志流。桌面客户端普遍内置面板入口,也可以在浏览器直接访问本机端口使用 metacubexd 等第三方面板。排查问题时最常用的是连接页——每条活动连接显示命中的规则与出口节点,一眼确认某个域名到底走了直连还是代理;日志页配合 log-level: debug 能看到 DNS 解析与规则匹配的完整过程。
external-controller: 127.0.0.1:9090
secret: ""
# 浏览器打开面板后填入上面的地址即可连接内核
按平台获取客户端
五个平台各自维护独立构建。点击平台卡片跳转到下载页对应分区,每个平台有多个客户端可选,下载页有系统要求与安装说明。
开源生态与更新机制
history.md
Clash 于 2018 年以 Go 语言开源,凭规则分流与 YAML 配置成为这一领域事实上的配置格式标准。原版内核归档后,社区分支 mihomo(此前名为 Clash Meta)接续维护,补齐了更多代理协议、DNS 策略与 TUN 栈实现,并保持对原版配置格式的兼容。今天各平台主流 GUI 客户端底层几乎都运行 mihomo 内核。
ecosystem.md
生态由内核与 GUI 客户端两层组成:内核负责协议实现、规则匹配与流量转发;Clash Verge Rev、FlClash、Nyanpasu 等客户端负责订阅管理、界面与系统集成,均在开源协议下开发,代码公开可审计。同一份配置文件可以在不同客户端间通用,换客户端不需要重做配置。
releases.md
内核与各客户端在各自仓库发布版本,更新节奏独立。本站下载页的版本号与安装包链接由版本清单驱动,清单更新后页面自动跟进,不存在手工维护滞后的旧链接。已停止维护的客户端会明确标注归档状态,并给出仍在维护的替代项。
从下载到跑通的完整路径
第一次使用 Clash 的人常常卡在"装完了却不知道下一步做什么"。下面把整条链路拆成四段,每段说清要做什么、判断成功的标准是什么、失败时先看哪里。
step-1 选客户端
同一平台往往有多个可选客户端,差别不在能不能用,而在系统集成方式与维护状态。Windows 与 Linux 上,Clash Verge Rev 提供完整的订阅管理、策略组界面与 TUN 开关,是桌面端最稳的默认选择;跨平台一致性优先可以用 FlClash,同一套界面覆盖桌面与 Android;macOS 用户偏好菜单栏常驻的话可以选 ClashX Meta 一类的轻量客户端;Android 上 FlClash 与 Surfboard 都基于 VpnService,不需要 root 就能全局接管流量;iOS 受系统限制只能走 App Store 分发的 Network Extension 客户端。下载页对每个客户端标注了系统要求、内核版本与维护状态,已归档的项目会明确给出替代项,不要从来源不明的镜像站取安装包。
step-2 导入订阅
客户端本身不含任何节点,节点来自订阅链接。把服务商给的 URL 粘贴到客户端的配置(Profiles)页,保存后客户端会拉取一次并解析成本地配置文件,代理页随即出现节点与策略组列表。建议同时打开自动更新,间隔设为 24 小时,这样服务商调整节点后不必手工替换。导入失败最常见的原因不是客户端问题,而是链接本身返回了 HTML 报错页或已过期——先在浏览器里打开链接确认返回的是 YAML 文本,再考虑格式转换。
step-3 选模式并开启接管
节点就绪后要决定流量怎么进入 Clash。规则模式按配置文件里的 rules 逐条匹配,国内域名直连、需要代理的域名走代理,是日常使用的推荐值;全局模式让所有流量都走选定节点,通常只用于临时排查规则是否有问题;直连模式等于暂时不代理,但保留客户端运行。选好模式后打开系统代理开关,浏览器就会经由本机端口(默认 7890)转发。如果你要代理的是命令行工具、Docker、游戏客户端或某些不读系统代理设置的桌面软件,则需要改用 TUN 模式,在网络层接管全部出站流量;Windows 首次启用要以管理员身份安装一次系统服务,macOS 与 Linux 会弹出一次授权请求。
step-4 验证与排查
判断是否真的生效,不要只看客户端里的开关颜色。先在代理页对当前策略组做一次延迟测试,确认选中的节点有正常的毫秒数而不是超时;再打开一个境外网页,回到客户端的连接页查看这条请求命中了哪条规则、走了哪个出口。如果连接页里根本没有新记录,说明流量没进入 Clash,问题在系统代理或 TUN 层;如果有记录但一直失败,问题在节点或 DNS。把日志级别调到 debug 可以看到 DNS 解析与规则匹配的完整过程。按这个顺序定位,绝大多数"已连接但打不开"都能在几分钟内收敛到具体环节。
最新技术笔记
Clash 已连接但网页打不开:从节点延迟到 DNS 的逐项排查清单
代理开关是绿的,浏览器却一直转圈,问题可能出在节点、规则、DNS 或系统代理任何一环。按从易到难的顺序列出九个检查点。
阅读全文 →Clash 提示端口被占用怎么办:定位 7890 端口冲突进程并修改混合端口
启动报 bind: address already in use 说明默认端口被占用。三平台查找占用进程的命令与修改 mixed-port 的完整步骤。
阅读全文 →Clash 客户端界面各区块速览:代理页、配置页、日志页分别管什么
第一次打开客户端容易在陌生界面里迷路。按区块讲清节点与策略组、订阅管理、连接记录各自的用途与最常操作的位置。
阅读全文 →