安装前先确认系统、架构与客户端类型
Windows 上的“Clash”通常不是单一应用名称,而是一类使用 Clash 或 mihomo 内核的图形客户端。原版 Clash for Windows 已停止维护,继续使用旧安装包会遇到内核过时、订阅字段不兼容和系统代理恢复异常等问题。新安装应选择仍在维护、明确支持 Windows 的客户端,并优先使用 mihomo 内核。
安装前按「设置」→「系统」→「系统信息」检查 Windows 版本与系统类型。常见电脑显示“64 位操作系统,基于 x64 的处理器”,对应下载名称中带有 x64、amd64 或 x86_64 的安装包。搭载高通 Snapdragon 等 ARM 处理器的设备应选择 arm64。只有旧式 32 位 Windows 才使用 x86 或 ia32,多数新客户端已经不再提供这一架构。
| 系统信息 | 应选架构 | 常见文件标记 |
|---|---|---|
| Intel 或 AMD 64 位电脑 | x64 | x64、amd64、x86_64 |
| Windows on ARM 设备 | ARM64 | arm64、aarch64 |
| 旧式 32 位 Windows | x86 | x86、ia32 |
安装版与便携版怎么选
- 安装版:通常带有
.exe或.msi安装程序,可创建开始菜单入口、卸载项和开机启动任务,适合固定使用的个人电脑。 - 便携版:通常是压缩包,解压后直接运行。配置、日志和内核文件可能保存在解压目录,移动目录前应先退出客户端。
- Microsoft Store 版:更新路径统一,但应用权限、数据目录和功能可能与独立安装版不同,安装前应核对项目说明。
下载安装包并完成首次启动
从本站下载页进入对应客户端的 Windows 区域,确认架构后再下载安装包。浏览器下载完成后,先核对文件名、扩展名、发布版本与来源页面是否一致。若项目提供数字签名,可在文件上右键选择「属性」→「数字签名」查看签名者和签名状态。
处理 Windows 安全提示
首次运行下载量较少的新版本时,Microsoft Defender SmartScreen 可能显示“Windows 已保护你的电脑”。这类提示依据文件信誉触发,不等于已经完成恶意行为判定。应先确认文件来自项目正式发布渠道,再点击「更多信息」查看应用名称与发布者;来源无法确认时不要继续运行。
安装过程中保留默认安装目录通常最省事。若选择便携版,不要直接在压缩包预览窗口中运行,应先完整解压到有写入权限的目录,例如用户目录下的应用文件夹。不要放进需要管理员权限才能写入的系统目录,否则更新内核、保存配置和写入日志时可能失败。
- 退出正在运行的旧 Clash 客户端,避免端口和系统代理被旧进程占用。
- 运行安装程序,阅读安装路径与启动项选项。
- 完成后从开始菜单启动客户端,等待主界面与内核状态加载。
- 进入「设置」→「内核」或「设置」→「内核设置」,确认内核能够正常启动。
- 第一次导入配置前先不要开启 TUN,先用系统代理完成基础验证。
导入订阅并检查配置是否有效
客户端本身不提供可用节点。需要从服务提供方取得 Clash YAML 配置链接,或取得客户端明确支持的订阅链接。订阅地址属于访问凭据,不应粘贴到公开网页、截图、日志帖子或共享文档中。
不同客户端的入口名称略有区别,常见路径是「配置」→「新建」→「从 URL 导入」,或「订阅」→「添加订阅」。粘贴完整链接后设置名称与自动更新间隔,再点击导入。正常结果应在配置列表中出现更新时间、代理组和节点数量,而不是只生成一个空白配置。
导入失败时先分辨三类问题
- 链接无法访问:浏览器打开后返回 403、404、超时或登录页面。此时应检查订阅是否过期、复制是否缺失字符,以及服务端是否限制访问。
- 格式不兼容:链接能返回内容,但客户端提示 YAML 解析失败、缺少
proxies或不识别字段。普通 Base64 节点列表不能直接当作完整 Clash 配置使用。 - 配置可以导入但没有节点:可能是订阅账户失效、筛选规则排除了全部节点,或服务端返回了空配置。
一份可运行的 Clash 配置通常包含代理节点、代理组和规则。采用规则模式时,连接会从上到下匹配 rules,最终由 MATCH 处理未命中的流量。客户端显示“配置导入成功”只说明文件被接受,不代表节点连通、规则正确或订阅仍在有效期内。
mixed-port: 7890
mode: rule
allow-lan: false
log-level: info
proxy-groups:
- name: 节点选择
type: select
proxies:
- DIRECT
rules:
- GEOIP,CN,DIRECT
- MATCH,节点选择
上面的片段只用于说明结构,不能替代实际订阅。mixed-port: 7890 表示 HTTP 与 SOCKS 流量共用本地 7890 端口;部分客户端会分别使用 HTTP 7890、SOCKS 7891,也可能由图形界面覆盖配置文件中的端口。实际排查时应以客户端「设置」→「端口设置」或运行日志显示的监听地址为准。
开启系统代理并逐层验证
完成订阅导入后,先进入「代理」页面,在目标代理组中选择一个节点,再将模式设为「规则」。随后进入「设置」→「系统代理」,打开系统代理开关。客户端通常会把 Windows 的代理服务器设置为 127.0.0.1,端口则指向本地 HTTP 或混合端口,例如 7890。
第一层:确认内核与节点
- 查看客户端状态栏,确认内核为运行状态。
- 在「代理」页面执行延迟测试。延迟数字只表示测试地址可达,不代表所有网站都能访问。
- 打开「日志」,将级别保持在
info,观察是否出现认证失败、连接超时、DNS 失败或规则解析错误。 - 打开「连接」页面,访问测试网站后确认出现新的 TCP 或 UDP 会话。
第二层:确认 Windows 系统代理
按 Win + I 打开「设置」→「网络和 Internet」→「代理」。开启成功后,“使用代理服务器”附近应显示本机地址和对应端口。不要同时开启旧代理软件、浏览器代理扩展和另一套系统代理工具,否则最后写入设置的程序会覆盖前一个程序。
可在命令提示符中检查 WinHTTP 代理,但要注意 WinHTTP 与普通桌面应用使用的 WinINET 系统代理不是同一套设置:
netsh winhttp show proxy
该命令显示“直接访问”并不一定表示 Clash 系统代理失效。Chrome、Edge 等桌面浏览器通常读取 Windows 系统代理,而部分系统服务读取 WinHTTP 配置。不要为了让命令输出变化而盲目执行全局导入,除非已经确认目标程序依赖 WinHTTP。
第三层:用浏览器和命令行分别验证
浏览器测试时先关闭代理扩展,使用无痕窗口访问目标站点,再回到 Clash 的「连接」与「日志」页面观察记录。若浏览器可用而 PowerShell 不可用,通常是命令行程序没有读取系统代理,并非 Clash 内核故障。
使用 curl.exe 可以绕过 PowerShell 旧版本中的 curl 别名差异,直接指定本地 HTTP 代理:
curl.exe -I --proxy http://127.0.0.1:7890 https://example.com
curl.exe -I https://example.com
第一条成功、第二条失败,说明 Clash 监听端口与节点基本正常,但终端没有自动使用系统代理。可在当前 PowerShell 会话中设置环境变量:
$env:HTTP_PROXY="http://127.0.0.1:7890"
$env:HTTPS_PROXY="http://127.0.0.1:7890"
$env:ALL_PROXY="socks5://127.0.0.1:7890"
这些变量只影响当前终端及其启动的子进程。部分工具只识别小写变量,部分程序有自己的代理参数。Git 可通过 git config 设置,npm、Python 包管理器和开发工具也应按各自文档配置,不要把浏览器结果直接推断到所有命令行程序。
端口占用、系统代理残留与局域网访问
7890 端口被占用
内核日志出现“address already in use”“bind failed”或“无法绑定端口”时,表示其他进程已经监听该端口。以管理员身份打开命令提示符,执行:
netstat -ano | findstr :7890
tasklist /fi "PID eq 1234"
第一条命令最右侧会显示 PID。第二条中的 1234 是排查示例,应替换为实际查到的数字。确认进程用途后,退出冲突软件,或在「设置」→「端口设置」中把混合端口改为未占用值,例如 7892。修改后还要重新切换一次系统代理,使 Windows 记录的新端口与客户端监听端口一致。
退出后系统仍然断网
客户端被强制结束、系统崩溃或更新失败时,Windows 可能保留指向 127.0.0.1:7890 的代理设置,而本地端口已经没有程序监听。进入「设置」→「网络和 Internet」→「代理」,关闭“使用代理服务器”,再重新启动客户端。若浏览器仍显示代理错误,应彻底退出浏览器后再打开,因为部分进程会缓存网络配置。
让局域网设备连接本机代理
默认监听 127.0.0.1 只允许本机访问。需要让手机或另一台电脑连接时,才启用「允许局域网连接」或将 allow-lan 设为 true。随后查看 Windows 当前局域网 IPv4 地址,例如 192.168.1.25,在另一台设备填写该地址与 Clash 端口。
局域网访问还受 Windows Defender 防火墙、网络配置文件和路由器客户端隔离影响。家庭网络应设置为“专用网络”,并仅允许客户端在需要的网络范围内监听。公共网络中不建议开放本地代理端口。
UWP 应用与 TUN 模式的区别
传统系统代理主要覆盖主动读取 Windows 代理设置的应用。部分 Microsoft Store 应用采用 UWP 沙箱,默认不允许访问本机回环地址,因此即使浏览器已经通过 127.0.0.1:7890 工作,商店应用仍可能直连或报网络错误。
UWP 回环豁免
支持该功能的客户端通常提供「设置」→「UWP 回环」→「启动助手」。在列表中勾选需要代理的应用并保存即可。只对确实需要访问本地代理的应用添加豁免,不必全选。系统升级或应用重装后,包身份可能变化,需要重新检查。
PowerShell 可用于查看应用包名:
Get-AppxPackage | Select-Object Name, PackageFamilyName
命令行工具 CheckNetIsolation.exe 也能管理回环豁免,但包族名称较长且容易选错。优先使用客户端提供的图形助手,并在修改后完全退出目标 UWP 应用再重新打开。
什么时候需要 TUN
TUN 模式创建虚拟网络接口,从网络层接管更多流量,适合不读取系统代理的应用、部分游戏启动器、命令行工具和需要 UDP 转发的场景。mihomo 内核可在 Windows 上使用 TUN,但客户端通常还需要安装服务、驱动或以管理员权限完成首次配置。
常见启用路径是「设置」→「服务模式」→「安装」,安装完成后进入「设置」→「TUN 模式」打开开关。具体名称取决于客户端。若服务安装后仍无法启动,应重启客户端或 Windows,再检查日志中是否出现虚拟网卡创建失败、路由写入失败或 DNS 监听端口冲突。
| 方式 | 覆盖范围 | 权限要求 | 适用场景 |
|---|---|---|---|
| 系统代理 | 读取 Windows 代理设置的应用 | 通常无需持续管理员权限 | 浏览器、常见桌面应用、基础验证 |
| UWP 回环 | 已添加豁免的商店应用 | 修改时可能需要授权 | Microsoft Store 应用无法访问本地代理 |
| TUN 模式 | 更多 TCP、UDP 与不读代理设置的程序 | 通常需要服务或驱动 | 游戏、终端、复杂分流与透明接管 |
开机自启失效与后台服务排查
“开机自启”至少包含两个环节:图形客户端能否登录后启动,以及 mihomo 内核或服务能否随客户端正常运行。只看到托盘图标不代表内核已经监听端口;反过来,服务在后台运行也不代表系统代理已经写入 Windows。
检查客户端自启动
- 在客户端中进入「设置」→「开机自启」,关闭后重新打开一次。
- 按 Ctrl + Shift + Esc 打开任务管理器,进入「启动应用」,确认对应项目状态为“已启用”。
- 按 Win + R,输入
shell:startup,检查是否存在旧客户端留下的失效快捷方式。 - 若客户端使用计划任务,打开“任务计划程序”,查看最近运行结果和触发条件。
某些客户端在更新安装路径后,旧启动项仍指向已经删除的可执行文件。此时应关闭应用内自启、彻底退出客户端,再重新打开并启用自启。便携版移动目录后同样需要重建启动项。
启动后系统代理没有自动打开
检查「设置」→「系统代理」附近是否有“启动时恢复系统代理”或相近选项。部分客户端为了避免异常关机后锁死网络,只启动程序而不自动打开系统代理。需要自动接管时,应分别启用开机启动和启动后开启系统代理,并确认安全软件没有阻止应用修改代理设置。
如果使用 TUN,还要检查服务状态。按 Win + R 输入 services.msc,确认客户端安装的服务没有停用。服务名称因客户端而异,应根据安装日志和客户端设置页识别,不要删除无法确认用途的系统服务。
DNS、规则模式与“能连上但打不开”
节点延迟正常但网页无法打开时,问题可能发生在 DNS、规则选择、IPv6 路由或目标站点握手阶段。先在「连接」页面查看请求命中了哪个规则和代理组,再到「日志」确认错误发生在域名解析、代理连接还是 TLS 握手。
按现象缩小范围
- 域名打不开,IP 可以访问:优先检查 DNS 配置、53 端口冲突与 TUN DNS 劫持状态。
- 所有请求都显示 DIRECT:检查当前模式是否误设为“直连”,以及规则末尾是否把流量送往错误策略组。
- 切到全局模式后可用:通常是规则匹配或策略组选择问题,不应长期靠全局模式掩盖配置错误。
- 只有 UDP 应用失败:确认节点协议、服务端和客户端均支持 UDP,并检查 TUN 是否实际接管该程序。
- 浏览器偶尔继续使用旧线路:关闭浏览器中的安全 DNS或代理扩展进行对照测试,并完全退出后台进程。
规则模式是日常使用的推荐起点。它根据域名、IP、进程或规则集决定使用 DIRECT、REJECT 或某个代理组。全局模式会把大部分连接交给指定代理组,适合短时对照排查;直连模式则绕过代理。切换模式后应重新发起请求,并在连接记录中确认新会话的出站策略。
一份可重复执行的安装检查表
- 在「设置」→「系统」→「系统信息」确认 x64 或 ARM64 架构。
- 选择仍在维护并支持当前 Windows 版本的客户端。
- 从正式发布页面下载安装版或完整解压便携版。
- 首次启动后确认内核运行,不急于开启 TUN。
- 从「配置」或「订阅」页面导入 Clash YAML 订阅。
- 在「代理」页面选择节点,将运行模式设为“规则”。
- 打开「设置」→「系统代理」,核对本地地址与端口。
- 通过浏览器、连接记录和日志验证流量路径。
- 终端程序使用
curl.exe --proxy单独验证。 - 遇到端口错误时用
netstat -ano查找占用进程。 - UWP 应用无法联网时配置回环豁免。
- 只有在系统代理验证通过后,再安装服务并启用 TUN。
- 最后测试开机自启、配置更新和异常退出后的代理恢复。
Windows 安装 Clash 的关键不是连续点击安装按钮,而是把安装包、内核、订阅、监听端口、系统代理和应用流量逐层对应起来。每次只改一个环节,并同时查看「连接」与「日志」,多数问题都能定位到明确边界。