首次启动顺序:先配置,再接管流量
首次使用 Clash,先导入并激活订阅,确认内核启动、端口可用,再选择规则模式和节点,最后开启系统代理或 VPN 接管。桌面端先用系统代理验证浏览器;只有目标应用不读取系统代理时,再考虑 TUN 模式。这样每一步都有明确的检查对象,出错时不用同时排查订阅、DNS 和虚拟网卡。
Clash 客户端是操作界面,内核负责处理连接,订阅则提供节点、策略组及可能包含的规则。使用 mihomo(也称 Clash Meta)内核的客户端与原版 Clash 支持的配置字段不完全相同。下载成功、界面能打开,都不代表订阅已经激活或代理已经生效。
- 确认内核状态:首页应显示正在运行;日志不能持续出现配置解析失败或端口绑定失败。
- 导入订阅:更新成功后,点击对应配置卡片,将其设为当前配置。
- 检查端口:记录实际混合端口,例如
7890,不要直接照抄其他教程里的端口。 - 选择出站:切到规则模式,在规则引用的策略组里选择可用节点。
- 接管与验证:开启一种接管方式,访问网页,同时查看连接记录和命中规则。
订阅导入:更新成功后还要激活配置
区分订阅地址、节点链接与网页地址
订阅地址通常是一条带令牌的 HTTPS 链接,客户端通过它获取配置。服务商控制台页面、付款页面和使用说明页面不是订阅地址。单条节点链接也未必能直接作为完整 Clash 配置导入,具体取决于客户端是否提供转换或节点管理功能。
在常见桌面客户端中,操作入口通常是「订阅」或「配置」→「新建/导入」→ 粘贴订阅地址 →「保存/下载」。各客户端菜单名称不同,应以实际界面为准。完成下载后,再在配置列表中选中该条目;只看到“更新成功”,但当前配置仍是默认项,节点不会自动切换。
- 节点列表为空:检查是否选中刚导入的配置,以及返回内容是否为客户端支持的配置格式。
- 提示 HTTP 401 或 403:优先检查订阅是否过期、令牌是否失效,以及服务端是否限制请求;不要先修改 DNS。
- 提示解析错误:查看日志中的字段名与行号。含 mihomo 专用协议或字段的配置,可能无法交给原版内核运行。
- 下载超时:先确认订阅域名可达;若客户端支持“通过代理更新订阅”,需要已有可工作的配置才能使用这条路径。
导入后确认三项内容
第一,配置卡片有当前选中状态;第二,代理页能看到节点或策略组;第三,日志显示配置加载完成,而不是反复重启内核。订阅包含哪些规则、是否有自动选择组,由配置提供方决定,不能仅凭“节点很多”判断分流已经配置好。
混合端口:核对 7890,而不是记住 7890
混合端口(mixed-port)在同一个监听端口接受 HTTP 代理和 SOCKS 代理连接。7890 是常见设置,但不是所有客户端的固定值。应在客户端的「设置」→「端口」或「设置」→「混合端口」中读取实际数值,再与应用内代理设置对应。
| 项目 | 示例值 | 检查重点 |
|---|---|---|
| 混合端口 | 127.0.0.1:7890 | 本机应用连接此端口使用 HTTP 或 SOCKS 代理。 |
| 独立 HTTP 端口 | port: 7890 | 与混合端口是不同配置项,不要把两个监听项设为冲突端口。 |
| 独立 SOCKS 端口 | socks-port: 7891 | 仅在确实启用该监听项时使用,不能假设一定存在。 |
| 控制接口 | 127.0.0.1:9090 | 供界面控制内核,不是浏览器或应用的代理端口。 |
下方片段用于辨认基础字段,不是一份可以直接导入的完整订阅。已有客户端可能通过运行时设置覆写这些字段,应检查最终生效值;不要为了对齐示例而覆盖原有节点、规则和策略组。
mixed-port: 7890
allow-lan: false
mode: rule
log-level: info
出现端口占用时,先查旧进程
日志中的 address already in use 或绑定端口失败,通常表示同一地址的端口已被其他进程占用。先退出旧代理客户端,再启动当前客户端。仍有冲突时,可以将混合端口改成 17890,同时更新手动填写的应用代理地址;如果只改了内核端口,应用仍连接 7890,请求就会失败。
首次使用保持“允许局域网连接”关闭即可。手机要通过电脑代理时,手机中的 127.0.0.1 指向手机自己,不是电脑;那属于局域网共享场景,需要另行配置监听地址、访问控制与防火墙,不宜与首次启动一起调试。
代理模式:规则、全局与直连怎么选
日常使用优先选规则模式。规则模式依据配置中的规则为连接选择直连、代理策略组或拒绝等出站;它并不意味着“所有国外网站一定走代理”,实际结果由规则顺序和策略组选择决定。规则通常自上而下匹配,最终常由 MATCH 处理未命中的连接。
- 规则(Rule):用于日常分流。既要检查命中了哪条规则,也要检查对应策略组当前选中了什么。
- 全局(Global):将进入内核的连接交给全局策略处理,适合短时比较规则与节点问题;还需在全局组中选择具体出站。
- 直连(Direct):让进入内核的连接直连,适合临时排查。它不是“已开启代理”的同义词。
模式决定的是进入内核之后如何出站,系统代理或 TUN 决定的是哪些连接进入内核。因此,“已经切到全局,但某个应用仍不走代理”并不矛盾:该应用可能根本没有使用系统代理。
节点测速不能代替实际访问
延迟测试通常只访问指定测试地址,显示 120 ms 并不保证目标网站、视频或 UDP 业务都可用。手动选择组应明确选中节点;自动选择组则应观察它当前采用的节点。排查时先固定一个候选节点,避免每次测试时出站变化,导致结果无法比较。
跨平台接管:桌面系统代理与移动端 VPN
| 平台 | 先完成的操作 | 容易漏掉的事项 |
|---|---|---|
| Windows | 激活配置,开启客户端系统代理。 | 在「设置」→「网络和 Internet」→「代理」核对本地地址与端口。 |
| macOS | 允许客户端修改网络代理,检查当前网络服务。 | 在「系统设置」→「网络」→ 当前连接 →「详细信息」→「代理」核对;具体名称随系统版本变化。 |
| Linux | 确认桌面代理或应用内代理已设置。 | 终端程序不一定读取桌面系统代理,需要单独配置或显式指定代理。 |
| Android | 选择配置并启动连接,批准系统 VPN 请求。 | 已有 VPN、按应用分流名单和后台电池限制可能影响接管。 |
| iOS | 使用兼容配置的客户端,按系统提示添加 VPN 配置。 | 不能把桌面端菜单原样套用;节点协议和配置格式须在客户端支持范围内。 |
Windows 与 macOS:先让浏览器通过系统代理
先关闭浏览器扩展里单独设置的代理,避免系统代理和扩展代理互相覆盖。Windows 防火墙提示不等于必须向所有网络开放入站访问;只在需要的网络范围内授权。单纯使用本机回环代理,不应为了排错而关闭整套防火墙。
Linux:浏览器可用不代表终端已配置
终端里的下载工具、包管理器和开发工具可能使用各自的代理设置。先用命令显式指定代理,确认内核可用,再决定是否写入环境变量。配置 HTTPS_PROXY 时,变量名称中的 HTTPS 表示目标请求类型,常见 HTTP 代理地址仍可写成 http://127.0.0.1:7890,不需要擅自换成 https://。
Android 与 iOS:检查 VPN 冲突和应用范围
Android 基于 VPN 服务的代理客户端一般不能与另一个同类 VPN 同时工作。若应用列表设置为“仅代理选中应用”,测试浏览器也必须在名单中。iOS 应确认 VPN 已连接,并检查客户端是否设置了绕过规则;不要只依据顶部 VPN 标记判断某条请求走了哪一个节点。
连通性验证:用端口、连接记录和网页交叉检查
验证时每次只改变一个设置。先确认内核日志正常,再访问一个本来能够直连的网站,最后访问需要目标出站的服务。与此同时打开客户端「连接」或「日志」,查看目标域名、命中规则及出站策略。网站打开了但没有连接记录,可能是请求走了直连、缓存、其他代理或未被当前内核接管。
用显式代理命令排除系统代理问题
下面命令假设混合端口是 7890。Windows 可在 PowerShell 使用 curl.exe,避免部分环境中 curl 别名造成差异;macOS 与 Linux 可使用 curl。端口不同就替换命令中的数字。
curl.exe -I --connect-timeout 10 --max-time 20 -x http://127.0.0.1:7890 https://example.com
curl -I --connect-timeout 10 --max-time 20 -x http://127.0.0.1:7890 https://example.com
这里的 10 秒是连接阶段超时,20 秒是整次请求的最长时间,不是测速成绩。示例域名用于检查请求链路;测试具体服务时,再替换成该服务的 HTTPS 地址。HTTP 代理输出中的 200 Connection established 仅表示隧道建立,应继续查看目标服务器的响应和客户端连接记录。
- 立即提示连接本地端口失败:检查内核是否运行、地址是否正确、端口是否一致。
- 显式代理可用,浏览器不可用:检查系统代理、浏览器独立代理设置和扩展,不要先更换订阅。
- 已有连接记录,但请求超时:检查所选节点、命中策略、目标服务可达性,并换一个节点对比。
- 只有域名访问异常:结合日志检查 DNS;不能仅凭一个解析错误就认定需要开启 TUN。
- 网页提示证书错误:先核对系统时间、证书颁发者与目标域名,不要关闭证书验证继续登录。
首次配置完成后的保存与回退
完成验证后,再设置订阅自动更新与开机自启。先手动重启客户端一次,确认它能恢复当前配置、模式和策略组选择。需要自启的桌面客户端还应区分“启动界面”“启动内核”和“自动开启系统代理”:三个行为不一定绑定在一起。
- 记录有效组合:客户端名称、内核类型、当前订阅、混合端口、代理模式和接管方式。
- 保护本地修改:订阅更新可能覆盖直接编辑的内容,持久修改优先使用客户端支持的覆写或合并功能。
- 确认退出恢复:正常退出后,系统代理应关闭或恢复原设置;否则应用可能继续连接已停止监听的端口。
- 保留排错依据:保存错误发生时间与脱敏日志,不公开订阅令牌、认证信息和完整访问记录。
当“配置已激活、端口已监听、策略组已选中、流量已进入内核、目标请求有正确出站”这五项都能确认,首次配置就有了完整的验证链路。后续遇到某个应用不走代理,再围绕该应用的接管方式调整,而不是把所有开关重新切换一遍。需要进一步理解字段和规则,可以查阅Clash 配置手册;遇到明确报错时,可先对照常见问题缩小排查范围。