HANDBOOK · REF-ALL-05 · 全平台安装配置

Clash 全平台安装配置大全:五平台逐章手册

本页按 Windows、macOS、Android、iOS、Linux 五个平台分章,每章覆盖客户端下载、安装、订阅导入、系统代理与 TUN 模式设置,以及该平台特有的问题处理;另设通用准备工作与配置常见问题两章。定位是系统查阅手册:按目录跳到所在平台的章节,逐节对照操作即可。

五平台覆盖 含 TUN 设置 配置排错附录
ROUTING · 本页与教程页的分工

站内有两条路径通向同一个结果。教程页是快速上手主线:只走一条最短路径,从下载到验证连通,适合第一次接触 Clash 的用户按顺序跟做。本页是完整手册:五个平台全部展开,每个平台的安装包形态、代理接管方式、特有问题都单独成节,适合已经装好但卡在某一步、或需要在多台设备上部署的用户按章查阅。

安装包获取一律走客户端下载页,按平台标签切换;单条问答式的疑问先查疑难解答页;本页出现的专业名词在名词解释页有独立词条。

CH-00 · 通用准备工作:开始前备齐三样东西

任何平台的安装流程都建立在三个前提之上:一个与设备匹配的客户端安装包、一条有效的订阅链接、以及对「客户端—内核—配置」三层关系的基本认识。三样缺一样,后面的步骤都会在某处卡住,所以先把这一章过完再进平台章节。

客户端、内核与配置的关系

日常说的「Clash 客户端」是一个图形界面外壳,内部封装了真正处理流量的内核程序(目前主流客户端普遍内置 Mihomo 内核)。客户端负责界面交互:导入订阅、切换节点、开关系统代理;内核负责按配置文件建立代理连接、匹配规则、转发流量。配置文件(Profile)是一份 YAML 文档,包含节点、策略组、规则三块内容,通常由订阅链接自动生成,不需要手写。理解这个分层后,排错思路会清晰很多:界面异常查客户端,连接异常查配置与节点,规则不生效查配置里的 rules 段。

订阅链接的获取与保管

订阅链接由代理服务的提供方签发,一般在其用户中心以「复制订阅」按钮的形式提供,复制出来是一条完整的 https 地址。导入客户端时粘贴这条地址,客户端会定期从该地址拉取最新的节点与规则。两条保管纪律:第一,订阅链接内含身份标识,等同账号凭据,不要贴进聊天群、不要出现在截图里;第二,链接失效或到期后客户端会更新失败,此时先去服务方用户中心重新复制,而不是先怀疑客户端故障——订阅失效的完整判断顺序见订阅链接失效自查清单一文。

平台与客户端对应关系

五个平台可用的客户端不同,下表是本站下载页收录的清单摘要,各平台首选项统一为 Clash Plus(iOS 经 App Store 分发,其余平台为安装包):

平台首选客户端备选客户端安装包形态
WindowsClash PlusClash Verge Rev / FlClash / Clash Nyanpasu.exe 安装程序
macOSClash PlusClash Verge Rev / FlClash.dmg 镜像,分芯片架构
AndroidClash PlusClash Meta for Android / FlClash / Surfboard.apk,分 ABI 架构
iOSClash Plus(App Store)App Store 安装
LinuxClash Verge RevFlClash.deb / .rpm

已停止维护的 Clash for Windows 与 ClashX Meta 在下载页以归档形式保留,存量用户可继续获取,但新装机不建议选它们——后续内核与协议支持不会再跟进。

动手前的四项环境自检

下面四项检查每项只需一分钟,却能挡掉后续大半的「装好了但连不上」。顺序照做,任何一项不过关都先解决它再往下走。

第一项,系统版本是否够用。桌面端建议 Windows 10 1809 及以上、macOS 12 及以上;移动端建议 Android 8 及以上、iOS 15 及以上。过旧的系统即使能把客户端装上,也常因为缺少现代网络扩展接口而无法建立 TUN 或 VPN 通道,表现为开关一打开立刻回弹。遇到这种回弹先看系统版本,而不是反复重装客户端。

