Clash 新手十问:订阅链接怎么导入、规则与全局模式怎么选、端口有什么用
集中回答新手最常卡住的十个问题,涵盖订阅导入、模式选择、节点切换、端口与开机自启,每条附延伸阅读入口。
1. Clash、客户端与 mihomo 分别是什么?
日常说的“Clash”可能指内核,也可能指带界面的客户端。内核负责接收连接、匹配规则和连接代理服务器;客户端负责订阅管理、界面操作、系统代理以及内核进程管理。排查问题时,应同时记录客户端名称和内核名称,不能只说“Clash 最新版”。
Clash Meta 是在 Clash 生态中发展出的分支,后来使用 mihomo 名称。不同客户端可能搭载不同内核,支持的协议、规则字段与 TUN 设置并不完全一致。某份配置在 mihomo 中可以加载,不代表旧版 Clash 内核也能识别其中全部字段。
- 客户端版本:通常在“关于”页面查看,决定菜单布局与配置管理功能。
- 内核版本:通常在“内核”或“关于”页面查看,决定配置语法和协议能力。
- 订阅服务:提供服务器信息或配置,不等于客户端,也不会因为安装客户端就自动获得。
2. 订阅链接怎么导入,导入后为什么没有生效?
订阅链接是用于获取配置或节点信息的地址。它可能返回完整 Clash YAML,也可能只返回节点列表。后者不一定能直接作为完整配置运行;服务端应提供适用于当前客户端或内核的订阅格式。
通用导入顺序
- 在订阅服务页面复制适用于 Clash 或 mihomo 的订阅地址,避免复制账户管理网页地址。
- 打开客户端的“配置”或“Profiles”页面,寻找“新建”“从 URL 导入”或同类入口。
- 粘贴地址并下载,确认列表中出现配置名称,且没有解析失败提示。
- 选中或启用这份配置,再到“代理”页面确认代理组及节点已经出现。
- 选择可用节点,然后按需求开启系统代理;导入配置本身不会保证应用流量已进入内核。
菜单名称随产品变化,上述是操作顺序,不是一条适用于所有客户端的固定菜单路径。若提示 HTTP 401 或 403,先检查订阅授权和有效期;若下载成功却报 YAML 解析错误,检查返回内容是不是登录页面、错误提示或不兼容格式。
3. 规则、全局、直连模式应该怎么选?
模式决定的是“进入内核的连接如何分配出口”,不是“哪些应用会进入内核”。只开全局模式而未设置系统代理或 TUN,不能让所有程序自动经过客户端。
| 模式 | 处理方式 | 适合场景 |
|---|---|---|
| 规则 Rule | 按配置中的规则顺序匹配策略 | 日常使用,需要区分直连与代理的连接 |
| 全局 Global | 交给全局策略组所选出口 | 短时对比出口,排查分流规则 |
| 直连 Direct | 由本机直接连接目标 | 临时绕过代理出口,比较基础网络 |
规则模式一般按从上到下、首次命中的方式处理。下面是规则片段,不是能独立导入的完整配置;其中“默认出口”必须是配置中已经存在的代理或代理组名称。
rules:
- DOMAIN-SUFFIX,example.com,DIRECT
- MATCH,默认出口
示例会让 example.com 及其子域名直连,其余连接交给“默认出口”。如果该组当前选中 DIRECT,兜底连接仍然是直连,因此“规则模式已开启”不等于“当前请求一定经过代理服务器”。
延伸阅读:在协议参考中核对规则类型、策略名与匹配顺序。
4. 节点与代理组有什么区别,怎么切换节点?
节点通常对应一个具体代理服务器;代理组则是可被规则引用的选择层。一个组可以包含节点、其他代理组,也可以包含 DIRECT。切换时要看请求最终命中的组,而不是只看首页显示的节点名称。
select:手动选择其中一个候选项,适合需要固定出口的情况。url-test:依据配置的探测结果自动选择候选项,结果受测试地址和容差等设置影响。fallback:按候选顺序选择健康检查通过的可用项,不以最低延迟为唯一目标。
先打开“连接”页面,找到目标域名对应的连接,查看匹配规则和代理链,再回到相应代理组切换。切换通常影响新建连接;已有下载、视频或长连接可能仍使用原出口,需要重新连接后观察。
延迟显示 80 ms,只能说明该次探测的耗时,不能据此换算下载速度。吞吐量还受到带宽、拥塞、目标站点与本地网络影响。延迟显示超时,也可能只是探测地址无法访问,需要结合实际请求判断。
5. 7890、7891、9090 端口分别有什么用?
这些数字是常见示例,不是所有客户端的固定默认值。实际使用前,应在客户端端口设置或当前生效配置中确认。尤其要分清代理入口与管理接口,不能把控制端口填进浏览器代理设置。
mixed-port: 7890
allow-lan: false
external-controller: 127.0.0.1:9090
上述片段中,7890 是 HTTP 与 SOCKS 混合代理入口,9090 是供管理界面调用的控制接口。allow-lan: false 用于不向局域网提供代理服务的场景。部分旧配置会把 HTTP 与 SOCKS 分开监听,如 port: 7890、socks-port: 7891,不能只看数字猜协议。
用一条命令确认代理入口
curl --proxy http://127.0.0.1:7890 --connect-timeout 10 --head https://example.com
此命令显式指定本机 7890 端口,并设置 10 秒连接超时。Windows PowerShell 中可使用 curl.exe 避免旧环境中的命令别名差异。连接被拒绝时先检查内核是否运行、端口是否一致;出现 HTTP 响应说明请求获得了响应,但不等于所有网站都能访问。
6. 开了系统代理,为什么浏览器或终端仍然不走代理?
系统代理是提供给应用读取的代理设置,并不是系统级强制转发。大多数浏览器可以使用系统代理,但命令行工具、游戏或自行实现网络栈的应用可能忽略它。浏览器代理扩展也可能覆盖系统设置。
- 先用上一节的显式代理命令测试,区分“代理入口不可用”和“应用没有使用代理”。
- 检查浏览器的代理扩展、独立代理设置与例外列表,避免同时由多个工具修改代理。
- 在客户端“连接”页面观察请求是否出现;没有记录时优先检查流量入口,而不是反复更换节点。
- 终端工具按其文档设置环境变量或代理参数;需要覆盖更多应用时,再评估 TUN 模式。
例如 macOS 或 Linux 的当前 shell 可以临时设置:
export http_proxy=http://127.0.0.1:7890
export https_proxy=http://127.0.0.1:7890
curl --head https://example.com
unset http_proxy https_proxy
https_proxy 的值仍可使用 http://,表示通过 HTTP 代理入口建立到 HTTPS 目标的隧道。这里的 export 仅影响当前 shell 及其后续启动的子进程,不会修改全系统设置;不同工具对变量名称的支持也有差异。
延伸阅读:继续查看帮助中心中的应用代理与连接排查说明。
7. TUN 模式是什么,是否必须开启?
TUN 通过虚拟网络接口接入流量,配合路由和 DNS 设置,把原本不读取系统代理的连接送入内核。它与规则模式属于不同层次:TUN 解决流量怎样进入内核,规则解决进入后走哪个出口。
如果浏览器和常用工具通过系统代理已经能正常工作,不必为了“设置完整”而开启 TUN。游戏、部分命令行程序或其他不读取代理设置的应用需要接入时,再按客户端说明启用。Windows 客户端可能需要安装服务或提升权限,macOS 与 Linux 也涉及相应权限及系统网络配置。
启用前后的检查项
- 先确认系统代理路径可用,避免把节点故障误判为 TUN 故障。
- 记录现有 VPN、虚拟网卡与公司网络要求;多个软件修改默认路由可能冲突。
- 开启后检查目标连接是否进入客户端,再确认局域网、DNS 和 IPv6 访问是否正常。
- 退出客户端后检查网络是否恢复;若异常,先关闭 TUN,再排查残留路由或服务状态。
不同内核及客户端的 stack、auto-route、dns-hijack 支持与默认值有区别。不要将网上整段 TUN 配置直接覆盖到订阅里,也不要把 TUN 当作绕过网络权限管理的工具。
8. 订阅更新后,自定义规则为什么消失了?
远程订阅更新通常会重新获取服务端配置。如果直接编辑下载得到的 YAML,下次更新时这些修改可能被替换。订阅更新、代理提供者更新和规则提供者更新也不是同一件事,它们分别对应不同数据来源。
- 保留远程订阅作为上游来源,不把它当作唯一的自定义规则存储位置。
- 若客户端提供覆写、合并或脚本功能,把本地修改放入该功能,并确认作用范围。
- 需要完全手动维护时,另存本地配置;同时接受服务器信息不再自动随远程订阅更新的结果。
- 每次更新后检查最终生效配置,而不只检查编辑窗口里的原始内容。
规则覆写尤其要注意插入位置。若把自定义规则追加在 MATCH 后面,连接已被兜底规则接走,后面的规则便无法生效。若新增规则引用了不存在的代理组,则可能导致配置加载失败。
更新间隔也要区分单位:例如 mihomo 的 proxy-providers 中 interval: 3600 表示 3600 秒,即 1 小时;客户端订阅页面的更新周期可能以分钟显示,不能直接照抄数字。
9. 开机自启、启动后代理和自动更新是一回事吗?
不是。这些选项控制不同的动作。开启“开机自启”通常只是让客户端在登录后启动;是否自动启动内核、启用系统代理或恢复 TUN,需要分别确认。安装系统服务也不等于桌面界面一定会随登录打开。
| 设置项 | 需要验证的结果 |
|---|---|
| 开机自启 | 登录系统后,客户端是否运行 |
| 启动时启用系统代理 | 系统代理地址与端口是否指向正在监听的入口 |
| 启动时恢复 TUN | 服务权限、虚拟接口与路由是否正常 |
| 订阅自动更新 | 在客户端规定条件下是否重新获取配置 |
设置完成后,至少做一次完整的退出与重新登录测试。先观察内核状态,再测试访问,不要仅凭托盘图标判断。便携式客户端移动目录后,系统登记的自启路径也可能失效,需要重新设置。
如果退出后浏览器提示代理连接失败,先到操作系统代理设置中检查是否仍保留 127.0.0.1:7890。本地入口已经关闭而系统仍指向该端口,就会出现“客户端关了反而无法联网”的现象。
10. 无法联网时,应该按什么顺序排查?
按“基础网络 → 内核入口 → 配置与节点 → 分流规则 → 应用”逐层检查,通常比同时修改 DNS、端口、模式和节点更容易定位。每次只改一项,并记录修改前后的结果。
- 基础网络:暂时关闭系统代理与 TUN,确认本地网络能访问本来就可达的网站。若仍失败,先处理 Wi-Fi、网关或网络认证。
- 内核入口:确认配置已启用、内核运行、端口一致。用显式指定代理的命令测试,连接被拒绝通常先查本机监听。
- 订阅与节点:确认订阅有效,选择另一条已知可用节点比较。配置能解析不代表服务器当前可连接。
- 分流结果:查看连接的规则与代理链。短时切换全局模式作对比,测试后恢复原模式;全局可用而规则不可用时,优先检查规则出口。
- DNS 与应用:仅部分域名失败时,检查 DNS 日志、浏览器加密 DNS、缓存及应用独立代理设置,不要直接认定所有问题都来自 DNS。
求助时提供哪些信息
提供操作系统、客户端版本、内核版本、当前模式、是否启用 TUN、实际监听端口,以及一次失败请求对应的时间和脱敏日志。说明是所有应用失败,还是只有浏览器、终端或单个站点失败,能显著缩小排查范围。