Clash · 以规则之名,掌控网络之流

跨平台规则型代理工具,支持 Shadowsocks、VMess、Trojan 等多种协议,毫秒级规则匹配,低资源占用。

48.2k stars 100k+ 用户 MIT 开源协议
# clash 配置示例
rules:
  - DOMAIN-SUFFIX,google.com,Proxy
  - DOMAIN-SUFFIX,github.com,Proxy
  - GEOIP,CN,DIRECT
  - MATCH,DIRECT
proxies:
  - name: "hk-node"
    type: vmess
    server: example.com
    port: 443

核心特性

🧩 规则灵活

支持 DOMAIN、IP-CIDR、GEOIP、PROCESS-NAME 等丰富规则类型,实现精细化分流。

⚡ 高性能核心

原生 Go 实现,毫秒级规则匹配,内存占用低于 20MB,极速体验。

🔌 多协议兼容

Shadowsocks、VMess、Trojan、Snell、SOCKS5、HTTP(S) 全协议支持。

🌍 跨平台覆盖

Windows、macOS、Linux、Android、iOS、OpenWrt 全生态支持。

🛠️ 声明式配置

YAML 配置文件,多配置切换与远程订阅,简洁强大。

🔄 热重载

修改配置无需重启,自动感知变更并应用新规则。

工作原理解析

用户请求 → Clash 规则引擎 → 匹配策略 → 代理链/直连
Clash 在内核层拦截应用程序的网络请求,通过高性能规则引擎匹配域名、IP、进程等条件,决定流量走向:直连、拒绝或经代理出口。

快速开始

1️⃣ 下载 Clash

下载适合版本

2️⃣ 编辑配置

port: 7890
socks-port: 7891
proxies:
- name: "my-server"
type: ss
server: example.com
port: 8388
rules:
- DOMAIN-SUFFIX,google.com,Proxy

3️⃣ 运行 Clash

终端执行 ./clash -f config.yaml 或双击图形客户端,即刻生效。

下载 Clash

Windows (.exe) macOS (.dmg) Linux (.tar.gz)GitHub Releases

最新版本 v1.18.0 · 2026-03-15 · 全平台支持

mobile qr

社区与生态

GitHub 贡献者 300+
总下载量超 200 万次
48k stars
“Clash 规则系统非常灵活,让我精细管理家庭网络” — @TechGeek
生态项目:Clash Dashboard · Yacd · Clash Meta
论坛讨论Telegram 群组Discord 社区中文文档

常见问题 (FAQ)

1. 如何解决 Clash 配置无法生效的问题?
✅ 步骤1:检查 YAML 缩进格式是否正确;步骤2:确认代理服务器地址端口可达;步骤3:查看日志输出是否有报错信息;步骤4:尝试使用 `-d` 参数指定工作目录;步骤5:更新到最新版本修复已知bug;步骤6:若规则未匹配,可添加 MATCH 兜底规则。通常配置校验即可生效。
2. 如何利用规则分流实现国内网站直连?
✅ 步骤1:定义 GEOIP 规则识别国内IP;步骤2:添加 DOMAIN-SUFFIX 针对常见国内域名直连;步骤3:使用 RULE-SET 加载国内域名列表;步骤4:直连策略设置为 DIRECT;步骤5:确保配置无冲突,优先匹配精细规则;步骤6:通过日志验证分流结果。实现毫秒级智能路由。
3. Clash 内存占用过高怎么办?
✅ 步骤1:检查是否开启大量无用规则集;步骤2:减少日志级别为 warning;步骤3:禁用不必要的 DNS 缓存;步骤4:升级至官方最新核心;步骤5:排查是否存在配置订阅循环更新;步骤6:使用轻量版 clash 内核。通常可控制在 30MB 以下。
4. 如何在移动端 (Android/iOS) 使用 Clash 配置?
✅ 步骤1:Android 安装 Clash Meta for Android;步骤2:导入配置文件(.yaml)或订阅链接;步骤3:开启 VPN 权限;步骤4:iOS 用户可使用 Stash 或 Quantumult X,导入相同规则;步骤5:调整混合流量模式;步骤6:确保代理协议兼容移动网络。跨平台统一配置极简同步。
5. 怎样为不同应用程序设置独立代理策略?
✅ 步骤1:使用 PROCESS-NAME 规则类型;步骤2:编写规则如 `PROCESS-NAME,Discord.exe,Proxy`;步骤3:支持通配符匹配进程名;步骤4:针对游戏、浏览器分别定义出口;步骤5:开启 TUN 模式(若需要);步骤6:重启 Clash 使规则生效,实现应用级分流。
6. 如何参与 Clash 开源贡献并获取开发文档?
✅ 步骤1:访问 GitHub 仓库 Dreamacro/clash;步骤2:阅读贡献指南和开发者协议;步骤3:Fork 项目并创建特性分支;步骤4:提交符合规范的 PR;步骤5:加入社区 Discord 与核心开发者交流;步骤6:查阅 /docs 目录获得架构说明。欢迎大家共建生态。

