入门指南 预计阅读 12 分钟

Clash 客户端首次安装与初始设置:Windows、macOS、Android 通用步骤与常见坑

按平台梳理首次安装 Clash 客户端的通用流程:系统权限授予、订阅导入、端口与系统代理开关,并汇总安装后无法启动、证书提示等新手常见问题。

安装前:确认客户端、内核与系统架构

Clash 客户端通常由图形界面和代理内核组成。界面负责导入配置、选择节点和设置系统代理;内核负责解析规则、建立连接和转发流量。Clash Meta 现名 mihomo,属于内核项目。带有 Clash 名称的不同客户端,不代表使用相同内核,也不代表支持相同字段。

首次安装先确定三件事:设备架构、客户端支持的系统版本,以及订阅是否提供适配当前内核的配置。旧版 Clash 内核不能直接等同于 mihomo;例如订阅包含 Hysteria2 等节点时,需要客户端内置支持该协议的内核。

平台查看位置安装包选择
Windows 11设置 → 系统 → 系统信息 → 系统类型x64 设备选 x64;ARM 设备先确认原生 ARM64 包与兼容性
macOS苹果菜单 → 关于本机Apple 芯片选 arm64;Intel 处理器选 x64
Android设置 → 关于手机,并参考设备处理器资料多数较新的设备选 arm64-v8a;旧设备按支持情况选 armeabi-v7a

Android 的 64 位处理器不一定意味着系统提供 64 位应用运行环境。若提示安装包不兼容,可检查系统实际支持的 ABI;熟悉 ADB 的用户可运行 adb shell getprop ro.product.cpu.abilist。不确定时,使用该客户端提供的通用包,并核对最低 Android 版本。

Windows:安装、启动与本地代理端口

先完成普通启动,再配置接管方式

  1. 下载与系统架构匹配的安装包。安装版按向导完成安装;便携版先解压到固定目录,不要直接在压缩包预览窗口中启动。
  2. 首次以普通用户权限启动。确认主窗口可打开,状态页能显示内核运行信息,日志没有持续出现启动失败。
  3. 导入并激活配置后,记录客户端当前显示的 HTTP、SOCKS 或混合端口。本文使用 7890 举例,实际值以当前配置为准。
  4. 首次测试优先使用“规则”模式与“系统代理”。暂不启用 TUN,避免同时引入虚拟网卡、路由和服务权限变量。

Windows 防火墙提示与管理员权限提示不是同一件事。使用本机回环地址接入代理,通常不需要向公共网络开放入站访问。只有确实需要让其他设备连接本机时,才考虑局域网监听和防火墙规则;同时应设置访问认证和限制来源。

检查系统代理是否指向正确端口

Windows 11 可在「设置」→「网络和 Internet」→「代理」查看手动代理配置。客户端启用系统代理后,地址通常指向 127.0.0.1,端口应与其 HTTP 或混合端口一致。不要把仅支持 SOCKS 的端口填入 HTTP 代理位置。

# PowerShell:检查示例端口是否正在监听
Get-NetTCPConnection -LocalPort 7890 -State Listen

# 使用系统自带 curl.exe,显式经过本地 HTTP 代理
curl.exe -I --proxy http://127.0.0.1:7890 https://example.com

第一条命令没有结果时,先确认端口是否写错、内核是否运行。第二条命令测试的是显式代理链路,不证明所有应用都已经读取系统代理。使用 curl.exe 而非 curl,也可避免部分 PowerShell 环境中的别名差异。

macOS:应用安装与网络权限

  1. 打开安装镜像,将应用拖入「应用程序」目录,再从该目录启动。避免长期从只读镜像运行,以免更新或辅助组件安装失败。
  2. 确认安装包架构。Apple 芯片设备优先使用 arm64 构建;Intel 设备不能运行仅面向 Apple 芯片的应用。
  3. 如客户端请求安装辅助工具,先确认提示中的应用名称和用途。写入系统代理或创建 TUN 接口可能需要授权,单纯导入订阅一般不需要这些权限。
  4. 启用系统代理后,在 macOS 13 及以后版本的「系统设置」→「网络」→「当前网络服务」→「详细信息」→「代理」中核对地址与端口。

不同版本的系统菜单名称可能略有差异。检查时关注当前正在使用的网络服务,例如 Wi-Fi 或以太网,而不是只查看未连接的服务。HTTP、HTTPS 和 SOCKS 是不同代理入口,是否启用由客户端实现决定,不需要自行把所有选项都勾上。

需要终端确认系统代理时,可运行 scutil --proxy。查看其中 HTTP、HTTPS 或 SOCKS 的启用状态和端口,再与客户端对照。终端工具未必读取 macOS 系统代理,因此测试命令仍建议显式指定 --proxy。

Android:VPN 授权与后台运行设置

Android 客户端常通过系统的 VpnService 创建本地 VPN 接口,将设备流量交给代理内核。这不是要求另购一份 VPN 服务,也不等于所有连接必定走远端节点;最终出口仍由规则、代理组及分应用设置决定。

  1. 安装 APK 时,仅向用于打开安装包的应用临时授予安装权限。常见路径为「设置」→「应用」→「特殊应用权限」→「安装未知应用」,具体名称以设备系统为准。
  2. 打开客户端,导入配置并选为当前配置。确认节点和代理组已经出现,再点击连接或启动。
  3. 阅读系统 VPN 连接请求,确认请求来自刚安装的客户端后允许。状态栏出现 VPN 标识只代表接口已建立,不代表远端节点一定可用。
  4. 若锁屏后断流,在「设置」→「应用」→「客户端名称」→「电池」中检查后台限制。部分厂商还需在自启动或后台管理页面允许持续运行。

