一句话结论:订阅转换就是把一种格式的机场订阅,改写成另一种客户端能识别的格式;但订阅链接等同于账号密码,能直接复制机场提供的对应格式链接,就不要转换,必须转换时优先自建服务或本地工具,不要交给陌生的在线转换网站。比如机场只给了一个通用订阅,而你想在 Clash Verge Rev 里使用带分流规则的配置,才需要考虑转换。
本文按顺序讲:机场订阅有哪些格式 → 什么时候需要订阅转换 → 在线转换的隐私风险 → 更安全的做法 → 本地自建 subconverter → 合并多家机场 → 怎么确认已经生效。
一、机场订阅有哪些格式?
同一个机场账号背后是同一批节点,但不同客户端读取配置的语法各不相同。常见的格式有四类:
- Clash YAML:Clash 系客户端使用的完整配置文件,除了节点,还包含策略组、分流规则和 DNS 设置,导入后就能直接按规则分流。
- Base64 通用订阅:把 vmess、vless、trojan、ss 等分享链接逐行排列,再整体做一次 Base64 编码。它只有节点清单,没有规则,但能识别它的客户端最多。
- sing-box JSON:sing-box 内核的完整配置,包含 inbounds、outbounds、route 等字段,sing-box 官方客户端只认这种格式。
- Surge / Quantumult X 专用格式:这些客户端有自己的配置语法,节点和规则的写法都与 Clash 不同,机场一般会单独给出对应的订阅链接。
想看看通用订阅里到底装了什么,可以用本站的 订阅解码工具 在浏览器本地解码;单条分享链接的参数,可以用 节点解析工具 查看。协议之间的区别见 代理协议对比。
格式与客户端对照表
| 格式 | 内容 | 适用客户端 | 是否带分流规则 |
|---|---|---|---|
| Clash YAML | 节点、策略组和规则的完整配置 | Clash Verge Rev、FlClash、Clash Meta for Android、Stash、OpenClash | 带 |
| Base64 通用 | 编码后的节点链接列表 | v2rayN、v2rayNG、Shadowrocket、Hiddify | 不带 |
| sing-box JSON | sing-box 格式的完整配置 | sing-box 官方客户端、Hiddify | 视机场而定 |
| Surge / Quantumult X | 对应客户端自己的语法 | Surge、Quantumult X | 带,按客户端语法 |
可以看出,通用订阅只是“节点清单”,而 Clash 和 sing-box 订阅是“节点加规则”的完整配置。所谓订阅转换,主要就是先解析节点清单,再套上一份规则模板,生成目标客户端的配置文件。
二、什么时候需要订阅转换?
- 机场只提供通用订阅,而你要用 Clash 系客户端或路由器上的 OpenClash。
- 你想使用自己喜欢的分流规则模板,替换机场默认的规则。
- 想把两家机场的节点合并到一个配置里,作为主力加备用。
- 使用 sing-box 官方客户端,但机场不提供 sing-box 订阅。
反过来,Shadowrocket 能直接识别通用订阅,也能读取大多数 Clash 订阅中的节点,Hiddify 同时支持多种格式,这些情况一般不需要转换。在决定转换之前,先登录机场用户中心仔细看一看:绝大多数机场都提供“复制 Clash 订阅”“复制 Shadowrocket 订阅”等多个按钮,有的还会根据客户端的标识自动返回合适的格式。找对按钮,往往比转换更快,也更安全。各格式的复制方法见 订阅链接教程。
三、在线订阅转换的隐私风险
网上有很多公开的订阅转换网站,只要粘贴链接就能生成新链接。但它的工作原理是:转换服务器会读取你的订阅链接,下载并解析全部节点信息。要记住一点,订阅链接就是密码,谁拿到它,谁就能导入你的全部节点、消耗你的流量。把它交给第三方转换服务,等于把密码交给一个你不认识的人。具体风险包括:
- 运营者可以记录你的原始订阅链接,长期使用甚至转卖你的流量。
- 转换后的新链接仍然指向对方服务器,客户端每次更新订阅,都会把原始链接再发送一次。
- 对方可以在生成的配置里加入额外的规则或节点,把一部分流量引向自己控制的服务器。
- 转换服务一旦下线或被干扰,你的客户端就无法再更新订阅。
如果你已经用过来历不明的在线转换,最直接的补救办法是到机场用户中心重置订阅链接,旧链接会立即失效,然后在自己的每台设备上重新导入新链接。
四、更安全的做法
- 使用机场自己的格式链接:这是首选,节点信息只在你和机场之间传输。部分机场后台还内置了转换功能,由机场服务器生成配置,风险与直接订阅相同。
- 自建转换服务:在自己的电脑或服务器上运行开源的转换后端,订阅内容不经过任何第三方,下一节详细介绍。
- 使用本地工具:如果只是想查看节点、提取个别节点,用在浏览器本地运行的工具即可,例如 订阅解码工具,不需要把链接上传到任何服务器。
- 换一个兼容性更好的客户端:Hiddify、Shadowrocket 等能同时识别多种格式,有时换客户端比转换订阅更省事,见 sing-box 与 Hiddify 教程。
五、本地自建 subconverter
subconverter 是最常用的开源订阅转换后端,原项目已不太活跃,社区有持续维护的分支,请从 GitHub 上的项目官方 Releases 获取。在自己电脑上运行,节点信息不会离开本机:
- 下载对应系统的压缩包并解压,运行其中的 subconverter 程序;也可以用 Docker 运行,映射 25500 端口。
- 程序默认在
http://127.0.0.1:25500监听。 - 把机场订阅链接进行 URL 编码(可在浏览器控制台或任意编码工具中完成),拼接成转换地址,格式为
http://127.0.0.1:25500/sub?target=clash&url=编码后的订阅链接。 - target 参数决定目标格式:clash 生成 Clash 配置,singbox 生成 sing-box 配置,quanx 生成 Quantumult X 配置,v2ray 生成通用订阅。具体可用值以所用版本的文档为准。
- 还可以追加 config 参数指定规则模板,用多个订阅链接合并时用竖线分隔。
- 把拼好的地址作为订阅链接导入客户端即可。注意转换服务需要一直运行,客户端更新订阅时才能拿到新配置。
六、合并多家机场的注意事项
把主力和备用两家机场合并成一个配置,好处是切换节点不用切换配置;但要注意两点:一是节点名称可能重复,转换器一般会自动添加序号,最好通过参数给不同来源加上前缀,方便区分;二是自动选择分组会混合两家的节点测速,可能频繁在两家之间切换,导致流量消耗分布不可控。更稳妥的做法是为每家机场单独建立分组。
七、订阅转换后怎么确认已经生效?
- 节点数量:与机场面板一致,没有因为协议不支持被丢弃的节点,老版本转换器可能不识别较新的协议。
- 策略组和规则:策略组能正常切换节点,国内网站直连,规则原理见 Clash 分流规则教程。
- 出口 IP:开启代理后打开查询 IP 的网站,地区应与所选节点一致;访问国内网站时显示本地 IP,说明分流正常。
- 自动更新:在客户端手动更新一次订阅,确认能成功拉取;自建转换服务时,临时关掉服务再更新应该报错,说明客户端确实在通过它转换。
- 流量信息:剩余流量和到期时间在部分客户端中可能不再显示,需要到机场面板查看。
转换后节点全部超时,多半是转换器不支持节点使用的协议或参数,可以更新转换器版本,或回到机场原生订阅。Clash 客户端的导入步骤见 Clash 教程,小火箭用户见 Shadowrocket 教程,遇到其他报错可查 机场常见错误排查。