VMess 协议是什么?VMess 节点与 V2Ray 的关系
VMess 协议是 V2Ray 项目原生的加密传输协议,用 UUID 标识用户,无需先握手,但依赖两端系统时间接近。节点连不上时,先查时间和协议是否匹配。
VMess 资料卡核验于 2026-10-09
- 来历
- V2Ray(Project V)的原生加密通信协议;V2Fly 开发者文档称它是 V2Ray 的原始加密协议。实现与文档见 github.com/v2fly/v2ray-core 和 www.v2fly.org,Xray 文档(xtls.github.io)也收录该协议。官方页面未写明首次提出的个人与时间。
- 传输与加密
- 基于 TCP;协议头认证有 AEAD 与旧的 MD5 两种,MD5 已标注弃用;数据加密可选 aes-128-gcm、chacha20-poly1305,默认 auto。依赖系统时间,两端时间误差需很小。
- 官方文档写明支持的内核
- V2Fly v2ray-core、Xray-core、sing-box、Mihomo
站内收录的客户端里,文档写明支持 VMess 的
- mihomo
- v2rayN
- v2rayNG
- Xray-core
- sing-box
- Hiddify
- Karing
- NekoBox for Android
- Throne
- Shadowrocket
- Quantumult X
- Stash
- Surge
- Loon
- OpenClash
- PassWall
完整对照见协议 × 客户端支持矩阵。
V2Fly:VMess 协议详解(开发者文档)V2Fly:VMess 配置(中文)Xray 文档:VMesssing-box 文档:VMessMihomo 文档:VMessv2fly/v2ray-core 仓库
这张卡片的资料来源(7 条)
- VMess 是 V2Ray 的原始加密通信协议;头部认证有 AEAD 与 MD5 两种,MD5 已弃用;基于 TCP;VMess 是无状态协议,无需握手即可传输(www.v2fly.org)
- VMess 依赖系统时间,UTC 时间误差需在 90 秒内;客户端 AlterID 为 0 即启用 VMessAEAD;加密方式支持 auto/none/zero/aes-128-gcm/chacha20-poly1305(www.v2fly.org)
- VMess 是加密传输协议,通常作为 Xray 客户端和服务端的桥梁;时间需在 120 秒内;id 可为 UUID 或不足 30 字节的自定义字符串;auto 的选择规则(xtls.github.io)
- 协议与传输方式兼容表中 VMess 对各传输方式均为 Supported;脚注称 VMess/Shadowsocks 缺少 TLS 1.3 式前向保密且流量模式仍可被分类(xtls.github.io)
- v2fly/v2ray-core 仓库 README 将 Project V 描述为一组网络工具(raw.githubusercontent.com)
- sing-box 文档含 VMess 出站,支持 security、alter_id、transport 等字段(sing-box.sagernet.org)
- Mihomo 文档含 vmess 代理类型,network 支持 ws/http/h2/grpc/mkcp/mekya(wiki.metacubex.one)
节点列表里 vmess:// 开头的那一类,用的就是 VMess 协议,也就是 V2Ray 项目原生的加密传输协议。它出现得早,旧教程里常拿它举例,所以你很可能在订阅里遇到它。弄懂它有三件事要做:知道它和 V2Ray、Xray 是什么关系,知道它为什么对系统时间敏感,知道节点链接转成别的配置时要核对哪些字段。下面按官方文档逐项说明。
VMess 协议是什么:V2Ray 原生的加密传输协议
V2Fly 开发者文档把 VMess 称为 V2Ray 的原始加密通信协议。V2Ray 属于 Project V,代码仓库是 v2fly/v2ray-core,文档站是 V2Fly 文档;Xray 的文档里同样收录了 VMess。你如果想先理清 V2Ray、Xray 和各种客户端之间的关系,可以读 V2Ray 是什么,再看 Xray-core 档案。
放进日常使用的语境里,这几句话就够了:
- 协议分入站和出站两部分,通常作为 V2Ray 或 Xray 客户端与服务端之间的通道。
- 用户用 UUID 标识:客户端发起请求,服务端校验后转发。
- 官方页面没有写明 VMess 最初由谁在什么时候提出,这部分资料待核实,梯子岛不去补。
所以 vmess是什么这个问题,最短的回答是:一种 V2Ray 系的、自带加密的代理协议。它不是客户端,也不是订阅格式,客户端或内核读到 VMess 节点,才会按这套协议去连。
无状态、UUID 与系统时间:VMess 协议的三个设计特点
| 特点 | 文档怎么说 | 日常含义 |
|---|---|---|
| 无状态 | 客户端和服务端不必先握手即可传输数据,每次传输互不影响(V2Fly 开发者文档) | 协议本身没有单独的握手步骤,排查时重点放在时间和字段上 |
| UUID 标识用户 | 用户 ID 是 UUID;Xray 还允许写一段不超过 30 字节的自定义字符串,由它映射成 UUID | 节点里的 id 通常是一串 UUID,复制时别带上空格 |
| 依赖系统时间 | V2Fly 文档要求系统 UTC 时间与真实时间相差在 90 秒内,Xray 文档写的是 120 秒内 | 设备时间不准,节点没问题也连不上 |
| 传输层 | V2Fly 开发者文档按 TCP 描述;Xray 兼容表显示可以和多种传输方式组合 | 实际用哪种传输,以节点配置为准 |
两份文档给出的时间容差不一样,说明这个数字不宜当成固定值去背。可靠的做法是让设备的日期、时间和时区都处于自动同步状态,而不是靠手动调到“差不多”。
加密与认证:AEAD、MD5 弃用和 auto 的选择规则
VMess 的加密可以拆成两件事:协议头怎么认证,数据怎么加密。
| 项目 | 选项 | 说明 |
|---|---|---|
| 协议头认证 | AEAD、旧的 MD5 | MD5 方式已被标注弃用,文档要求改用 AEAD |
| AlterID | 客户端设为 0 | V2Fly 配置页写明 AlterID 为 0 即启用 VMessAEAD |
| 数据加密 | aes-128-gcm、chacha20-poly1305,默认 auto | V2Fly 配置页另列有 none、zero 两个取值 |
| auto 的规则 | 按运行平台选择 | Xray 文档:AMD64、ARM64、s390x 用 aes-128-gcm,其他平台用 chacha20-poly1305 |
旧教程里的 AlterID 填法往往和现在的文档不一致。拿到教程时,先对照当前的 V2Fly VMess 配置页 看一眼,再决定要不要照填。
还有一点要老实说:Xray 文档的脚注指出,VMess 与 Shadowsocks 都保护了载荷,但没有 TLS 1.3 那样的前向保密,流量模式仍可能被归类。这条是文档的说明,梯子岛没有测试数据,不对其程度下判断。
VMess 节点链接里有什么,vmess转clash 要核对哪几项
一个 VMess 节点,从协议和各内核的配置文档倒推,至少包含这些信息:服务器地址与端口、UUID、加密方式、AlterID,以及传输方式和它的子参数。sing-box 的 VMess 出站有 security、alter_id 和 transport 字段,Mihomo 的 vmess 代理类型则通过 network 选择 ws、http、h2、grpc 等传输。链接里每一段的含义,在 节点链接怎么读 里逐项解释;词典里的 节点链接 URI 解释了 vmess:// 这类写法为什么存在。
如果你搜索 vmess转clash,要做的其实是同一件事:把链接里的字段映射成 Mihomo 配置里的字段。转完之后建议对照下面的清单,一项项核对:
- UUID 是否完整,没有被截断或多出空格。
- AlterID 是否为 0,对照上一节的说明。
- 加密方式是否保留,没有被转换工具悄悄改成别的值。
- 传输方式(ws、grpc 等)和它的路径、主机名之类的子参数是否都还在。
- TLS 相关设置是否随链接一起带过来。
转换的完整做法放在 vmess 转 Clash 里。用在线转换站要小心订阅链接外泄,先读 订阅转换怎么做才安全,需要工具时可以去 节点转换工具。
哪些内核支持 VMess,传输方式怎么搭配
| 内核 | 文档里怎么提到 VMess | 要留意什么 |
|---|---|---|
| V2Fly v2ray-core | 有开发者协议页和中文配置页 | 英文版配置页显示“文档缺失”,查资料请看中文版 |
| Xray-core | 有 VMess 出站文档 | 时间容差写的是 120 秒;id 可写不足 30 字节的自定义字符串 |
| sing-box | 有 VMess 出站文档 | 支持 security、alter_id、transport 等字段 |
| Mihomo | 有 vmess 代理类型 | network 支持 ws、http、h2、grpc 等 |
Xray 的协议与传输方式兼容表显示,VMess 可以与 raw、xhttp、grpc、websocket、httpupgrade、mkcp 等传输方式组合。这些传输方式各自是什么,放在 传输方式有哪些 里统一讲,本文不重复。具体到某款客户端支不支持、界面里有没有对应选项,以 协议支持矩阵 和各客户端档案页为准。
VMess 与 VLESS:取舍看哪几点
VLESS 同样用 UUID 认证,但按 Xray 文档,它不依赖系统时间,协议本身默认不加密,要放在 TLS 或 REALITY 之上使用。两者在文档层面的差别可以这样对照:
| 对比项 | VMess | VLESS |
|---|---|---|
| 认证标识 | UUID | UUID |
| 对系统时间的依赖 | 依赖 | 不依赖(Xray 文档) |
| 自带数据加密 | 有,aes-128-gcm、chacha20-poly1305 等 | 默认没有,需要外层 TLS 或 REALITY |
| 在 V2Fly 内核里的状态 | 原生协议 | V2Fly 文档注明其中的 VLESS 已弃用且可能被移除 |
最后一行只针对 V2Fly 内核的实现,Xray、sing-box、Mihomo 的 VLESS 不受这句话约束。选哪个不能靠名气,而要看你的客户端和节点实际提供什么,详细对照见 VLESS 与 VMess 的区别,VLESS 本身的资料在 VLESS 协议。
VMess 节点连不上时,先按这个顺序自查
VMess 连不上时,值得先查的两个方向是时间和字段,这是从协议设计推出来的排查顺序,不是梯子岛的统计结论。可以按下面顺序:
- 把设备的日期、时间和时区设为自动同步,然后重新连接。
- 打开节点详情,确认协议类型是 VMess,UUID 完整。
- 确认 AlterID 与加密方式和当前文档、节点说明一致。
- 确认传输方式和它的子参数没有在导入或转换时丢失。
- 确认客户端所用内核在上一节的表里。
- 仍然不通,就读 梯子连不上怎么办,证书类报错看 证书错误与系统时间不对怎么办。
下一步该去哪
- 想对比协议设计:读 VLESS 与 VMess 的区别。
- 想把节点转成 Clash 配置:读 vmess 转 Clash。
- 想知道某款客户端能不能处理 VMess:查 协议支持矩阵。
- 想先找官方仓库和文档入口:回到 梯子导航 的分类里找。
VMess 不是“过时”或“必选”的二选一,它是一个仍在文档里、仍被多个内核支持的协议。选不选它,看你的客户端和节点。
这篇没有覆盖的
- 梯子岛没有测过这里提到的线路,使用感受请以你自己的网络为准。
- 官方页面没有写明 VMess 最初由谁在何时提出,这部分资料待核实,本文不下结论。
- 本文只讲客户端一侧的认识,不涉及服务端搭建,也不评价具体节点是否可靠。
本文引用的官方来源
- V2Fly:VMess 协议详解(开发者文档)(www.v2fly.org)
- V2Fly:VMess 配置(中文)(www.v2fly.org)
- Xray 文档:VMess(xtls.github.io)
- sing-box 文档:VMess(sing-box.sagernet.org)
- Mihomo 文档:VMess(wiki.metacubex.one)
以上链接均为官方页面,梯子岛在 2026-10-09 核对过;个别网站会拦截自动化访问,用浏览器直接打开即可。平台规则可能随时调整,以官方页面当前内容为准。
VMess 协议常见问题
VMess 是什么协议?
VMess 是 V2Ray 项目原生的加密传输协议,V2Fly 开发者文档称它是 V2Ray 的原始加密协议。它分入站和出站两部分,通常作为 V2Ray 或 Xray 客户端与服务端之间的通道,用 UUID 标识用户,不需要先握手就能传输数据。
VMess 为什么要求校准系统时间?
因为 VMess 的认证依赖时间。V2Fly 文档要求系统 UTC 时间与真实时间相差在 90 秒内,Xray 文档写的是 120 秒内。设备时间偏差过大时,节点本身没问题也会连不上,所以连不上时应先把时间调成自动同步。
VMess 和 V2Ray 是什么关系?
VMess 是 V2Ray 的原生协议,V2Ray 是 Project V 下的网络工具集合,实现和文档在 V2Fly 的仓库与站点。Xray 的文档也收录了 VMess,所以 V2Ray 系和 Xray 系的客户端通常都能处理这类节点,具体以客户端为准。
VMess 节点能转成 Clash 配置吗?
Mihomo 的文档里有 vmess 代理类型,支持 ws、http、h2、grpc 等传输,所以链接里的信息通常可以对应到配置里。转换时要核对 UUID、AlterID、加密方式和传输参数是否完整,转换结果也无法保证一次成功,需要导入后自己验证。
VMess 的 AlterID 要填多少?
按 V2Fly 配置页的说明,客户端把 AlterID 设为 0 即启用 VMessAEAD,旧的 MD5 认证方式已被标注弃用。如果你看到的教程要求填其他数值,请对照当前文档和节点提供方的说明再确认,不要直接照抄。
接着读
- 对比 · VLESS 与 VMess 的区别:该用哪个协议
- 教程 · vmess 转 Clash:节点链接转配置的方法与注意事项
- 指南 · V2Ray 是什么?V2Ray、Xray 与相关客户端的关系
- 教程 · V2Ray 教程:节点怎么添加、协议怎么对应
- 教程 · 节点链接怎么读?vmess://、vless://、trojan://、ss:// 的字段含义
- 术语 · 节点链接 URI是什么意思