为什么需要订阅转换?
不同代理服务的订阅链接格式各不相同:Shadowsocks 使用 ss:// URI,VMess 使用 Base64 编码的 JSON,Trojan 使用 trojan:// URI,Sing-box 使用 SIP008 格式……而 Clash 只认 Clash YAML 格式。这就是 subconverter 存在的意义 —— 将各种格式的订阅链接统一转换为 Clash(或 Sing-box / V2Ray)配置。
一、subconverter 核心功能
| 功能 | 说明 |
|---|---|
| 多格式输入 | SS/VMess/Trojan/VLESS/Sing-box/SIP008 |
| 多格式输出 | Clash / Clash (Meta) / V2Ray / Sing-box / Surge / Surfboard |
| 规则集预处理 | 自动应用 ACL4SSR / Loyalsoldier 等规则 |
| 节点过滤 | 支持正则表达式过滤 / 重命名节点 |
| Emoji 图标 | 自动为节点名添加国旗 / 图标 Emoji |
| 流量/过期信息 | 在配置中显示剩余流量和过期时间 |
二、在线订阅转换服务
如果不想自建,可以使用以下公共转换服务(注意隐私风险):
- ACL4SSR 在线转换:https://acl4ssr.net
- subconverter 官方 Demo:https://subconverter.sub-help.com
- 多地区转换节点:建议选择离自己较近的服务器
⚠️ 隐私提醒
使用公共转换服务时,你的订阅链接(包含服务器地址、端口、密码等信息)会被发送到第三方服务器。建议使用自建 subconverter,或者选择可信的转换服务。
三、自建 subconverter(Docker 推荐)
docker run -d --name subconverter -p 25500:25500 -v /etc/subconverter:/base/config --restart unless-stopped slgdocker/subconverter:latest
转换 API 调用示例
# 基础转换(SS/VMess → Clash)
http://your-server:25500/sub?
target=clash&
url=https://your-provider.com/subscribe&
emoji=true&
list=false&
sort=false
# 高级转换(指定规则集 + 自定义文件名)
http://your-server:25500/sub?
target=clash&
url=https://your-provider.com/subscribe&
emoji=true&
rename=true&
includeRemarks=香港|日本&
excludeRemarks=过期|剩余&
filename=my-config.yaml
四、sub2clash 与 subconverter 对比
| 对比项 | subconverter | sub2clash |
|---|---|---|
| 支持输出格式 | Clash/V2Ray/Sing-box/Surge | Clash only |
| 规则集支持 | ✅ 完整支持 | ⚠️ 有限支持 |
| 维护状态 | ✅ 活跃 | ⚠️ 较慢 |
| 部署难度 | 中等(Docker) | 简单(单二进制) |
五、Clash Meta 订阅配置
Clash Meta (Mihomo) 对订阅转换有特殊要求,需要注意以下几点:
# Clash Meta 配置中的订阅设置
# 在 Clash Verge Rev / Mihomo 中使用
# 方法一:直接粘贴订阅链接(客户端自动转换)
# 在客户端的「订阅」页面添加链接即可
# 方法二:手动转换后导入
# 1. 使用 subconverter 转换订阅链接
# 2. 下载生成的 YAML 文件
# 3. 在客户端中「导入配置』选择该文件
# 方法三:使用在线 API(推荐)
# 在 Clash Meta 配置文件中直接引用
proxy-providers:
provider1:
type: http
url: "https://your-subconverter.com/sub?target=clash&url=YOUR_SUBSCRIBE_LINK"
interval: 3600
path: ./providers/provider1.yaml
health-check:
enable: true
url: https://www.google.com/generate_204
interval: 300
六、常见问题 FAQ
Q: 转换后的配置为什么节点很少?
A: 可能是订阅链接失效,或者使用了 includeRemarks / excludeRemarks 参数过滤了部分节点。检查转换 URL 参数,或尝试不带过滤参数重新转换。
Q: 如何保留节点原始名称?
A: 在转换参数中设置 rename=false,这样不会自动重命名节点。如果只想保留 Emoji 图标,设置 emoji=true&rename=false。
Q: Clash Meta 和普通 Clash 的订阅转换有区别吗?
A: 有区别。Clash Meta 支持更多协议(VLESS/Reality/Hysteria2),转换时需指定 target=clashmeta 或确保 subconverter 版本较新(支持 Meta 协议)。
总结
subconverter 是 Clash 用户必备的工具,它解决了不同代理协议之间的格式壁垒。无论你是自建还是使用公共服务,掌握订阅转换都能大幅提升代理使用体验。配合 优质机场 的 Clash 订阅,一键导入即可享受高速代理服务。
发表回复