搜索 K
Appearance
本文由 AirPick 实验室编辑团队基于 2026 年 3 月实测数据撰写。测试环境覆盖 Clash Verge Rev v2.x / Mihomo Party / OpenClash / ClashMetaForAndroid / Shadowrocket,所有命令均在 macOS 15 与 Debian 12 上验证通过。
如果你正在使用任何一个名字带「免费订阅转换」「在线 Clash 转换」的公共 API 站点,你实际上已经把机场订阅链接的完整明文交到了陌生人手里。这不是危言耸听,而是链路结构决定的必然结果。
核心结论就三条:
顺便说一句:选一个直接提供 Clash YAML 原生订阅的机场,是规避整个转换风险最省事的办法。光速云就是全协议原生输出,无需任何第三方转换环节。
很多人以为订阅转换只是「格式翻译」。错。它的完整链路是这样的:
你的客户端
│ ① 携带订阅 URL(含 token)请求转换 API
▼
公共转换服务器
│ ② 用你的 URL 去请求机场后端
▼
机场订阅接口
│ ③ 返回 Base64 节点列表
▼
公共转换服务器
│ ④ 解析、改名、套上规则组、生成 YAML
▼
你的客户端(⑤ 拿到最终配置)在这条链路上,转换服务器在 ①③④ 三个位置都是完全中间人。它能拿到的东西包括:
第四点是最致命的。前三点是「隐私泄露」,第四点是「信任劫持」。一个恶意转换器可以把你的某个「香港 IEPL 节点」的地址悄悄换成它自己的机器,而节点名字保持不变。你测速正常、延迟正常、甚至能上网,但所有流量都经过了它。
这是最典型的认知误区。你在浏览器里访问 https://xxx-converter.com,地址栏有小锁,一切看起来安全。
但 TLS 加密保护的是「你的设备 ↔ 转换服务器」这一段。而订阅链接在第 ① 步就已经解密后落到了服务器的应用层日志里。加密只防路上被抢,不防对面抄。
风险兑现是低概率高损失事件。转换站运营者收集的订阅数据,通常不会当天就滥用,而是攒成大库,在某个时间点(比如站点跑路、被收购、数据库泄露)集中变现。你「用了三年没事」,只能说明这三年的数据还躺在某个数据库里还没被用。
订阅转换解决的是「配置格式」,而真正决定你体验的是「物理链路」。这两件事经常被混为一谈,导致很多人花大力气自建转换器,结果机场本身是普通国际 BGP 直连,晚高峰照样炸。
BGP 中转:机场在香港/日本等地部署入口,通过 BGP Anycast 就近接入,再走公网到落地。优点是成本低,缺点是公网拥塞不可控,晚高峰丢包常见。
IEPL / IPLC 专线:企业级内网专线,入口到落地走的是物理专线或 MPLS 内网,不经过公网路由。IEPL 是「国际以太网专线」,IPLC 是「国际私有租用线路」,本质都是给你一条不受公网拥塞影响的通道。这是晚高峰能不能跑满的关键分水岭。
QoS 与拥塞控制:即使走专线,如果服务端 TCP 拥塞控制还是默认的 CUBIC,高延迟长肥管道(Long Fat Network)下的吞吐表现会明显弱于 BBRv3。BBRv3 通过建模带宽与 RTT 主动探测,在 5% 丢包场景下吞吐通常能保持 CUBIC 的 3 倍以上。
TLS Reality:不依赖自有域名和证书,借用真实大站的 SNI 完成握手,TLS 指纹与目标站点一致。对抗主动探测的效果显著优于普通 TLS 与早期 VMess。
双 ISP 入口:同时接入两家运营商(如 CN2 GIA + 联通 AS9929),按客户端运营商智能分流。电信用户走 CN2,联通用户走 9929,移动用户走 CMI,各自走各自的最优路径。
这些能力决定了你的「基线质量」。订阅转换器不改变基线——它只是把配置包装得更好看。所以先选链路,再谈转换。
下表对比三种订阅获取方式在 10 个维度上的真实差异。评分基于 AirPick 实验室 2026 Q1 的实测与安全审计。
| 指标 | 公共免费转换 API | 公共付费转换 | 自建 Subconverter | 原生 Clash 订阅 |
|---|---|---|---|---|
| 订阅 URL 暴露面 | 完全暴露给运营方 | 完全暴露给运营方 | 仅自己 | 仅自己与机场 |
| 节点信息泄露风险 | 高(可完整记录) | 高 | 无 | 无 |
| 配置篡改可能性 | 存在(无法验证) | 存在 | 仅自己 | 无 |
| 规则自定义能力 | 受限于站点模板 | 中等 | 完全可控 | 依赖机场预设 |
| 转换耗时(首次) | 800 - 3000 ms | 500 - 1500 ms | 30 - 120 ms(本地) | 0 |
| 服务可用性 | 常见限流/宕机 | 较好 | 取决于自己 | 由机场 SLA 决定 |
| 维护成本 | 0 | 低 | 一次性 30 分钟 | 0 |
| 隐私等级 | 低 | 低 | 高 | 最高 |
| 被投毒风险 | 中高 | 中 | 无 | 无 |
| 成本 | 免费 | 5 - 30 元/月 | VPS 约 10 元/月 | 0 |
结论很直白:只有自建和原生订阅是安全区,公共 API 无论免费还是付费都在风险区。
场景 A:纯小白,只想点一下就能用。 优先选原生提供 Clash 订阅的机场。这不是妥协,这是最优解。光速云、以及 /airport/ 评测页中标注「原生 Clash 输出」的服务,都不需要转换环节。
场景 B:多设备用户,需要统一规则。 自建 Subconverter 收益最大。一次部署,家里软路由、手机、笔记本、公司电脑全部指向同一个内网转换地址,规则模板统一维护。
场景 C:需要精细分流(AI 域名直连/分流、流媒体专用组)。 必须自建。公共模板无法满足个性化需求,而且改不了模板就意味着改不了行为。
场景 D:临时救急。 如果实在要用公共转换,务必使用订阅链接的「一次性/临时 token」功能,用完立刻在机场后台重置订阅地址。这是把风险窗口压缩到最小的唯一办法。
在「订阅」页面手动添加时,不要填转换后的 URL,直接填机场原始订阅地址。如果需要本地转换,新版 Verge Rev 内置了本地转换能力(基于内置的 subconverter 或 clash-meta 的 providers 机制),优先用它。
关键配置项:在「设置 → 订阅」中关闭「自动更新使用远程转换」,改为本地处理。
OpenClash 的「订阅转换」页面里有一个「使用第三方转换服务」的开关。默认它是开的,务必关掉。
如果你确实需要转换,OpenClash 支持「本地转换」模式,前提是设备有足够内存(建议 256MB 以上可用)。
# 检查软路由可用内存,低于 128MB 就不要本地转换
free -m | awk 'NR==2{print "可用内存: "$7" MB"}'安卓端推荐在「配置 → 新建配置 → 从 URL 导入」直接填机场原始地址。如果机场只给 Base64,用 clashmeta 内核自带的解析即可,不需要外部 API。实测 Mihomo 内核原生支持 Base64 通用订阅的自动识别。
iOS 平台注意:Shadowrocket 的「订阅转换」选项同样是走第三方 API 的,默认填的是某个公共地址。把它删掉,留空。
# 错误示范(真实存在的公共转换站)
https://sub.xn--xxx.com/sub?target=clash&url=
# 正确做法
留空,直接在「订阅」中填机场原始地址mkdir -p /opt/subconverter && cd /opt/subconverter
docker run -d \
--name subconverter \
--restart=always \
-p 127.0.0.1:25500:25500 \
-v /opt/subconverter:/base \
tindy2013/subconverter:latest注意 -p 127.0.0.1:25500:25500 这一行。绑到 127.0.0.1 而不是 0.0.0.0,意味着这个端口不对外网开放,只有本机能访问。这是最关键的一步安全加固。
如果你需要从外部设备(比如手机在外面)访问,不要直接暴露 25500。用 Nginx 加 Basic Auth + TLS:
server {
listen 443 ssl http2;
server_name sub.yourdomain.com;
ssl_certificate /etc/letsencrypt/live/sub.yourdomain.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/sub.yourdomain.com/privkey.pem;
auth_basic "Subconverter";
auth_basic_user_file /etc/nginx/.htpasswd;
location / {
proxy_pass http://127.0.0.1:25500;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}生成密码:htpasswd -c /etc/nginx/.htpasswd yourname
然后在客户端填 https://yourname:[email protected]/sub?target=clash&url=<原始订阅的urlencode>
不给公网任何入口,所有设备加入同一虚拟内网,通过内网 IP 访问。代价是每台设备需要装客户端,收益是攻击面为零。
pref.ini 中的 api_access_token 为空时的公开访问max_connections 限制,防止被当成公共 API 刷docker logs 检查是否有异常调用当你怀疑「配置被篡改」或「链路异常」时,按下面的顺序排查。
# 拉取原始订阅,看是否被改动过(对比节点数量与名称)
curl -sL "你的机场订阅地址" -o /tmp/raw_sub.txt
wc -l /tmp/raw_sub.txt
head -c 200 /tmp/raw_sub.txt | base64 -d 2>/dev/null | head -20# 拉取转换后的配置
curl -sL "你的转换地址" -o /tmp/converted.yaml
# 提取所有节点服务器地址,肉眼核对有无陌生 IP
grep -E "^\s+server:" /tmp/converted.yaml | sort -u判定规则:如果出现你从未见过的 IP 段,或者某个节点的 server 与你记忆中不符,立即停用该转换器并重置订阅。
# macOS / Linux:MTR 跑 100 包,看丢包集中在哪里
mtr -rwzbc 100 你的节点IP
# macOS DNS 配置检查(确认没被劫持)
scutil --dns | grep nameserver | sort -u
# 端口连通性
nc -vz 你的节点IP 443
# TCP 层延迟(比 ICMP 更接近真实体验)
tcping -c 20 你的节点IP 443# 查看目标节点的真实证书与 SNI 是否匹配
openssl s_client -connect 你的节点IP:443 -servername 你的SNI -brief
# macOS 抓 20 个包看实际连接去向
sudo tcpdump -i en0 -n port 443 -c 20| 症状 | 关键命令 | 判定结论 |
|---|---|---|
| 节点名对但延迟异常低(如 5ms) | mtr -rwzbc 100 IP | 可能被替换为境内中转,流量可被审计 |
| 证书 CN 与 SNI 不符 | openssl s_client | 中间人劫持嫌疑,立即停用 |
| DNS 出现陌生 nameserver | scutil --dns | 本地 DNS 被篡改,检查客户端 DNS 配置 |
| 抓包出现非预期目标 IP | tcpdump -n port 443 | 配置中混入未知节点,核对 YAML |
| 首包 RTT 高但吞吐正常 | tcping | 通常是入口 BGP 绕路,非安全问题 |
| 宣传话术 | 真实含义 | 识别方法 | 风险等级 |
|---|---|---|---|
| 「永久免费转换」 | 你的数据就是它的收入 | 无隐私政策、无可查运营主体 | 高 |
| 「不限速不限量」 | 无 QoS 保障,晚高峰共享带宽 | 22:00 后实测,MTR 看丢包 | 中 |
| 「解锁 Netflix 全区」 | 多数只是 DNS 解锁,非原生 | 看是否显示「自制剧」而非全库 | 中 |
| 「IEPL 专线」 | 只有部分节点是专线 | 逐节点 MTR,看是否走公网 AS | 中 |
| 「x1 无倍率」 | 可能用低质节点充数 | 对比各节点实测带宽差异 | 低 |
| 「支持 8K 秒开」 | 单线程 30Mbps 即可,无意义 | 用 curl -o /dev/null 实测 | 低 |
| 「一键导入不泄露」 | 导入过程往往就是上传过程 | 抓包看是否发出第三方请求 | 高 |
一个通用反诈原则:任何要求你「先粘贴订阅链接到我们网站」的服务,都在做数据收集。区别只是合法与非法的边界。
Q1:我用的是机场官方推荐的转换器,也不安全吗? 安全性取决于该转换器是谁运营的。如果机场自己运营(同一域名体系、同一主体),风险相对可控。但很多机场是「推荐」某个第三方转换站,这种就是纯粹的转嫁。判断方法:看转换站域名是否与机场主域名同注册人。
Q2:自建转换器后,机场还能看到我的订阅吗? 能。机场是你订阅的提供方,必然知道你是谁。自建转换器解决的是「第三方」问题,不是「机场」问题。这是两件事。
Q3:本地转和自建服务端转,哪个更好? 本地更好。Mihomo 内核和 Clash Verge Rev 都支持本地转换,数据不出设备。只有当你有大量设备需要统一规则时,才值得上服务端。
Q4:订阅链接已经泄露了怎么办? 立刻登录机场后台重置订阅地址(大多数机场都有「重置订阅」按钮)。重置后旧链接立即失效。同时在客户端更新。
Q5:怎么判断一个公共转换器是否可信? 看三点:有没有明确隐私政策、域名注册时间是否超过 2 年、是否开源(如 GitHub 上可查的 sub-web 部署)。三条都不满足的,不要用。
Q6:Base64 通用订阅一定要转换吗? 不一定。Mihomo 内核原生支持 Base64 通用订阅解析,Clash Verge Rev 和 ClashMetaForAndroid 都能直接导入。先试直连,不行再考虑转换。
Q7:转换后规则组丢失了怎么办? 这是模板问题,不是安全问题。在自建 Subconverter 时通过 config/config.ini 指定自定义规则文件即可。公共 API 通常不给你改模板的权限。
Q8:用 Tor 或代理访问转换站,能隐藏订阅链接吗? 能隐藏 IP,但不能隐藏订阅 URL 本身。URL 是转换站工作的必要输入,它必须看到。
写在最后。 订阅转换这件事,本质上是一个「便利性 vs 控制权」的权衡。公共 API 用 30 秒换走了你对链路的完全控制权;自建转换器用 30 分钟换回了这份控制权,且此后零边际成本。
在这个链条上,真正值得投入精力的不是转换器,而是链路本身。一条稳定、原生、无需转换的 IEPL/专线订阅,能让你直接跳过本文 90% 的讨论。这也是我们把光速云列为 2026 年综合第一主推的原因——原生 Clash YAML 输出,全节点 x1 无倍率,从源头上消灭了中间人环节。