搜索 K
深色模式
深色模式
直接答案:Clash 的“订阅”本质上是一个遵循标准 HTTP 传输协议与 YAML 数据序列化规范的远程配置接口。主流机场下发的订阅主要分为两种形态:包含完整端口、DNS、策略组与分流规则的**“整站配置订阅(Full Profile)”,以及仅包含
proxies:节点列表供外部解耦引用的“节点集订阅(Provider Payload)”**。此外,客户端通过解析 HTTP 响应标头中的Subscription-Userinfo字段,可实时读取用户的已用流量、剩余总额与到期时间戳。
在客户端拉取订阅时,返回的 YAML 结构直接决定了它的加载模式与生命周期:
| 评估维度 | 整站配置订阅 (Full Profile) | 节点集订阅 (Proxy Provider 格式) |
|---|---|---|
| 顶级数据结构 | 包含 port, dns, proxies, proxy-groups, rules | 仅包含顶级键 proxies: [...] 数组 |
| 客户端导入方式 | 作为独立的“配置配置(Profile)”直接激活 | 在主配置中的 proxy-providers 字典内被 use 引用 |
| 自定义规则兼容性 | 差 (每次更新订阅会直接覆盖掉用户自己手写的分流规则) | 极佳 (更新节点完全不干扰用户自定义的分流规则与策略组) |
| 响应体积 | 较大 (50KB ~ 300KB,包含数千行规则) | 极小 (10KB ~ 50KB,仅纯节点元数据) |
| 推荐适用人群 | 新手小白、开箱即用用户 | 进阶玩家、多机场聚合、高可用路由架构 |
Subscription-Userinfo 深度解析 当 Clash 客户端向订阅 URL 发起 GET 请求时,合规的服务端会在 HTTP Response Header 中返回关键的用户配额元数据:
HTTP/1.1 200 OK
Content-Type: application/yaml; charset=utf-8
Content-Disposition: attachment; filename="clash_config.yaml"
Subscription-Userinfo: upload=1288490188; download=34359738368; total=214748364800; expire=1780444800
profile-update-interval: 24标头中的数值全部以**字节(Bytes)**为最小基本单位:
upload:当前计费周期内已产生的上传流量(Bytes)。 1,288,490,188 B / (1024^3) ≈ 1.20 GBdownload:当前计费周期内已产生的下载流量(Bytes)。 34,359,738,368 B / (1024^3) ≈ 32.00 GBtotal:该订阅计划的总流量配额(Bytes)。 214,748,364,800 B / (1024^3) = 200.00 GBexpire:套餐到期日的 Unix 秒级时间戳(Timestamp)。 例如 1780444800 对应北京时间 2026-06-03 00:00:00。客户端正是通过捕获该 Header,并在 UI 界面顶部动态渲染出“已用 33.2GB / 总计 200GB (剩余 83.4%),2026-06-03 到期”的进度条与指示卡片。
无论是哪种订阅形态,proxies: 数组内部的单个节点必须遵循严格的数据结构规范。以下展示主流协议的标准字段定义:
proxies:
- name: "🇭🇰 香港 IEPL 01 - Reality"
type: vless
server: hk01.example.com
port: 443
uuid: 8f24b22c-a6a9-4673-95cf-010488fbe6c1
udp: true
tls: true
servername: gateway.icloud.com
flow: xtls-rprx-vision
reality-opts:
public-key: b_3zD-j10P9_Kk12Lm45No67Pq89Rs01Tu23Vw45Xy6
short-id: 0123456789abcdef
client-fingerprint: chromeproxies:
- name: "🇯🇵 日本 BGP 01 - SS"
type: ss
server: jp01.example.com
port: 8388
cipher: 2022-blake3-aes-128-gcm
password: "SecretPassword123"
udp: trueproxies:
- name: "🇺🇸 美国 4K 01 - Hy2"
type: hysteria2
server: us01.example.com
port: 443
password: "MyHy2Password"
sni: mydomain.org
skip-cert-verify: false
up: "50 Mbps"
down: "500 Mbps"在拉取或刷新订阅时,若客户端日志报红,对照以下状态码可快速定界故障根因:
HTTP 401 Unauthorized HTTP 403 Forbidden User-Agent,触发了机场反爬虫 WAF 防护。ClashforWindows/0.20.39)。yaml: unmarshal errors (语法解析崩溃) A: 这是传统的 Base64 编码订阅(常见于早期 Shadowrocket 或 V2Ray 客户端)。Clash 无法直接解析未解密的 Base64 密文,必须通过服务端的 &flag=clash 参数请求原生 YAML,或者借助订阅转换工具将其反序列化为合规的 Clash YAML 配置。
A: 只要文件编码为标准的 UTF-8,包含 Emoji 旗帜(如 🇭🇰, 🇯🇵)在现代 Clash 内核中完全合法且能正常解析。但若文本保存时被错误编码为 GBK 或 ANSI,就会导致 Unicode 截断并引发 YAML 语法解析失败。