先确定客户端、系统架构与内核
Windows 上使用 Clash,通常需要安装带图形界面的客户端,再由客户端启动代理内核。Clash、Clash Meta(现称 mihomo)不是同一个版本系列;界面能够打开,也不代表其中的内核支持订阅使用的全部协议。安装前先确认操作系统架构、客户端维护状态和订阅格式,能够减少后续反复换包的问题。
安装前核对三项信息
- 系统架构:进入 Windows「设置」→「系统」→「系统信息」,查看「系统类型」。常见 Intel、AMD 电脑选择 x64 安装包;ARM 设备优先选择客户端明确提供的 ARM64 版本,不要只根据安装包大小判断。
- 维护状态:优先选择仍有更新、支持当前 Windows 的客户端。Clash for Windows 已停止维护;旧教程中的菜单位置、驱动方案和故障处理不应直接套用到新客户端。
- 配置类型:向订阅提供方确认链接输出的是 Clash 或 mihomo 配置,而不是仅含分享链接的节点列表。部分新协议或字段需要 mihomo,旧内核可能在加载阶段直接报错。
安装包可以从本站Clash 客户端安装包页面按平台选择。安装前退出正在运行的同类客户端,避免两个程序同时修改系统代理、争用监听端口或创建重复的虚拟网卡。需要保留旧配置时,先通过客户端的配置管理功能导出备份;其中可能包含订阅凭据,应存放在本机受控目录。
安装与 SmartScreen:先判断来源再处理提示
运行安装程序时,Windows SmartScreen 可能显示「Windows 已保护你的电脑」。这类提示与文件信誉、签名等因素有关,既不能据此断定文件有问题,也不能把它当作可以忽略的固定步骤。先确认文件来自所选项目的发布渠道,安装包名称、架构与下载目标一致,再检查文件属性中的数字签名信息(如有)。
遇到拦截时的处理顺序
- 关闭来源不明确的安装程序,重新核对下载页面与实际文件,不从聊天附件或随机网盘副本继续安装。
- 只有在来源可信、设备策略允许的情况下,才考虑通过 SmartScreen 的「更多信息」→「仍要运行」继续。没有该按钮时,不要通过关闭系统保护绕过组织策略。
- 如果文件被安全软件隔离,进入「Windows 安全中心」→「病毒和威胁防护」→「保护历史记录」查看具体检测结果,再决定是否向软件发布方反馈;不要直接对整个下载目录添加排除项。
- 完成安装后先正常启动。普通系统代理使用通常不需要让整个界面长期以管理员身份运行,服务模式与 TUN 所需权限应在后续单独配置。
对于便携包,应先完整解压到固定且当前用户可写的目录,不要直接在压缩软件内运行。若客户端报告无法保存配置或更新内核,先检查目录权限、安全软件的受控文件夹访问记录,以及文件是否被其他进程占用,而不是反复提升权限。
订阅导入:更新成功后还要激活配置
打开客户端的「配置」或「Profiles」页面,选择从 URL 导入,粘贴订阅提供方给出的完整地址,再执行下载。带有令牌的订阅地址相当于访问凭据,不要贴到公开日志、截图或在线转换站。若链接曾被公开,应到提供方后台重置,而不只是删除本地记录。
- 确认下载结果:配置列表中应出现新条目。若返回的是网页登录内容、登录过期提示或错误页面,改名为 YAML 也无法正常加载。
- 激活该配置:选择刚导入的条目,等待内核完成重载。订阅刷新成功只说明文件已经获取,不等于它已成为当前运行配置。
- 查看日志:优先处理 YAML 解析错误、未知代理类型、缺少代理组等提示。行号附近可能只是错误被发现的位置,还应检查前一行的缩进和字段。
- 选择出口:切换到规则模式,在实际被规则引用的策略组内选择节点。不要只修改一个未被当前规则使用的备用组。
如果订阅首次获取失败,先关闭系统代理,用当前网络重试提供方的订阅地址。此时客户端可能还没有可用节点,不能假设订阅请求已经通过代理。只在提供方说明允许且客户端支持时,配置订阅更新专用代理;不要随意添加来源不明的转换服务。
系统代理与端口:先让浏览器访问正常
第一轮验证只开启系统代理,暂时关闭 TUN。系统代理主要影响遵循 Windows 代理设置的应用,并不接管所有程序;游戏、命令行工具或自行实现网络栈的应用可能不使用它。先把这一条路径跑通,才能区分节点问题与虚拟网卡问题。
检查监听端口和 Windows 设置
在客户端设置中查看 HTTP 或混合端口。若显示混合端口为 7890,开启系统代理后,可到「设置」→「网络和 Internet」→「代理」检查「使用代理服务器」对应的地址与端口;本机地址通常为 127.0.0.1。PAC 模式可能使用自动配置脚本,不能仅凭手动代理开关判断是否生效。
在 PowerShell 中执行下面的命令,可以查看示例端口是否被监听。没有输出时,应先处理内核启动失败、端口设置不一致或配置加载错误。
Get-NetTCPConnection -LocalPort 7890 -State Listen |
Select-Object LocalAddress, LocalPort, OwningProcess
如果端口已被占用,可根据输出的进程编号查询所属程序,再决定退出冲突客户端或修改当前客户端端口。不要直接结束不认识的系统进程。更改端口后,需要重新开启系统代理,并同步修改应用中手动填写的代理地址。
curl.exe --proxy http://127.0.0.1:7890 --head --connect-timeout 10 https://example.com/
这条命令显式使用本地 HTTP 代理,适用于 HTTP 或混合端口,不适用于仅提供 SOCKS 的端口。收到 HTTP 响应说明这次请求完成了代理链路,但不证明全部网站都可用。随后打开目标网页,在客户端「连接」或日志页面核对目标域名、命中的规则、策略组和实际出口。延迟测试成功只覆盖测试地址,不能替代这一步。
防火墙放行:本机代理不等于局域网服务
Windows 防火墙主要根据程序、网络配置文件和规则方向控制通信。仅让本机应用连接 127.0.0.1 时,通常不需要向局域网开放代理端口。出现系统授权提示,也不意味着应同时勾选专用网络和公用网络,更不需要关闭整台电脑的防火墙。
| 使用场景 | 应检查的项目 | 处理原则 |
|---|---|---|
| 仅本机浏览器使用 | 回环监听、端口冲突、内核日志 | 保持仅本机访问,不额外开放局域网入口 |
| 手机连接电脑代理 | 允许局域网、监听地址、入站规则 | 仅在可信专用网络放行实际使用的 TCP 端口 |
| 单位设备无法连接节点 | 出站策略、安全软件、管理策略 | 向管理员确认限制,不自行关闭防护 |
确实需要局域网共享时,先确认客户端支持并开启「允许局域网」,再检查监听地址是否覆盖局域网接口。在「Windows 安全中心」→「防火墙和网络保护」→「高级设置」中,仅为实际代理端口建立必要的入站规则,并限制为可信设备地址或本地子网。HTTP 代理通常使用 TCP,不能因为代理节点协议包含 UDP,就把本地所有 UDP 端口一并开放。
图形界面与内核可能是不同的可执行文件。界面能联网更新,不代表内核没有被组织的出站规则限制。排查时应从日志定位实际被阻断的进程,再检查它的程序路径和规则;客户端更新后路径变化,也可能导致旧规则不再适用。
UWP 回环:浏览器可用而部分应用失败
部分运行在 AppContainer 中的应用受到网络隔离限制,可能无法直接访问本机回环代理。这会表现为浏览器已能访问,但某个应用仍提示离线。并非所有 Microsoft Store 应用都属于这种情况,打包分发的桌面程序也不一定受同样限制;应先确认应用是否真的尝试使用系统代理。
只为确有需要的应用设置豁免
- 若客户端提供「UWP 回环」或「Loopback」工具,打开后仅勾选需要通过本机代理访问的应用,保存并重新启动该应用。
- 没有图形工具时,可在终端使用
CheckNetIsolation.exe LoopbackExempt -s查看现有豁免。 - 需要新增时,以管理员权限运行终端,并将查询到的准确包系列名称传给
-n=参数;不要拿应用显示名称、安装目录或包完整名称替代。
Get-AppxPackage |
Select-Object Name, PackageFamilyName
CheckNetIsolation.exe LoopbackExempt -s
添加命令采用 CheckNetIsolation.exe LoopbackExempt -a -n= 后接实际包系列名称;撤销时把 -a 改成 -d,并使用同一个名称。这里不提供可直接复制的包名,因为不同应用和发行渠道的包标识并不相同。设置完成后重启目标应用,观察客户端连接记录;若仍没有请求进入,应继续检查应用自己的代理支持和网络策略。
TUN 模式:服务权限、虚拟网卡与 DNS
当需要接管不遵循系统代理的程序时,再考虑 TUN。它通过虚拟网络接口与路由把流量交给内核处理,是否接管某条连接仍取决于路由、排除项和配置。mihomo 的 TUN 栈选项、DNS 接管方式及客户端服务安装步骤会随版本变化,应以当前客户端说明为准。
按单变量方式启用
- 先确认系统代理路径可用,记录当前节点、工作端口和正常访问的测试页面。
- 通过客户端「设置」中的「服务模式」或服务安装入口完成授权。安装服务需要管理员权限;若安装失败,先查看错误,不要持续重复点击。
- 为便于判断接管效果,先关闭系统代理,再开启 TUN;查看日志中虚拟接口和路由是否建立成功。
- 检查 DNS 配置是否被订阅、覆写设置或客户端托管配置修改。TUN 开关已开启,不等于 DNS 接管和域名解析一定正常。
可以在 PowerShell 中执行 Get-NetAdapter -IncludeHidden 检查虚拟接口,再用 route print 观察路由。接口名称不一定包含「Clash」,也不必出现传统的单条默认路由:一些自动路由方案会使用更具体的路由项。判断时应结合启动前后的差异和内核日志,不能只看一个网卡图标。
出现驱动加载失败时,先停止其他 VPN、加速器或虚拟网卡工具,再通过客户端支持的方式修复服务或驱动。不要从不明网站下载单独的 DLL 覆盖安装目录,也不要为运行旧驱动而关闭内存完整性等系统保护。遇到不兼容的驱动方案,应优先更新到受支持的客户端版本。
若开启 TUN 后局域网打印机、NAS 或公司内网失联,重点检查私有网段的路由排除与直连规则。规则中的 DIRECT 与系统路由排除不是同一个层面的设置;域名解析若已经失败,仅添加直连规则也可能无法解决。涉及公司 VPN 时,应先确认组织允许的网络方案,避免两个程序同时接管路由和 DNS。
安装后的验收与退出恢复
完成配置后,按下面的清单逐项确认。每次只改变一个设置,并记下测试时间和日志错误,通常比同时切换节点、重装驱动和修改 DNS 更容易定位原因。
- 配置:当前激活的是刚导入的订阅,内核日志没有解析失败,策略组已选择实际可用的出口。
- 浏览器:目标页面可打开,客户端能看到对应连接,规则命中与预期一致。
- 特殊应用:区分系统代理、UWP 回环限制与应用自有代理设置,不把所有失败都归到防火墙。
- TUN:需要时再启用,确认虚拟接口、路由和 DNS 工作正常,同时测试本地网络资源。
- 退出恢复:先关闭 TUN 和系统代理,再退出客户端,检查普通网络是否仍可访问。
若客户端异常退出后网页全部打不开,先进入 Windows「设置」→「网络和 Internet」→「代理」,检查是否残留指向已经停止监听的本地代理或自动配置脚本。设备由组织管理时不要覆盖既有策略。若问题只发生在 TUN 使用之后,先重新启动客户端并正常关闭 TUN,让它清理路由;仍未恢复再重启系统,不要直接删除所有网卡或重置整套网络。
后续需要调整规则、订阅更新和自启动时,可以继续阅读使用指南;Windows 平台设置见全平台指南的 Windows 章节。保留一套已验证可用的基础配置,再逐项增加功能,能让后续故障有明确的对照基线。