第二项,本机时间是否准确。主流代理协议的握手普遍带时间戳校验,系统时钟与真实时间偏差超过几分钟,就会出现握手失败、连接秒断或浏览器证书报错。把系统时间设为自动同步、时区设为所在地区,是成本最低的一步预防。

第三项,当前网络能否访问订阅地址。在浏览器里直接打开订阅链接:如果页面返回一大段以 proxies:rules: 开头的文本,或者直接触发一个文件下载,说明链接有效、网络通畅,可以放心导入;如果浏览器本身就打不开这个地址,问题在网络或链接一侧,此时无论换几个客户端都不会成功。这一步能把「客户端故障」和「订阅/网络故障」彻底分开,是最值得先做的判断。

第四项,机器上是否已有别的代理软件在跑。同一台设备上两套代理工具同时接管流量,会互相抢占本地端口、抢建虚拟网卡,症状五花八门且难以定位。安装新客户端前,把旧工具彻底退出——注意 Windows 托盘、macOS 菜单栏里的常驻图标,窗口关闭往往只是隐藏,进程还在。确认只有一套代理在工作,再进入平台章节。

凭据纪律 CREDENTIAL 订阅链接、面板账号密码属于个人凭据。本页所有示例中出现的地址与参数均为通用示意,替换成自己的真实值时,注意不要把真实链接留在共用设备的剪贴板或聊天记录里。

↑ 返回章节目录

CH-01 · Windows:安装、服务模式与 UWP 回环

下载与安装

前往下载页 Windows 分栏获取安装程序。首选 Clash Plus,备选 Clash Verge Rev、FlClash、Clash Nyanpasu,均为 x64 架构的 .exe 安装包,适配 Windows 10 与 Windows 11。双击安装程序,安装路径建议保持默认(避免中文或含空格的自定义路径,个别组件对此敏感)。首次运行新下载的安装程序时,SmartScreen 可能弹出「Windows 已保护你的电脑」提示,这是对低下载量文件的通用拦截:点击「更多信息」,再点「仍要运行」即可继续。安装完成后首次启动,系统防火墙会询问网络访问权限,勾选专用网络并允许。

导入订阅

打开客户端,进入配置(Profiles)页面,把订阅链接粘贴进地址输入框,点击导入/下载。客户端会拉取配置并生成一个配置卡片,点击卡片将其设为当前启用项。随后到代理(Proxies)页面确认节点列表已经加载——列表为空说明订阅拉取失败,按本页第七章的报错对照表排查。

系统代理与 TUN 模式

Windows 上有两种流量接管方式。方式一是系统代理:客户端首页打开「系统代理」开关,原理是改写系统 Internet 设置,让遵守该设置的应用(浏览器、多数桌面软件)把流量交给客户端监听的本地端口(默认 7890)。方式二是 TUN 模式:客户端创建一块虚拟网卡,在网络层接管全部出站流量,包括不读系统代理设置的命令行程序与游戏客户端。开启 TUN 前需要先在设置中安装服务模式(Service Mode),过程会弹出 UAC 授权窗口,同意后服务常驻,之后打开 TUN 开关即可。两种方式不要同时依赖:一般日常用系统代理即可,遇到某个程序不走代理时再切 TUN。

平台特有问题

UWP 应用回环限制。Microsoft Store 分发的 UWP 应用默认被系统禁止访问本机回环地址(127.0.0.1),因此在系统代理模式下,商店类应用可能完全不走代理。部分客户端设置里提供「UWP 回环豁免」工具,一键放行;也可以用系统自带命令手动豁免单个应用,例如放行商店本体:

CheckNetIsolation.exe LoopbackExempt -a -n="Microsoft.WindowsStore_8wekyb3d8bbwe"

不想逐个处理时,直接改用 TUN 模式,网络层接管不受回环限制影响。

端口占用。客户端启动报端口错误,通常是 7890 端口被其他程序(或上一次未退干净的客户端进程)占用。用以下命令查出占用进程的 PID,再到任务管理器结束它:

netstat -ano | findstr "7890"

开机自启。在客户端设置里打开开机自启与静默启动,让代理随系统就绪;若同时开启 TUN,需要服务模式已安装,否则自启后 TUN 不会自动生效。

