入门操作 预计阅读 12 分钟

Clash 订阅链接导入教程:地址格式、配置更新与导入失败处理

梳理订阅地址与 YAML 配置文件的区别,逐步说明客户端导入、手动更新以及链接无法识别时的检查方法。

PROFILE INPUT

订阅链接、节点链接与 YAML 配置不是同一种输入

Clash 客户端需要读取一份配置,配置中通常包含代理节点、代理组、分流规则、DNS 参数和运行选项。用户拿到的“订阅”可能是一条远程地址,也可能是已经下载到本地的 YAML 文件。两者最终目的相同,但导入方式、更新方式和错误表现并不完全一致。

订阅链接一般以 https:// 开头。客户端访问该地址后,由服务端返回可识别的配置内容。地址本身只是入口,不代表浏览器中一定会显示格式整齐的文本;有些接口会直接触发下载,有些会返回经过编码的节点列表,还有些会根据请求信息输出适配 Clash 或 mihomo 内核的 YAML 配置。

单个节点链接则常以特定协议名称开头,一条链接通常只描述一个节点。把单个节点链接粘贴到“订阅地址”输入框,并不保证客户端能够将其当作完整配置读取。完整配置除了节点,还需要代理组与规则等结构。部分客户端提供单节点导入功能,但该入口与配置订阅入口应分开判断。

本地 YAML 文件是已经生成的配置快照。它适合离线检查和手动编辑,但不会因为远程订阅发生变化而自动同步。若客户端同时保存了远程订阅和本地副本,更新操作通常只作用于远程配置条目,不会自动覆盖用户另行导入的本地文件。

URL FORMAT

订阅地址格式与复制检查

可供客户端直接请求的订阅地址应包含完整协议、域名、路径以及服务端要求的查询参数。常见结构可以抽象为下面的形式:

https://config.example.net/api/profile?token=example-token&format=clash

其中,协议决定连接方式,域名与路径定位订阅接口,问号后的参数用于传递访问凭据或指定输出格式。真实地址中的参数名称由订阅提供方定义,不应自行改写。某些地址很长,是因为凭据、设备信息或输出选项经过了 URL 编码;长度本身不能用于判断地址是否有效。

复制时最常见的问题是漏掉末尾字符、混入换行、把聊天软件显示的省略号一起复制,或者只复制到问号之前。应使用“复制链接地址”功能获得原始内容,而不是根据界面上被截断的显示文本手动抄写。粘贴后检查开头是否为 http://https://,中间是否出现空格,末尾是否带有句号、右括号等正文标点。

URL 查询参数中的 & 用于分隔多个参数。在网页源代码里可能看到 &,但复制后的实际地址应只包含普通的 &。如果从富文本、邮件或网页代码片段复制地址,需要确认 HTML 转义没有被当作地址正文保存。

订阅地址通常带有访问凭据,应按账户密码处理。不要把完整地址贴到公开日志、截图或公开问题页面中。排查时可以保留域名与路径结构,同时遮盖令牌参数的主要部分。

输入类型 常见外观 适合的导入入口
远程订阅 以 HTTP 或 HTTPS 开头的完整地址 从 URL 导入、远程配置
本地配置 文件名以 .yaml 或 .yml 结尾 从文件导入、本地配置
单节点信息 以具体代理协议名称开头 节点导入或先转换为完整配置
网页管理地址 打开后显示登录页或控制面板 先在页面中获取实际订阅地址

IMPORT SEQUENCE

在 Clash 客户端中导入远程订阅

不同图形客户端的菜单名称可能写作“配置”“订阅”“Profiles”或“配置文件”,但处理顺序基本一致。以下步骤适用于以 Clash Meta(mihomo)等兼容内核为基础的常见桌面客户端。具体按钮位置应以当前客户端界面为准。

  1. 打开配置管理页面。确认进入的是配置或订阅区域,而不是代理节点选择页面。节点页面用于切换现有代理组,不能建立新的远程配置。
  2. 选择从 URL 导入。若界面同时提供本地文件、剪贴板与远程地址选项,应选择远程地址。粘贴完整订阅链接,并为配置填写便于识别的名称。
  3. 执行下载或添加。客户端会请求远程地址并解析响应。成功后通常出现新的配置卡片、更新时间或节点数量。只有出现条目并不等于已经启用,还要继续选择它。
  4. 设为当前配置。点击配置条目或使用“启用”操作,让内核重新加载该配置。切换时若报告解析错误,应先保留原有可用配置,再检查新配置内容。
  5. 检查代理组。进入代理页面,确认配置定义的组已经显示,并按需要选择节点或自动测速组。没有代理组时,可能导入了节点列表而不是完整 Clash 配置。
  6. 启用系统代理或 TUN。系统代理适合常规浏览器和遵循系统代理设置的程序;TUN 用于接管更多网络流量,通常需要额外权限。首次验证建议先使用系统代理,确认配置可工作后再处理 TUN。

