安装前检查:系统架构、客户端与内核
首次配置的目标是建立一条可验证的连接路径:应用发起请求,本机代理端口接收请求,内核按规则选择直连或代理,代理连接再到达目标服务。安装包能打开,只能说明图形界面启动成功;订阅已下载、内核已运行、应用已接入,是另外三个需要分别确认的状态。
先选对应架构,再确认内核能力
- Windows:在「设置」→「系统」→「系统信息」查看系统类型。常见 Intel、AMD 电脑使用 x64 安装包;Windows on ARM 设备优先选择客户端提供的 ARM64 包。
- macOS:在苹果菜单→「关于本机」查看芯片。Apple 芯片使用 arm64 包,Intel 机型使用 x64 包;若提供 Universal 包,可按发布说明选用。
- Linux:执行
uname -m。输出x86_64通常对应 amd64/x64,aarch64对应 arm64,同时检查安装包格式和发行版支持情况。 - Android:按客户端发布说明选择 APK 架构。应用开启的 VPN 服务用于接管设备流量,不等同于桌面系统中的手动 HTTP 代理。
- iOS:通过支持相应配置格式的客户端接入。桌面 Clash 的完整 YAML 不能假定能被所有 iOS 客户端直接读取,导入前应核对订阅格式。
Clash 图形客户端负责订阅管理、开关和状态展示,Clash 或 Clash Meta(mihomo)内核负责解析配置与转发流量。较新的协议和配置字段是否可用,取决于实际运行的内核及其版本。若导入时报出不支持的代理类型,应先查看客户端「关于」或内核信息页面,再核对配置要求,而不是反复切换系统代理。
订阅导入:下载成功后还要启用配置
订阅链接通常是带有访问凭据的 URL,可能返回完整 YAML,也可能只返回节点集合。完整配置一般包含 proxies 或 proxy-providers、proxy-groups 与 rules;仅有节点列表时,需要客户端模板补齐策略组和规则。两种格式不能在所有导入入口中通用。
- 进入客户端的「配置」或「订阅」页面,选择 URL 导入入口,粘贴服务方提供的完整链接。界面名称随客户端变化,以当前版本的配置管理页面为准。
- 执行下载或更新,查看最近更新时间与错误信息。遇到 HTTP 401、403 时,检查链接凭据、账户状态和服务方访问限制;404 则先核对地址是否过期或复制不完整。
- 选中刚导入的配置,确认其处于启用状态,再打开代理组页面。下载完成不代表内核已经切换到这份配置。
- 在实际被规则引用的选择组中选一个可用节点。自动测速组可能自行选择成员,手动选择组则需要明确选择,避免仍停留在
DIRECT。 - 查看内核日志是否有配置解析错误。YAML 缩进使用空格;不要把制表符混入配置,也不要只根据编辑器能打开文件判断其有效。
订阅更新与本地修改分开管理
直接编辑下载得到的订阅文件,修改可能在下一次更新时被覆盖。固定端口、DNS 或规则调整,优先使用客户端支持的覆写、合并或扩展配置功能。记录修改项及其入口,更新后复查最终生效配置。分享报错时遮盖订阅 URL、节点密码和控制接口密钥,只保留诊断需要的字段与错误行。
系统代理与混合端口:地址和端口必须对应
桌面系统代理的作用,是把愿意读取系统代理设置的应用引向本机代理端口。它不会让所有软件自动经过 Clash。首次调试可以先使用系统代理,确认浏览器请求能进入内核,再处理游戏、命令行或其他不遵循系统代理设置的程序。
本机端口示例:127.0.0.1:7890
下面是供核对的基础字段,不是一份可直接连接节点的完整配置。mixed-port 同时接受 HTTP 代理与 SOCKS5 代理连接,7890 是示例值,实际值以客户端最终生效配置为准。部分客户端会用图形设置覆盖文件中的端口。
mixed-port: 7890
allow-lan: false
mode: rule
log-level: info
| 检查项 | 示例值 | 核对方法 |
|---|---|---|
| 代理服务器地址 | 127.0.0.1 | 本机应用连接本机内核,不填远端节点地址 |
| HTTP 代理端口 | 7890 | 应等于 mixed-port 或单独设置的 port |
| SOCKS5 代理端口 | 7890 | 使用 mixed-port 时可共用;独立 socks-port 需另行核对 |
| 控制接口 | 127.0.0.1:9090 | 仅为常见示例,用于管理内核,不能当成流量代理端口 |
各平台的系统设置检查入口
- Windows 11:「设置」→「网络和 Internet」→「代理」→「手动设置代理」。若由客户端管理系统代理,开启客户端开关后检查此处是否指向正确的本机地址与端口,不要同时保留一套不明来源的脚本配置。
- macOS:「系统设置」→「网络」→当前网络服务→「详细信息」→「代理」。核对网页代理、安全网页代理或 SOCKS 代理的地址与端口,退出客户端后检查设置是否恢复。
- Linux:桌面环境的网络代理设置和终端环境变量分别生效。设置桌面代理后,命令行工具仍可能需要显式参数或
HTTP_PROXY、HTTPS_PROXY等环境变量,具体以工具文档为准。
连接验证:区分端口、规则与节点故障
验证时一次只改变一个条件。先确认端口可连接,再看规则命中,最后检查远端节点。客户端的节点延迟测试通常测量指定测试地址的请求耗时,不是下载速度,也不能保证每个网站都能访问。
用显式代理请求排除系统设置影响
Windows PowerShell 中使用 curl.exe,避免某些环境下 curl 被解释为其他命令。macOS、Linux 可使用 curl。以下命令通过示例端口请求测试网页,最长等待 15 秒;执行前替换成实际监听端口。
# Windows
curl.exe --proxy http://127.0.0.1:7890 --max-time 15 -I https://example.com
# macOS / Linux
curl --proxy http://127.0.0.1:7890 --max-time 15 -I https://example.com
- 连接本机端口失败:检查内核是否正在运行、端口是否匹配,以及日志是否出现监听失败。请求尚未到达代理层,此时更换远端节点通常没有帮助。
- 收到 HTTP 响应头:说明该次请求完成了代理入口和目标访问链路;但在规则模式下,目标仍可能被判为直连,需要结合连接记录判断出口。
- 请求超时:查看连接记录是否出现该域名、命中了哪个规则、选择了哪个节点。没有记录时先排查接入;有记录后再检查 DNS、节点连通性和目标服务。
规则模式作为日常起点
mode: rule 按配置中的规则顺序匹配连接,末尾通常有 MATCH 兜底。全局模式适合短时间排查某个目标是否被规则分配到错误策略,但并不会修复节点失效或订阅格式错误。测试结束后恢复规则模式,查看连接记录中的规则名称、策略组和最终节点,不能只凭网页能打开就判断走了代理。
TUN 模式:权限、路由与 DNS 的检查顺序
TUN 模式通过虚拟网络接口与路由接管流量,适合处理不读取系统代理的应用。它与系统代理是不同的接入方式,并不等于所有连接都从远端节点出去;流量进入内核后,仍由规则选择 DIRECT、代理组或其他动作。
先验证普通代理,再启用 TUN
- 确认显式代理请求和节点连接已经可用。若普通代理链路尚未通,先修复订阅、端口或节点,不要用 TUN 叠加新的变量。
- 检查客户端是否提供服务模式或权限安装入口。Windows 客户端可能依赖已安装的后台服务或管理员权限;macOS 可能需要授权辅助组件;Linux 通常涉及提升权限或网络管理能力。
- 启用 TUN 后观察虚拟接口、路由和内核日志。遇到权限错误,按该客户端的安装文档完成服务授权,避免长期以过高权限运行无关程序。
- 暂时停用其他 VPN 的流量接管,测试网页、目标应用和局域网资源。两套 VPN 同时修改默认路由或 DNS,容易使请求进入错误接口。
mihomo 配置中,tun.enable 控制 TUN 开关,auto-route 涉及自动路由,dns-hijack 可用于接管指定 DNS 流量;具体支持情况与平台、内核版本和客户端覆写有关。不要只粘贴一段 TUN 配置便假定路由、DNS 和权限已经全部就绪。
DNS 故障与规则分流分开看
如果域名访问失败但其他连接仍有响应,先查看 DNS 日志与当前解析设置。浏览器的安全 DNS、应用内置解析器和系统 DNS 可能走不同路径;接管常规 DNS 请求,也不意味着已经接管所有加密 DNS。使用 fake-ip 模式时,应用取得的地址可能来自虚拟地址池,这是内核映射域名的机制,不应随意把该地址写入 hosts 文件。
访问打印机、NAS 或公司内网异常时,应检查局域网直连规则、路由排除及内网 DNS,而不是一律切换全局代理。Android 的 VPN 授权弹窗用于允许应用创建 VPN 接口,通常同一用户空间只能启用一个 VPN 服务;其他 VPN 应用可能因此被替换或断开。
首次启动常见报错:按错误层级处理
安装被系统安全机制拦截
Windows 出现 SmartScreen 或安全软件提醒时,先核对下载来源、发布者信息和安装包是否适配当前系统。企业设备可能有应用执行策略,应联系管理员确认授权。macOS 出现开发者验证提示时,可在确认来源后查看「系统设置」→「隐私与安全性」是否提供针对该应用的允许入口;若系统提示应用会损害电脑或文件损坏,应停止运行并重新核对来源和发布说明,不把所有警告都当成同一种问题处理。
address already in use:本机端口被占用
该错误意味着内核无法绑定某个地址或端口。先退出重复启动的客户端,再检查占用进程。Windows 可运行以下命令查询 7890 的监听情况,并在任务管理器「详细信息」中按 PID 核对进程;不要只看到端口占用就结束未知系统进程。
netstat -ano | findstr ":7890"
macOS 可使用 lsof -nP -iTCP:7890 -sTCP:LISTEN,Linux 可使用 ss -lntp 检查监听信息。若改用其他端口,要同步调整系统代理。控制接口端口冲突与流量入口冲突也需分别处理。
证书错误:先检查时间、目标域名与信任链
普通 HTTP CONNECT 或 SOCKS5 转发通常不要求给浏览器安装根证书。遇到「证书已过期」「证书名称不匹配」或 TLS 握手错误,先检查系统日期、时区、访问域名与证书颁发者,再确认是否连接到需要网页登录认证的网络。公司网络可能使用经过管理的 TLS 检查机制,应遵循组织证书部署流程。
关闭客户端后仍无法联网
先关闭系统代理并确认手动代理地址已撤销,再检查是否残留 TUN 路由、VPN 服务或其他客户端的接管。正常退出时客户端通常会尝试恢复相关设置,但异常终止后可能需要手动恢复。若正在远程操作电脑,变更默认路由前准备备用连接,避免把管理会话一并切断。
初始设置验收清单
完成一次可用连接后,再启用开机启动、订阅自动更新等日常功能。保留必要的设置记录,能在后续更新或换网时快速区分配置变化与网络故障。
- 订阅显示最近成功更新时间,当前配置已选中,日志没有阻止内核启动的解析错误。
- 记录客户端名称、内核版本和实际
mixed-port,系统代理地址与端口一致。 - 显式代理请求收到响应,连接记录能解释规则命中、策略组和最终出口。
- 需要 TUN 的应用已单独测试,局域网设备和内网服务仍按预期访问。
- 退出客户端后能够恢复普通联网,重启后代理开关和服务状态符合预期。
- 更新订阅后复查覆写配置,备份中妥善保存凭据,不把完整订阅链接贴到公开求助页面。
后续排查仍按「配置是否有效→内核是否监听→应用是否接入→规则是否命中→节点是否可达」的顺序进行。术语对应关系可查阅名词解释;规则与内核配置细节可查看技术参考。