Clash · Rule your traffic, take control

Cross-platform rule-based proxy utility, supporting Shadowsocks, VMess, Trojan, millisecond rule matching, low resource usage.

48.2k stars 100k+ users
rules:\n  - DOMAIN-SUFFIX,google.com,Proxy\n  - GEOIP,CN,DIRECT\nproxies:\n  - name: example\n    type: vmess

Core Features

🧩 Flexible Rules

DOMAIN, IP-CIDR, GEOIP, PROCESS-NAME for fine-grained traffic control.

⚡ High Performance

Native Go, <20MB memory, millisecond matching.

🔌 Multi-Protocol

SS, VMess, Trojan, SOCKS5, HTTP(S).

🌍 Cross-Platform

Windows, macOS, Linux, Android, iOS, OpenWrt.

🛠️ YAML Config

Declarative config with remote subscribe.

🔄 Hot Reload

Apply changes without restart.

How it works

User Request → Clash Rule Engine → Match Policy → Proxy/Direct

Platform Support

Windows (CFW)
macOS (ClashX)
Linux (CLI)
Android (CMFA)
iOS (Stash)
OpenWrt

Quick Start

1️⃣ Download

Get Clash

2️⃣ Edit Config

port: 7890\nproxies:\n - name: server\n type: ss

3️⃣ Run Clash

./clash -f config.yaml

Downloads

Windows .exe macOS .dmg Linux

Latest v1.18.0 · 2026-03-15

Community & Ecosystem

GitHub 300+ contributors · 48k stars
“Clash gives me precise control over my home network” — @TechGeek
Ecosystem: Clash Dashboard, Yacd, Clash Meta

Frequently Asked Questions

1. Config not working?
Step1: Validate YAML indentation. Step2: Check proxy server reachable. Step3: Inspect logs. Step4: Run with `-d` directory. Step5: Upgrade to latest. Step6: Add MATCH rule fallback.
2. How to bypass Chinese websites?
Step1: GEOIP,CN rule. Step2: DOMAIN-SUFFIX for .cn domains. Step3: Use RULE-SET. Step4: Set DIRECT policy. Step5: Prioritize rules. Step6: Verify logs. Smart routing achieved.
3. High memory usage?
Step1: Reduce useless rule sets. Step2: Lower log level. Step3: Disable excessive DNS cache. Step4: Update core. Step5: Check subscription loops. Step6: Use lightweight build. Typically under 30MB.
4. Mobile setup (Android/iOS)?
Step1: Install Clash Meta for Android. Step2: Import config. Step3: Grant VPN permission. Step4: iOS use Stash/Quantumult X. Step5: Adjust mixed mode. Step6: Ensure protocol compatibility.
5. App-specific proxy?
Step1: Use PROCESS-NAME rule. Step2: Write `PROCESS-NAME,Discord.exe,Proxy`. Step3: Wildcard support. Step4: Define per app. Step5: Enable TUN if needed. Step6: Restart Clash.
6. Contribute to Clash?
Step1: Visit GitHub Dreamacro/clash. Step2: Read contribution guide. Step3: Fork & branch. Step4: Submit PR. Step5: Join Discord. Step6: Check /docs for architecture. Welcome!