一、安装前确认:客户端、内核与订阅
Windows 上的 Clash 使用流程包含三个独立部分:客户端提供界面、托盘与系统设置入口;内核读取配置并处理连接;订阅或本地 YAML 提供节点、策略组和规则。安装成功只代表程序能够启动,不代表已经有可用线路,也不代表浏览器流量已经进入代理。
Clash Meta 后续以 mihomo 名称继续发展。基于 mihomo 的客户端能够使用该内核支持的配置字段,但旧 Clash 内核未必能读取相同配置。遇到“不支持的代理类型”或“未知字段”时,应先检查订阅格式与内核兼容性,而不是反复重装 Windows。
下载前记录三项信息
- 系统与架构:打开 Windows「设置」→「系统」→「系统信息」,查看“系统类型”。常见 Intel、AMD 64 位电脑选择 x64;ARM 设备需要检查客户端是否提供 ARM64 包及对应支持说明。
- 客户端与内核版本:安装后在“关于”或版本信息区域分别记录。反馈问题时同时提供两者,不能只写“最新版”。
- 配置来源:准备提供方给出的 Clash 或 mihomo 格式订阅地址,或一份可用的 YAML 文件。账户管理网页地址通常不能直接作为订阅导入。
二、下载安装:先启动普通代理,再处理权限
从本站安装包页面选择 Windows 客户端,核对系统要求、架构与维护状态。已有旧客户端时,先关闭其系统代理并退出托盘进程,避免新旧程序争用同一个监听端口。
- 安装或解压。安装包按向导完成;便携压缩包先完整解压至固定目录,例如
C:\Tools\ClashClient,不要直接在压缩软件窗口内运行主程序。 - 正常启动界面。首次只测试系统代理,暂不启用 TUN。普通本地代理通常不需要让整个界面始终以管理员身份运行。
- 确认托盘与内核。窗口关闭后程序可能仍在通知区域运行;查看日志中是否存在配置加载失败、端口绑定失败或内核反复退出。
- 暂缓自动启动。等订阅、规则模式和网页访问验证完成后,再启用“开机启动”或“启动时开启系统代理”,减少排错变量。
SmartScreen 与安全软件拦截
下载文件后出现“Windows 已保护你的电脑”,属于信誉或风险提示,不能只凭这个提示判断文件是否安全。先确认下载来源、文件属性中的发布者信息以及安全软件给出的具体检测名称。来源无法确认时停止运行;不要把关闭实时防护当作安装步骤。
若程序启动后文件消失,可进入「Windows 安全中心」→「病毒和威胁防护」→「保护历史记录」查看处理对象与原因。公司电脑还可能由组织策略限制运行或驱动安装,应交由管理员核实。只有确认具体文件来源与风险后,才考虑针对该文件的处理,不要给整个下载目录设置排除。
三、导入订阅:下载成功后还要激活配置
进入客户端的“订阅”“配置”或“Profiles”页面,使用“新建”“导入”或 URL 输入框添加订阅。菜单取决于客户端,关键是完成“获取配置”和“选为当前配置”两个动作:列表里出现名称,并不一定意味着内核正在使用它。
- 粘贴完整订阅地址,检查首尾空格,保留原有查询参数。
- 执行下载或更新,观察返回状态;成功后检查节点和策略组是否出现。
- 激活刚导入的配置,查看日志确认加载完成。
- 打开“代理”或“策略组”页面,确认规则使用的主策略组已经选择可用节点,或选择了配置中定义的自动选择组。
订阅失败要区分返回内容
| 表现 | 优先检查 |
|---|---|
| HTTP 401 或 403 | 令牌是否有效、账户权限、提供方访问策略;查看响应说明,不靠重装解决。 |
| HTTP 404 | 链接是否完整,提供方是否迁移订阅地址。 |
| 超时或域名解析失败 | 本地网络与订阅域名可达性,确认当前下载请求是否被旧代理设置影响。 |
| YAML 解析失败 | 返回内容是否为登录页、错误页面,或缩进损坏的配置文件。 |
| 不支持的代理类型 | 订阅格式是否面向当前内核,客户端所带内核是否支持所用协议。 |
四、规则模式与系统代理:分别设置,分别验证
首次使用建议选择“规则 / Rule”模式。规则决定进入内核的请求走直连、代理组还是拒绝;“全局 / Global”通常将请求交给全局策略选择;“直连 / Direct”则不通过远端代理节点。切换模式只改变内核处理方式,不会自动保证所有应用都将请求发给内核。
开启客户端的“系统代理 / System Proxy”开关,再到 Windows「设置」→「网络和 Internet」→「代理」查看手动代理状态。客户端常把服务器设置为 127.0.0.1,端口填写当前 HTTP 或 mixed 监听端口。部分客户端会通过其他代理配置方式接入,应结合客户端说明判断,不要再叠加一套冲突的手动设置。
用同一套端口贯通整条路径
例如当前配置使用 mixed-port: 7890,则显式 HTTP 测试地址是 http://127.0.0.1:7890。mixed 端口可以接收 HTTP 与 SOCKS 代理连接;仅供 SOCKS 使用的端口不能直接当作 Windows 手动 HTTP 代理端口。管理接口 external-controller 也不是浏览器代理入口。
- 先看监听:内核确实在目标端口运行,系统代理地址与其一致。
- 再看流量:用 Edge 或 Chrome 新开网页,查看客户端“连接”列表是否出现对应请求。
- 最后看出口:查看该连接命中的规则、策略组与最终节点。规则允许直连的站点保留本地出口是正常现象。
浏览器扩展、企业策略和应用内部代理设置可能覆盖系统配置。Firefox 还需检查「设置」→「常规」→「网络设置」是否选择“使用系统代理设置”。因此,“系统代理已开启”与“所有软件都走代理”不是同一结论。
五、首次验收:区分端口、节点与应用问题
先在 PowerShell 中检查本地端口,再做显式代理请求。下面命令以 mixed 端口 7890 为例,访问地址用于说明测试方法,结果仍取决于目标站点及网络可达性;示例不是实测成绩,也不要求某个固定毫秒数。
Test-NetConnection 127.0.0.1 -Port 7890
curl.exe -I --connect-timeout 10 --max-time 20 --proxy http://127.0.0.1:7890 https://example.com/
TcpTestSucceeded: True 只说明 TCP 端口可以连接,并不代表远端节点可用。第二条命令显式指定代理,可以绕开“应用是否采用 Windows 系统代理”这一变量;这里使用 curl.exe,避免 Windows PowerShell 中 curl 别名带来的参数差异。
- 本地端口连不上:检查内核是否运行、端口是否写错,优先处理配置加载或监听错误。
- 端口可连,代理请求失败:检查选中的节点、规则命中、认证信息、DNS 和目标地址,查看同一时刻的日志。
- 显式代理成功,浏览器失败:重点检查 Windows 代理配置、浏览器扩展和浏览器自身的网络设置。
- 网页能开,连接列表却没有记录:可能走了直连、浏览器缓存或另一套代理,应换一个新请求继续确认。
对于 HTTPS 请求,输出中的 200 Connection established 只表示 HTTP CONNECT 隧道已建立,还要检查后续 TLS 握手与目标响应。目标返回 403 也不等于代理端口失效,应结合完整输出判断是远端网站拒绝还是代理链路失败。
六、常见安装坑:端口冲突、权限与配置覆盖
7890 被占用:定位进程,不要直接结束陌生服务
日志出现 address already in use 或绑定失败时,在 PowerShell 中查询监听进程。下列命令只读取信息,不会停止程序;如果需要更多进程详情,可能要使用管理员权限。
Get-NetTCPConnection -State Listen -LocalPort 7890 |
Select-Object LocalAddress, LocalPort, OwningProcess
Get-Process -Id (Get-NetTCPConnection -State Listen -LocalPort 7890).OwningProcess
确认是旧代理程序后正常退出;若该端口必须保留,可在当前客户端的端口设置或持久化覆写中改用空闲端口,例如 7891。同时更新 Windows 系统代理和显式测试命令。订阅管理客户端可能在更新时覆盖原 YAML,直接修改缓存文件往往不能长期生效。
权限不足:区分文件写入与 TUN 服务
“无法保存配置”可能来自目录权限、只读文件或安全软件阻止写入,先查看错误中涉及的实际路径。TUN 的服务安装、虚拟网卡和路由调整则可能需要管理员授权。系统代理已能工作时,不必为了普通网页访问强行安装 TUN;确实需要接管不遵循系统代理的应用时,再按客户端文档安装服务并检查权限。
控制接口报错:别把 9090 当成流量端口
external-controller 用于界面管理内核,常见示例为 127.0.0.1:9090。该端口冲突可能导致界面无法获取节点或连接列表,但修改它不能替代修改 mixed-port。保留本机监听,配置访问密钥,不要为了排错直接开放到所有网络接口。
七、代理不生效与退出断网:按影响范围收尾
若浏览器正常而终端、游戏或其他应用失败,应先判断这些应用是否支持系统代理。某些应用使用自己的网络栈,部分流量使用 UDP,不能靠修改 Windows HTTP 代理完成接管。终端工具也可能只读取自身参数或代理环境变量,netsh winhttp show proxy 显示的 WinHTTP 设置不等同于 Windows 设置页面里的用户代理。
TUN 是下一阶段的流量接管选项,不是首次配置的必选项。它通过虚拟网卡与路由接管符合配置范围的流量,实际效果仍取决于路由、DNS、排除项和内核支持。启用前应先完成本文的显式代理测试;如果基础节点不可用,换成 TUN 也不会自动修复节点。
退出程序后无法上网
- 重新打开客户端,关闭“系统代理”,再正常退出,观察 Windows 代理设置是否恢复。
- 若客户端无法启动,进入 Windows「设置」→「网络和 Internet」→「代理」,检查是否仍指向已经停止的本地端口。
- 个人设备可移除确认属于该客户端的残留手动代理;单位网络若使用统一代理或设置脚本,应先记录原值并联系管理员。
- 重新打开浏览器测试。若仍失败,再检查其他 VPN、网络过滤软件与 DNS,不要一开始就重置全部网络配置。
后续求助时,提供 Windows 版本、客户端版本、内核版本、当前模式、监听端口以及出错时段的脱敏日志。每次只修改一个变量,再重复同一组测试,才能判断问题来自订阅、节点、系统设置还是具体应用。