先从协议角色和连接字段确定对象
VMess 是 V2Ray 原创的加密通信协议,开发说明写它基于 TCP。Xray 出站字段列有 address、port、id 与 security 等项目,连接位置和认证对象要分开。
| 读取项目 | 公开定义中的作用 |
|---|---|
| address | 服务器位置 |
| port | 连接端口 |
| id | 用户认证标识 |
| security | 数据加密方式 |
| alterId或alter_id | 相关实现里的旧协议条件 |
- 保留主机和端口,不用显示名称替目标。
- 核对实际用户ID,不把标签或其他字段当认证内容。
- 查所用核心对加密与头部认证的说明,再看时间条件。
用户 ID 等价于 UUID,开发说明以随机标识描述它。Xray 还允许较短字符串映射为等价 UUID,这属于该实现能力,不能填成所有客户端共同的输入规则。
头部认证和数据加密使用不同字段
开发说明区分 AEAD 与 MD5 头部认证,并说明 MD5 认证已弃用。数据加密的 security 清单是另一组条件,不能从一个加密方法名推定头部认证已满足。
v2fly 说明 v4.28.1 后 alterId 为 0 代表启用 VMessAEAD。sing-box 的 alter_id 为 0 使用 AEAD,为 1 使用旧协议,大于 1 也按旧协议处理。
mihomo 说明 alterId 非 0 时启用旧协议,Xray 的出站字段表则已无 alterId。三处记录各按对象保留,不把某一核心的旧字段补到另一核心中。
头部认证、数据加密与连接目标分别核对,不能只留下一个security值。
系统时间要求保留两边的不同数字
v2fly 文档写 UTC 时间误差在 90 秒内,Xray 文档写 120 秒内。它们对应不同实现的文档,不能挑一个数字作为所有 VMess 客户端的统一容差。
记录时写明正在用哪个核心,再保存对应要求。配置导入失败和连接失败也不同,时间条件不能从这里扩写成每种失败都由时钟引起。
- 当前软件与核心分别记,别只写VMess名称。
- 数值带着实现来源,不合并为单一通用要求。
- 实际报错原样保存,不由字段存在先定问题原因。
分享格式没有完整说明时停在已知字段
Xray 与 v2fly 的已读页面没有给 vmess 分享的完整格式,相关规范没查到公开说明。已有分享提案存在,但页面关闭不能直接推定正式采纳。
因此手里的分享内容按来源与当前客户端说明核对,不补常见解码后的字段清单。协议开发字段能帮助辨认认证和加密,却不等于已经提供所有客户端的导入语法。
其他服务的配置条件可另查
若需要更换订阅来源,下方可继续查看其他机场的收录资料。
常见问题解答
alterId与security能用同一项概括吗?
两项用途不同,alterId 涉及相关实现的头部认证条件,security 是数据加密方式。按所用核心的字段说明核对,不能用一个值替代两组要求。
VMess时间容差应该统一记成多少?
保留来源差别,v2fly 写 UTC 误差 90 秒内,Xray 写 120 秒内。当前使用哪个核心就对应哪份要求,不把它们合并成统一数字。
分享前缀有了就能补出通用字段列表吗?
这份公开记录没有给出完整分享格式,不能凭常见写法补成官方规范。保留来源和当前客户端提示,协议字段与分享语法分别核对。
