Clash 基础
了解 Clash 的基本概念、定位与使用场景
Clash 是一款基于规则的跨平台网络代理工具,由 Go 语言编写,遵循 GPL-3.0 开源协议。它通过 YAML 配置文件定义代理节点、分流规则与出站策略组,实现对网络流量的精细化管控。
目前最活跃的核心版本为 Mihomo(原 Clash.Meta),在原版基础上新增了大量现代代理协议支持与功能增强,是社区公认的最佳选择。
Clash 核心(Mihomo)以及所有主流图形化客户端均完全免费且开源,永久不会收费:
- Clash Verge Rev — 免费开源(MIT 协议)
- FlClash — 免费开源(GPL-3.0 协议)
- ClashMeta for Android — 免费开源(GPL-3.0 协议)
- Mihomo 内核 — 免费开源(GPL-3.0 协议)
需要注意:代理节点服务(机场)是独立的第三方服务,通常按流量或月付收费,与 Clash 软件本身无关。
- VPN:将全部流量加密隧道转发到 VPN 服务器,国内外流量一刀切全走代理,访问国内网站反而变慢,无法灵活控制。
- Clash:基于规则精细分流,国内流量直连(高速)、境外流量走代理;支持 20+ 协议,可精确到进程级别的流量控制。
对于需要灵活管控网络的用户,Clash 的规则分流能力远超传统 VPN,是更推荐的选择。
Mihomo(原名 Clash.Meta)是 Clash 的功能增强社区分支,目前是最活跃、功能最完整的核心版本。主要增强包括:
- Hysteria2、TUIC v5、VLESS、WireGuard 等新协议原生支持
- Reality 传输层、ECH 等现代安全特性
- 更完善的 TUN 模式与 Rule-Set 规则集
- Proxy Provider 订阅管理、MixedPort 混合端口
现在大多数图形客户端(Clash Verge Rev、FlClash)默认使用 Mihomo 内核,直接选用即可。
- Windows 10/11:Clash Verge Rev、Clash Nyanpasu、FlClash
- macOS 11+:Clash Verge Rev、FlClash、ClashX Meta(Intel & Apple Silicon 均支持)
- Linux:Clash Verge Rev、FlClash(支持主流发行版)
- Android 7.0+:ClashMeta for Android
- iOS / iPadOS:Stash、Choc(需 App Store 购买)
前往下载中心获取各平台最新版本。
安装与配置
从零开始安装客户端、导入订阅并完成基础配置
前往下载中心,根据你的操作系统选择对应客户端。各平台推荐客户端:
- Windows / macOS / Linux:下载 Clash Verge Rev,运行安装程序按提示操作即可
- Android:下载 ClashMeta for Android 的 APK,启用「允许未知来源安装」后安装
- iOS:在 App Store 搜索 Stash 购买安装
以 Clash Verge Rev 为例(其他客户端操作类似):
- 打开软件,点击左侧「配置」菜单
- 点击右上角「+」→ 选择「远程」
- 在「URL」栏粘贴机场提供的 Clash 订阅链接,填写备注名称
- 点击「下载」,完成后点击勾号将其设为当前配置
建议开启自动更新(推荐间隔 24 小时),节点列表会自动保持最新。
Clash 配置文件为 YAML 格式(config.yaml),包含以下主要部分:
proxies:节点列表,定义代理服务器信息proxy-groups:策略组,如 URL-Test 自动选速、Select 手动选择rules:分流规则,从上到下依次匹配dns:DNS 配置,可指定上游 DNS 与解析模式
可以用任意文本编辑器修改,推荐使用 VS Code(安装 YAML 插件),可自动检测缩进错误。修改后在客户端重新加载配置即可生效。
主流客户端均内置开机自启开关:
- Clash Verge Rev:设置 → 系统设置 → 开机自启动;可同时开启「静默启动」避免弹窗
- FlClash:应用设置 → 开机自启
- ClashMeta for Android:设置 → 开机启动;需在系统权限中允许自启动
建议同时开启系统代理自动启用,这样每次开机后 Clash 会自动接管系统流量,无需手动操作。
配置文件存储路径:
- Windows:
%APPDATA%\clash-verge - macOS:
~/Library/Application Support/clash-verge - Linux:
~/.config/clash-verge
将整个目录复制到新设备的对应位置,重装客户端后即可恢复所有配置。如果只使用订阅链接,在新设备重新导入链接并更新是最简单的方法,无需手动迁移文件。
日常使用
节点管理、模式切换与高级功能使用方法
- 规则模式(Rule):根据配置文件中的规则逐条匹配,自动决定每个连接走代理还是直连。推荐日常使用,国内国外都快。
- 全局模式(Global):所有流量强制走代理节点,不经过规则匹配。适合临时测试节点,但会导致国内网站变慢。
- 直连模式(Direct):所有流量直接连接,相当于完全关闭代理。适合排查网络问题时临时使用。
在客户端「代理」或「节点」页面,点击测速按钮(闪电图标)可对全部节点发起延迟测试,结果实时显示在节点旁。在策略组内点击节点名称可立即切换,无需重启。
使用 URL-Test 策略组,Clash 会自动选择延迟最低节点,无需手动操作。延迟参考值:100ms 以下体验极佳,100–200ms正常可用,200ms 以上可能出现卡顿。
TUN 模式需要管理员 / root 权限才能创建虚拟网卡。以 Clash Verge Rev 为例:
- 进入「设置」→「系统代理」板块
- 开启「TUN 模式」开关
- 系统提示请求管理员权限,点击「是」允许
- 等待驱动安装完成(首次使用约需 10–30 秒)
开启后,游戏客户端、命令行工具(curl、git)等不支持系统代理的程序也会经过 Clash 处理。
有两种方式:
- 规则方式(推荐):在配置文件
rules顶部添加 PROCESS-NAME 规则,例如- PROCESS-NAME,WeChat.exe,DIRECT,该进程的所有流量将直接连接。 - 客户端 UI:部分客户端(如 Clash Verge Rev)在「设置」中提供「绕过列表」功能,可通过界面直接添加进程名或 IP 段。
常见需要绕过的应用:国内游戏(Steam 国区、王者荣耀等)、企业内网工具、部分银行 App。
- Clash Verge Rev:左侧「连接」菜单,实时显示每个连接的目标地址、走哪个节点、上下行流量
- 日志级别:在设置中将日志级别调为
info或debug,可查看规则匹配详情,便于排查分流问题 - Web 面板:通过 Yacd(
http://localhost:9090/ui)或 MetaCubeX 面板,获得可视化监控
日志是排查「为什么这个网站没走代理」的最好工具,遇到问题时优先查看日志。
网络与 DNS
DNS 模式选择、防泄漏配置、IPv6 与局域网共享
- Fake-IP:应用发起 DNS 查询时,Clash 立即返回虚假 IP(
198.18.x.x),规则匹配基于原始域名,真实 DNS 查询发生在代理侧,完全避免 DNS 污染,连接建立更快。推荐大多数用户使用。 - Redir-Host:Clash 先向国内外 DNS 同时查询,根据解析结果决定路由。兼容性更好,但有 DNS 泄漏风险且首次连接延迟略高。
少数需要真实 IP 的应用(如某些网络游戏 NAT 检测)在 Fake-IP 下可能异常,可将该应用域名加入 fake-ip-filter 白名单解决。
防止 DNS 泄漏的推荐配置组合:
- 启用 Clash 内置 DNS 模块(
dns: enable: true),不依赖系统 DNS - 境外域名使用加密 DNS(DoH 示例:
https://1.1.1.1/dns-query) - 启用 Fake-IP 模式,避免向上游 DNS 暴露访问的域名
- 开启 TUN 模式,确保 DNS 请求不会绕过 Clash 直接发出
配置完成后可通过 dnsleaktest.com 验证,结果中应只显示代理节点所在地的 DNS。
Mihomo 内核提供完整 IPv6 支持,涵盖 DNS AAAA 记录解析、IPv6 规则匹配(IP-CIDR6、GEOIP)、TUN 设备 IPv6 路由转发及代理节点 IPv6 出口连接。
启用方式:在配置文件顶部添加 ipv6: true,DNS 配置中也需确保允许 AAAA 查询。如遇 IPv6 连接异常,可临时设置 ipv6: false 禁用以排查问题。
在配置文件中设置 allow-lan: true,Clash 即可接受来自局域网的代理请求。其他设备在 WiFi 设置中配置 HTTP 代理,服务器填写运行 Clash 的设备局域网 IP(如 192.168.1.100),端口填写混合端口(默认 7890)即可。手机、平板、智能电视均支持此方式。
故障排查
遇到问题时的排查思路与常见解决方案
按以下步骤逐一排查:
- 第一步:关闭 Clash,检查不走代理时网络是否正常
- 第二步:手动刷新订阅,更新到最新节点列表
- 第三步:切换到其他节点,部分节点可能已被封锁
- 第四步:检查防火墙是否阻止 Clash 出站连接
- 第五步:将日志级别调为
debug,查看具体连接错误信息
如所有节点均超时,很可能是机场服务器问题,建议联系机场客服确认节点状态。
- 选低延迟节点:测速后选择延迟在 100ms 以内的节点,或使用 URL-Test 自动选最快节点
- 检查代理模式:确认是「规则模式」而非「全局模式」,避免国内流量绕路
- 换更快协议:Hysteria2 或 TUIC 基于 QUIC/UDP,在高丢包、高延迟网络下表现远好于 TCP 协议
- 优化 DNS:启用 DoH / DoT 减少 DNS 解析延迟
- 联系机场:如全部节点均慢,可能是机场带宽拥挤,尝试在非高峰期使用或更换套餐
这通常是规则未将该网站设为直连,流量被代理到境外节点导致。解决方案:
- 确认当前为「规则模式」而非全局模式
- 手动在规则顶部添加直连规则:
- DOMAIN-SUFFIX,example.cn,DIRECT - 更新 GeoSite / GeoIP 数据库到最新版(客户端设置中通常有更新按钮)
- 替换为更完善的社区规则集,如 Loyalsoldier Clash Rules
- 权限不足:以管理员身份重新运行客户端(右键 → 以管理员身份运行)
- 驱动冲突:关闭其他 VPN 软件(WireGuard、OpenVPN、Cisco AnyConnect 等)后再试
- Windows 驱动问题:在设置 → 服务模式 → 重新安装 Service Mode 驱动
- 临时恢复:关闭 TUN 模式,改用系统代理模式
如问题持续,可在 GitHub Issues 中附上日志文件寻求社区帮助。
该错误表示 Clash 要使用的端口(默认 7890)已被其他程序占用:
- 方法一(推荐):修改配置文件中
mixed-port的值(如改为7891) - 方法二:找到并关闭占用端口的程序。Windows:
netstat -ano | findstr 7890,找到 PID 后在任务管理器结束;macOS / Linux:lsof -i :7890 - 方法三:同时安装了多个 Clash 客户端时,确保只运行其中一个
未找到相关问题,请尝试其他关键词,或浏览分类查找。