迁移提示 MIGRATE 仍在使用 Clash for Windows 的用户注意:该客户端已停止维护,新协议与内核特性不再跟进。配置可通过重新导入订阅的方式平移到 Clash Plus 或 Clash Verge Rev,节点与规则由订阅端下发,迁移成本只是重装一个客户端。

↑ 返回章节目录

CH-02 · macOS:芯片架构、安全提示与增强模式

先确认芯片架构

macOS 安装包分 Apple Silicon(M 系列芯片,arm64)与 Intel(x64)两个版本,装错架构会无法启动或走低效转译。确认方法:点击屏幕左上角苹果菜单 → 「关于本机」,芯片一栏显示「Apple M…」选 Apple Silicon 版,显示「Intel…」选 Intel 版。确认后到下载页 macOS 分栏选对应的 .dmg 文件,首选 Clash Plus,备选 Clash Verge Rev 与 FlClash。

安装与首次启动

双击 .dmg 挂载镜像,把应用图标拖进 Applications 文件夹,推出镜像。首次打开来自网络下载的应用时,Gatekeeper 会弹出确认框,点「打开」即可;如果提示「无法打开,因为无法验证开发者」,在应用图标上右键 → 打开,再次确认。若提示「文件已损坏,请移到废纸篓」,这是隔离属性触发的拦截,并非文件真的损坏,在终端执行以下命令移除隔离标记后重新打开(路径按实际应用名调整):

xattr -dr com.apple.quarantine /Applications/Clash\ Plus.app

导入订阅

流程与 Windows 一致:配置页面粘贴订阅链接 → 导入 → 启用生成的配置 → 到代理页面确认节点列表非空。macOS 客户端通常驻留在菜单栏,主窗口关闭后从菜单栏图标重新唤出。

系统代理与 TUN(增强模式)

打开「系统代理」开关时,客户端需要修改系统网络偏好设置,首次会要求安装辅助程序并输入管理员密码,这是一次性授权。开启后,系统设置 → 网络 → 当前网络 → 详细信息 → 代理里可以看到 HTTP/HTTPS 代理已指向本地端口。TUN 模式(部分客户端称「增强模式」)会创建虚拟网络接口接管全部流量,首次开启同样需要管理员授权;系统弹出网络扩展或允许后台项目的确认时,一律允许,否则虚拟网卡建不起来。

平台特有问题

终端不走系统代理。命令行程序默认不读系统代理设置,在终端会话里手动导出环境变量即可(端口按客户端实际监听值):

export https_proxy=http://127.0.0.1:7890
export http_proxy=http://127.0.0.1:7890
export all_proxy=socks5://127.0.0.1:7890

开机自启。系统设置 → 通用 → 登录项,把客户端加入「登录时打开」;客户端自身设置里的自启开关与之等效,二选一即可,重复添加会启动两个实例。

ClashX Meta 用户。该客户端已停止维护,下载页以归档形式保留。存量配置可继续使用,但建议按上文流程迁移到 Clash Plus 或 Clash Verge Rev,订阅重新导入即可。

↑ 返回章节目录

CH-03 · Android:ABI 选包、VPN 授权与后台保活

按 ABI 架构选安装包

Android 安装包按 CPU 指令集(ABI)分包,选错会安装失败或无法运行。对照表如下:

包名标识适用设备说明
arm64-v8a近年主流手机64 位,绝大多数设备选它
armeabi-v7a老旧 32 位设备仅当 arm64 包装不上时回退
universal不确定架构的设备通用包,体积更大,兼容性兜底

安装包在下载页 Android 分栏获取,首选 Clash Plus,备选 Clash Meta for Android、FlClash、Surfboard。不确定设备架构时直接选 universal 包。

安装与授权

浏览器下载 .apk 后点击安装,系统会提示「不允许安装未知应用」,按提示进入设置,为当前浏览器(或文件管理器)打开「允许安装未知应用」开关,返回继续安装。这是 Android 对侧载应用的标准流程,逐应用授权一次即可。

导入订阅

打开客户端,进入配置页,新建配置 → 选择「URL / 订阅链接」类型 → 粘贴链接 → 保存。客户端拉取远端配置后生成配置项,选中启用。部分客户端支持从剪贴板直接识别订阅链接,复制后打开应用会弹出导入提示。