移动端客户端的导入逻辑相似:添加远程配置、选中配置、启动连接。系统可能要求创建 VPN 配置,这是操作系统提供网络接管能力时的标准授权步骤。若系统拒绝授权,客户端即使已经导入订阅,也无法建立对应的网络接口。

PROFILE UPDATE

手动更新、自动更新与本地修改

远程订阅保存后,客户端通常会记录原始 URL,并提供更新按钮。手动更新会再次请求该地址,下载最新配置并替换远程配置的缓存内容。节点增减、名称调整、代理组变化和规则更新,通常要在完成更新并重新加载配置后才会反映到界面。

自动更新间隔可能由客户端设置,也可能由配置中的元数据提示。间隔过短会产生不必要的网络请求;间隔过长则可能继续使用已经调整过的节点信息。日常使用可保留客户端的合理默认值,在发现节点列表与订阅管理页面不一致时再执行手动更新。

需要特别区分“更新订阅”和“测试延迟”。更新订阅获取配置内容;延迟测试只对当前已加载节点发起探测,不会下载新节点。反复测试延迟不能修复过期订阅,也不会刷新访问凭据。

直接编辑远程配置生成的 YAML 时,还要考虑覆盖关系。部分客户端会在下一次更新时完全替换本地内容,因此手动加入的规则、DNS 或节点可能消失。需要长期保留自定义内容时,应使用客户端提供的覆写、合并、脚本或扩展配置机制;如果客户端不支持这些机制,可以复制为独立本地配置,但之后需要自行维护更新。

更新后原先选择的节点不一定继续存在。如果代理组名称保持一致,客户端可能保留组的选择状态;如果节点被删除、重命名或移动到其他组,内核会按组的默认行为重新选择。更新完成后应检查主要代理组与当前模式,避免把“配置已更新”误认为“原节点仍然选中”。

FAULT ISOLATION

订阅链接无法识别时的排查顺序

导入失败应按“地址、网络响应、内容格式、内核兼容性”的顺序处理。先判断客户端是否拿到了内容,再判断内容能否作为配置解析。这样可以避免在网络请求失败时反复修改 YAML,也能避免在格式错误时只更换网络环境。

一、确认地址完整且仍然有效

重新从订阅管理页面复制地址,不要沿用经过聊天软件转发或手动换行的文本。若服务端允许在浏览器中访问,可以观察返回结果是配置文本、文件下载、登录页面还是错误页面。出现登录页通常说明复制的是管理页面地址;出现权限提示则可能是凭据失效、订阅到期或访问策略限制。

二、确认客户端能连接订阅服务器

首次导入发生在可用代理尚未建立之前,因此订阅服务器必须能通过当前网络访问。如果 DNS 解析失败、TLS 连接失败、请求超时或网络策略阻断,客户端无法取得配置。可先检查系统时间是否准确、浏览器能否访问同一域名,以及客户端日志中的主机名和错误时间是否与本次操作一致。

三、检查返回内容是否为配置

服务端返回状态正常,不代表正文就是 YAML。接口可能返回 JSON 错误、HTML 登录页、验证码页面或普通文本提示。客户端随后会报告 YAML 解析失败、缺少字段或无法识别格式。此时应处理订阅权限或输出格式,而不是调整代理端口。

四、确认输出目标兼容当前内核

不同订阅输出可能面向 Clash、mihomo 或其他客户端。mihomo 在 Clash 配置语法基础上扩展了部分代理协议、规则与 DNS 能力;旧内核不一定认识较新的字段或节点参数。如果日志指出未知代理类型、字段不受支持或配置校验失败,应选择与客户端内核匹配的订阅格式,或更新到仍在维护的兼容客户端。

五、排除重复名称与异常内容

配置文件中的代理名称和代理组引用需要对应。代理组引用不存在的节点、同一层级出现不合预期的重复名称、规则集路径不可用,都可能导致加载失败。某些问题不会阻止文件下载,却会在内核启动或切换配置时出现。

YAML PARSE