同一用户或工作资料中的 VPN 服务通常不能任意并行使用。若设备已运行企业 VPN、基于 VPN 的防火墙或其他代理工具,启动新客户端可能使原连接断开。测试前先确认当前 VPN 归属,避免把服务切换误判成节点故障。

首次安装不建议立即开启“始终开启的 VPN”和“无 VPN 时阻止连接”。先验证订阅、节点和联网均正常,再按需要启用。若已启用阻断功能却停止了客户端,设备无法联网可能是预期的系统行为。

订阅导入:更新成功后还要激活配置

按顺序确认地址、内容与当前配置

  1. 在客户端的订阅或配置页面选择 URL 导入,粘贴完整地址。不要手动删除查询参数,也不要把网页展示标题当作订阅链接。
  2. 完成下载后查看更新时间和解析结果。下载成功但内容是登录页面、错误提示或其他客户端格式,仍然无法成为有效配置。
  3. 将新配置设为当前使用项。列表里出现一条订阅记录,不一定表示内核已经切换到这份配置。
  4. 进入代理组页面,选择一个可用节点或自动选择组。若规则最终指向一个手动选择组,该组的实际选项会直接影响请求出口。

“订阅更新失败”首先检查链接是否过期、网络是否能访问提供方,以及服务器是否返回有效内容。客户端若提供“通过代理更新”选项,首次配置尚无可用节点时可能无法依靠这条路径更新,应按提供方说明选择可用的更新方式。

自动更新可以先设为 24 小时一次,这是起步建议,不是各客户端的默认值。图形界面订阅更新通常会替换本地配置;直接在下载文件中修改字段,可能在下次更新时丢失。需要长期保留的改动,应使用客户端支持的覆写或合并功能,并先备份。

区分完整配置与代理提供者

完整 YAML 配置可以同时包含 proxies、proxy-groups、rules 和 DNS 设置。proxy-providers 则用于在配置内引用节点来源,其 interval 字段不能一概当作图形客户端的整份订阅更新间隔。只拿到节点列表时,也不应假定其中已经包含分流规则。

初始设置:端口、规则模式与 TUN 的边界

首次验收建议只保留一个客户端运行。两个客户端同时写系统代理,或两个内核监听同一个端口,都会增加判断难度。下面是本地配置字段示例,不含节点,不能单独作为联网配置使用。

mixed-port: 7890
allow-lan: false
mode: rule
log-level: info
  • mixed-port:在同一端口接收 HTTP 与 SOCKS 代理连接。示例为 7890,端口被占用时可改为其他空闲值,并同步更新使用方。
  • allow-lan: false:不开放局域网接入。首次在单机使用时保持关闭,可减少不必要的暴露面。
  • mode: rule:按规则决定直连、代理或拒绝。全局模式适合临时对照测试,不应替代对规则命中的检查。
  • log-level: info:先保留常规日志。需要定位问题时短时切换调试级别,分享日志前删除订阅凭据、节点密码和私人访问记录。

系统代理只对遵循相应设置的应用有效,并不自动接管所有 UDP、游戏或自带网络栈的程序。桌面 TUN 使用虚拟网卡和路由接管更多流量,通常需要管理员权限或辅助服务。Android 的 VPN 接管与桌面系统代理也不能简单按同一个开关理解。

首次测试通过后,若目标应用仍不读取系统代理,再考虑 TUN。启用前记录原来的开关状态,避免与其他 VPN 同时运行。DNS 模式、路由排除和 TUN 协议栈应按内核及客户端文档配置,不必把网上整段 YAML 直接覆盖到订阅中。

首次联网验收与常见报错

用三步区分接入、规则与节点问题

  1. 检查本地接入。确认内核运行且端口监听,桌面端用显式代理命令测试;Android 确认 VPN 已启动,目标应用没有被分应用规则排除。
  2. 检查连接记录。发起一次新的网页请求,在客户端连接页面查看域名、命中规则与出口链。出现 DIRECT 可能是规则预期,不代表系统代理失效。
  3. 检查远端响应。比较两个不同站点,并尝试切换同一代理组中的另一个节点。延迟测试有数值只表示测试目标的结果,不能代表所有网站都可访问。
安装后双击没有反应,先检查什么?

先看系统托盘或菜单栏是否已有实例,再检查架构和最低系统版本。Windows 可在任务管理器查看进程,必要时查看应用日志或事件查看器。若发布说明要求特定运行库或 WebView2,按官方依赖说明安装,不要从不明站点下载单独的 DLL。便携版还应确认已完整解压、目录可写。

日志出现 address already in use 怎么办?

这通常表示监听端口已被占用。Windows 可用 netstat -ano | findstr :7890 查找进程编号;macOS 可用 lsof -nP -iTCP:7890 -sTCP:LISTEN 查看监听进程。先退出重复客户端,或修改端口。修改后必须同步调整系统代理与手动配置的应用。

HTTPS 网站出现证书错误,是否需要安装证书?

普通 HTTP CONNECT、SOCKS 或 TUN 转发通常不需要安装客户端根证书。先检查设备日期与时区、网站域名及证书有效期,并确认网络是否存在登录门户或企业 HTTPS 检查。不要为消除报错而安装来源不明的根证书,也不要把 skip-cert-verify 改为 true 作为默认处理。

若报错出现在节点的 TLS 握手日志中,应核对节点服务器名、SNI 和服务端证书,由服务提供方修正配置;这与浏览器访问目标网站时的证书错误属于不同环节。

退出客户端后,浏览器反而无法联网?

先检查系统代理是否仍指向已停止监听的 127.0.0.1:7890。重新打开客户端关闭系统代理,再正常退出;若客户端无法启动,可在系统代理设置中移除残留手动代理。Android 则检查是否启用了“无 VPN 时阻止连接”,按需恢复原设置。

下载客户端