启动代理:VpnService 接管

Android 没有桌面系统那种「系统代理开关」,客户端通过系统的 VpnService 接口建立本地 VPN 通道接管流量,效果等同于桌面端的 TUN 模式。首次点击启动按钮,系统弹出「连接请求」对话框,确认后状态栏出现钥匙图标,代理即已生效。客户端设置里的「访问控制(Access Control)」可以指定哪些应用走代理、哪些直连,按需配置分应用代理。

平台特有问题

后台被杀。国产定制系统的省电策略会清理后台常驻进程,导致代理隔一段时间自动断开。处理方式:在系统电池/后台管理设置里把客户端设为「无限制」或加入白名单,并在最近任务界面把它锁定;各厂商入口名称不同,关键词是电池优化与自启动管理。

私人 DNS 冲突。系统设置里的「私人 DNS(Private DNS)」若指定了加密 DNS 服务商,会与客户端的 DNS 接管(尤其 fake-ip 模式)相互干扰,表现为部分域名解析异常。建议使用代理期间将私人 DNS 设为「自动」或关闭。

节点已选但个别应用不走代理。先检查访问控制名单是否把该应用排除在外,再确认该应用没有自带的代理绕过逻辑。

↑ 返回章节目录

CH-04 · iOS:App Store 安装与 VPN 配置授权

获取客户端

iOS 平台经 App Store 分发,客户端为 Clash Plus,商店入口见下载页 iOS 分栏,开发方官网为 clashplus.io,可作为核对应用信息的第一来源。在 App Store 搜索或经下载页链接直达详情页,按正常应用流程安装,适配 iPhone 与 iPad。

首次运行:允许添加 VPN 配置

iOS 上的代理接管通过系统网络扩展实现,客户端首次启动连接时,系统会弹出「"Clash Plus"想添加 VPN 配置」的确认框——这一步是必经流程,点「允许」,并按提示验证锁屏密码或 Face ID。授权完成后,系统设置 → 通用 → VPN 与设备管理里会出现对应条目,状态与客户端内的连接开关同步,任何一处都能查看当前是否已连接。

导入订阅

打开客户端进入配置页,选择通过 URL 添加,粘贴订阅链接后保存,客户端拉取并生成配置,选中启用;若已在 Safari 或其他应用复制过订阅链接,回到客户端时通常会收到剪贴板导入提示,确认即可。导入后到节点页面确认列表已加载,再回主界面打开连接开关。

使用要点与常见问题

切换配置与节点。更换配置或节点后客户端会自动重建连接,状态栏 VPN 图标短暂消失再出现属正常现象,不需要手动重连。

网络切换后的短暂中断。Wi-Fi 与蜂窝数据之间切换时,网络扩展需要重建通道,出现几秒不可用后自行恢复;若长时间未恢复,在客户端内手动关闭再开启连接开关。

低数据模式与 VPN 并存。系统的低数据模式可能限制后台流量,影响订阅自动更新的时机,重要更新建议在客户端前台手动触发。

订阅更新失败。与其他平台同理:先确认订阅链接本身有效(见第七章报错对照与订阅失效自查清单),再检查当前网络是否能直接访问订阅地址。

↑ 返回章节目录

CH-05 · Linux:桌面客户端、环境变量与内核直跑

客户端选择与安装

Linux 桌面端推荐 Clash Verge Rev,备选 FlClash,安装包在下载页 Linux 分栏提供 .deb(Debian/Ubuntu 系)与 .rpm(Fedora/RHEL 系)两种格式,按发行版选取。图形界面下双击交给软件中心安装,或在终端用包管理器安装(文件名以实际下载为准):

# Debian / Ubuntu 系
sudo apt install ./clash-verge-rev_amd64.deb

# Fedora / RHEL 系
sudo dnf install ./clash-verge-rev_x86_64.rpm

包管理器安装的好处是依赖自动补齐,失败时的报错也更可读。安装完成后从应用菜单启动,导入订阅的流程与 Windows 章节完全一致:配置页粘贴链接 → 导入 → 启用 → 确认节点加载。

系统代理:桌面环境与命令行分开处理