本地 YAML 导入失败时检查哪些结构

YAML 依赖缩进表示层级。缩进应使用空格,并在同一层级保持一致。Tab、缺少冒号、列表项前漏写连字符、引号未闭合,都会让解析器在错误位置附近停止。日志中显示的行号是定位起点,但真正的问题也可能位于前一行。

一个简化的配置骨架通常包含端口设置、代理节点、代理组和规则。下面只用于说明层级关系,不是可直接连接的完整配置:

mixed-port: 7890
mode: rule

proxies:
  - name: example-node
    type: socks5
    server: 127.0.0.1
    port: 1080

proxy-groups:
  - name: PROXY
    type: select
    proxies:
      - example-node
      - DIRECT

rules:
  - MATCH,PROXY

proxies 是节点列表,proxy-groups 定义节点如何被选择,rules 决定连接交给哪个代理组或直连策略。规则引用的策略名必须与代理组名称或内置策略相符。若把节点名称直接写进需要代理组名称的位置,应确认当前内核和规则类型是否允许这种用法。

包含冒号、井号、特殊符号或前后空格的名称,建议使用引号包裹。井号在未被引号保护时可能被解释为注释起点。文件编码应使用客户端可正常读取的文本编码,避免由办公软件保存为带复杂格式的文档。

如果远程订阅能下载但无法加载,可以先在客户端日志中查找第一条解析错误。后续大量错误往往是第一处结构问题引发的连锁结果。修复第一处后重新校验,比从日志末尾倒查更有效。

RUNTIME CHECK

导入成功后仍不能连接:规则、DNS 与 TUN 检查

配置成功加载后,连接问题已经进入运行阶段。先确认客户端运行模式。规则模式按照 rules 从上到下匹配,命中后停止继续检查;全局模式通常把流量交给指定代理组;直连模式则绕过代理。若处于直连模式,节点显示正常也不会让目标流量经过代理。

接着检查代理组选择。自动测试组会依据配置定义的探测地址与时间间隔选择节点,但探测成功不等于所有网站均可访问。手动选择组则需要明确选中具体节点。若组内当前项目显示为 DIRECT,相关规则命中该组时会执行直连。

DNS 问题常表现为域名无法访问,而直接连接某些 IP 地址仍有响应。检查配置是否启用了 DNS 模块、监听地址是否冲突、增强模式是否与当前网络方案匹配。Fake IP 模式会返回保留地址并在内核中映射回原始域名,它需要流量继续经过 Clash 内核;如果请求绕过内核,可能出现解析结果无法正确使用的情况。

TUN 模式需要创建虚拟网络接口并调整路由。启动失败时应查看是否缺少系统权限、接口是否被其他网络工具占用、服务组件是否已安装,以及系统中是否存在冲突路由。TUN 开启后仍无流量,则检查路由接管范围、DNS 劫持设置和局域网绕过规则。不要在未记录原始状态时同时修改 TUN、DNS、规则和节点,否则难以判断哪项改动产生了影响。

建议使用最小变更法:先加载确认可解析的配置,选择一个明确节点,使用系统代理验证浏览器流量;随后测试规则模式;最后再启用 TUN 并验证不遵循系统代理的程序。每一步都查看实时日志中的目标域名、命中规则、所选策略和连接结果,即可把订阅问题与运行问题分开。

QUICK CHECKLIST

订阅导入检查清单

  • 确认输入是远程订阅地址、本地 YAML 文件还是单节点链接。
  • 重新复制完整 URL,检查协议、查询参数、空格和末尾标点。
  • 确认返回内容不是登录页、权限提示或普通网页。
  • 选择与 Clash 或 mihomo 内核兼容的订阅输出格式。
  • 导入后将配置设为当前配置,再检查代理组是否出现。
  • 更新订阅后确认节点选择、运行模式和规则组没有变化。
  • 解析失败时从日志中的第一条 YAML 或字段错误开始处理。
  • 运行失败时依次检查节点、规则、DNS、系统代理与 TUN。

只要把“请求订阅”“解析配置”“加载内核”“接管流量”拆成四个阶段,绝大多数导入问题都能定位到具体环节。地址无法请求时处理网络与权限;正文无法解析时处理格式与兼容性;配置能够加载但不能访问时,再检查代理组、规则、DNS 和系统接管状态。

下载客户端与导入订阅

按设备平台选择兼容客户端,安装后依照使用指南完成配置导入、代理组选择和连接验证。

下载Clash