客户端的「系统代理」开关在 GNOME/KDE 下会写入桌面环境的代理设置,浏览器与多数图形应用随之生效。但命令行程序不读桌面代理设置,需要在 shell 里导出环境变量:

export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890
export all_proxy=socks5://127.0.0.1:7890

需要长期生效时写进 ~/.bashrc 或 ~/.zshrc;临时取消用 unset 逐个清除。个别桌面环境(或窗口管理器裸配)没有统一代理设置入口,此时环境变量是唯一通用手段,或直接使用 TUN。

TUN 模式与权限

Linux 下创建虚拟网卡需要 CAP_NET_ADMIN 权限。Clash Verge Rev 在开启 TUN 前会请求提权(弹出 pkexec 授权框),同意后由客户端为内核授予所需能力;若授权流程失败,可手动为内核可执行文件补能力位(路径以客户端实际安装位置为准):

sudo setcap cap_net_admin,cap_net_bind_service=+ep /usr/bin/mihomo

开启 TUN 后建议关闭系统代理开关,避免两层接管叠加造成回环。

无桌面环境:Mihomo 内核直跑

服务器与软路由场景不装图形客户端,直接运行 Mihomo 内核(下载页内核分栏提供各架构包)。将二进制放到 /usr/local/bin,配置文件放 /etc/mihomo/config.yaml,用 systemd 常驻:

[Unit]
Description=mihomo daemon
After=network.target

[Service]
Type=simple
ExecStart=/usr/local/bin/mihomo -d /etc/mihomo
Restart=on-failure

[Install]
WantedBy=multi-user.target

保存为 /etc/systemd/system/mihomo.service,然后 sudo systemctl enable --now mihomo 启用。配置内容可以直接使用订阅地址返回的 YAML,配好 external-controller 后可搭配网页面板远程管理。

定位建议 SCOPE 桌面日常使用选 Verge Rev 图形客户端即可;内核直跑适合无人值守环境,代价是所有调整都要手改 YAML,配置字段含义见第七章与相关文章。

↑ 返回章节目录

CH-06 · 配置常见问题:最小配置、关键字段与报错对照

一份最小可用配置

订阅下发的配置动辄数百行,排错时先对照最小结构理解骨架。以下是一份可以直接跑通的最小配置(节点段留空,仅演示结构):

mixed-port: 7890
allow-lan: false
mode: rule
log-level: info
external-controller: 127.0.0.1:9090

dns:
  enable: true
  enhanced-mode: fake-ip
  fake-ip-range: 198.18.0.1/16
  nameserver:
    - https://223.5.5.5/dns-query

proxies: []

proxy-groups:
  - name: 节点选择
    type: select
    proxies:
      - DIRECT

rules:
  - GEOIP,CN,DIRECT
  - MATCH,节点选择

从上到下:通用字段(端口、局域网、运行模式、日志级别、控制接口)→ DNS 段 → 节点列表 → 策略组 → 规则。逐段的字段详解见YAML 结构逐段解析一文,策略组四种类型的选型逻辑见策略组选型指南

关键字段速查

mixed-port:HTTP 与 SOCKS 合一的混合监听端口,系统代理指向它;改动后系统代理设置要同步。allow-lan:是否允许局域网内其他设备把本机当代理网关,开启时注意所在网络环境是否可信。mode:rule(按规则分流)/ global(全部走代理)/ direct(全部直连),日常保持 rule。log-level:排错时调成 debug 看详细日志,平时 info 即可。external-controller:RESTful 控制接口地址,图形客户端与网页面板靠它读写内核状态。

DNS 与 fake-ip 的排错要点

fake-ip 模式下内核给每个域名返回一个保留段假地址,连接建立时再映射到真实目标,优点是解析快、防泄漏,代价是个别依赖真实 IP 的场景(局域网服务发现、部分游戏对战)会异常,此时把相关域名加进 fake-ip-filter,或整体换回 redir-host 模式。另一类高频误判:开启代理后浏览器报 HTTPS 证书错误,多数与 DNS 或代理本身无关,而是系统时间、门户劫持等原因,判定流程见HTTPS 证书错误分析一文。

常见报错对照表

报错特征大概率原因处理方向
yaml: line N: 开头的解析错误YAML 缩进或冒号后缺空格定位到提示行号,检查缩进层级与冒号格式;避免用 Tab 缩进
unsupported proxy type配置里的协议类型当前内核不支持更新客户端至内置新内核的版本,或让订阅端下发兼容配置
address already in use / 监听失败端口被占用按平台章节的方法找到占用进程结束,或改用其他端口
订阅下载返回 403 / 404链接过期、失效或被服务端限制去服务方用户中心重新复制链接;完整流程见订阅失效自查清单
节点列表为空但无报错订阅返回内容非 Clash 格式确认复制的是 Clash 订阅而非其他客户端格式的链接
rules 段某行报 error规则类型或字段拼写错误对照规则语法逐字段检查,注意逗号分隔与策略名是否存在

怎样确认代理真的生效了

「客户端显示已连接」和「流量真的走了代理」是两件事。开关亮起只代表客户端认为自己接管成功,验证仍要看实际出站结果,方法有三层,由粗到细。

第一层,看出口 IP 与地区。在浏览器里打开任意一个显示自身 IP 的查询页面,记录未开代理时的结果,再开代理刷新对比。IP 与归属地都变成所选节点的地区,说明浏览器流量确实走了代理;数值毫无变化,说明系统代理没写进去,或者浏览器配置了独立的代理设置覆盖了系统值(浏览器扩展是常见元凶,排查时先全部禁用再试)。

第二层,看客户端连接日志。每个图形客户端都有连接(Connections)与日志(Logs)两个视图。连接视图逐条列出当前活跃连接的目标域名、命中的规则、使用的策略与出站节点;日志视图按时间顺序记录握手与解析过程。访问一个特定网站的同时观察连接视图,如果那条连接根本没出现,流量就没进内核;如果出现了但「规则」列显示 DIRECT,说明它被规则判成直连——这不是故障,而是规则如此,想改就调整策略组或规则顺序。这一层是最有信息量的排查手段,建议养成先看连接视图的习惯。

第三层,分别验证不同类型的流量。系统代理只覆盖遵守系统设置的应用,所以要分开验证:浏览器代表图形应用;命令行用 curl 测一次,能看出终端环境变量是否配好;游戏、聊天工具这类自带网络栈的程序,只有 TUN 模式才能可靠接管。三类里哪一类不通,就对应去查哪一层的接管方式,不要用浏览器的结果推断全机状态。

curl -x http://127.0.0.1:7890 -I https://example.com

命令返回 HTTP 状态行,说明本地端口可用、代理链路通;长时间无响应或报连接被拒,说明端口不对或内核没在监听,回到平台章节检查监听端口与进程状态。

订阅更新与配置备份的日常维护

装好之后还有两件长期要做的小事。其一是订阅更新。节点会调整、规则会补充,客户端设置里一般有自动更新间隔(常见默认 24 小时),保持开启即可;发现某个节点整体不可用时,先手动点一次更新,很多时候服务方已经替换了节点地址,更新完就恢复了。其二是配置备份。如果在下发配置之上做过本地改动(加了自定义规则、改过 DNS 段),记得把那份 YAML 单独存一份到别处,因为重新导入订阅通常会覆盖本地修改。更稳妥的做法是把自定义部分写成客户端支持的覆写/扩展脚本,这样订阅更新不会冲掉你的改动。

换设备或重装系统时,真正需要迁移的只有订阅链接和这份自定义片段——节点、策略组、规则都由订阅端下发,重新导入即可复原。把这两样东西记在密码管理器里,重装的成本就只剩下载一个安装包。

排错的固定顺序

无论哪个平台,配置类故障按同一顺序收敛:先确认订阅能正常拉取(配置页无报错、节点列表非空)→ 再确认内核在跑(日志无启动错误、端口在监听)→ 再确认接管方式生效(系统代理已写入或 TUN 网卡已建立)→ 最后才查规则与节点本身。跳步排查是浪费时间的主要原因。单条问题的快速答案在疑难解答页按分类收录;配置文件与订阅、节点的概念关系不清楚时,先读Profile 基础概念一文再回来对照操作。

↑ 返回章节目录