VMess 协议
VMess 是带用户认证的代理协议,用户标识通常以 UUID 表示。客户端与服务端还需要匹配传输方式及相关安全参数,仅填入地址和端口并不足以建立连接。认证依赖时间条件,排查连接失败时也应检查设备系统时间,而不是只更换节点。
V2Ray / 术语参考
先分清配置层次,再查字段含义。协议决定连接双方如何交互;内核执行配置;图形客户端负责组织节点、订阅与操作入口。
本页收录 30 个常用术语。每张卡片都可通过地址栏中的锚点单独引用。具体字段是否可用,应以客户端当前使用的内核及其版本为准。
01 / Protocol & transport
协议、传输方式与传输安全是三个层次。节点名称只写协议名,通常不足以还原完整连接参数。
VMess 是带用户认证的代理协议,用户标识通常以 UUID 表示。客户端与服务端还需要匹配传输方式及相关安全参数,仅填入地址和端口并不足以建立连接。认证依赖时间条件,排查连接失败时也应检查设备系统时间,而不是只更换节点。
VLESS 是轻量的代理协议,本身不提供与 VMess 相同的载荷加密机制,实际部署通常结合 TLS 或 REALITY。用户标识、传输方式以及可选的 flow 参数需要按服务端要求填写。支持 VLESS 不等于支持所有相关组合,还需确认内核具有对应能力。
Trojan 通常在 TLS 连接上承载代理流量,并使用密码进行认证。密码与 TLS 服务器名称是不同字段,不能相互替代;连接地址也可能与证书使用的域名不同。遇到证书错误,应先核对服务器名称、时间与证书链,不宜直接跳过证书验证。
REALITY 是 Xray 生态中的传输安全机制,不是与 VLESS 并列的一套独立代理协议。配置通常涉及服务端公钥、服务器名称、短标识及客户端指纹等参数。它不采用普通 TLS 服务端相同的证书部署方式,不能把 TLS 节点仅改一个安全选项就视为完成转换。
传输方式决定代理数据怎样经过底层连接,例如 TCP、WebSocket 或 gRPC。路径、服务名称和请求头等参数属于具体传输的设置,不是所有协议都使用这些字段。填写节点时应逐层核对协议、传输和安全选项,路径不匹配也可能造成握手失败。
02 / Core & ecosystem
客户端窗口负责操作,内核负责处理连接。查兼容性时,需要同时确认这两个层面的实现。
Project V 是理解 V2Ray 及其相关网络工具时常见的生态名称,不是一个节点协议,也不是某个图形窗口的名称。讨论生态时应区分代理内核、客户端和配置格式。名称相近的工具可能采用不同内核,功能边界仍需分别确认。
V2Fly 是延续 V2Ray 项目发展的社区项目,其内核负责配置解析、入站接收与出站连接等工作。Android 客户端 v2flyNG 属于使用该内核的选择。V2Fly 与 Xray 的功能会各自演进,切换内核前应检查现有节点和配置字段是否兼容。
Xray 是由 V2Ray 衍生的代理内核项目,REALITY 等能力需要相应实现支持。v2rayNG 使用 Xray,桌面客户端 v2rayN 的实际内核选择则应在当前界面和日志中确认。更新客户端与更新内核不是完全相同的操作,排查字段报错时应记录实际内核版本。
图形客户端提供节点列表、订阅更新、模式切换和日志查看等操作入口,通常会生成配置并调用内核。v2rayN 面向桌面平台,v2rayNG 与 v2flyNG 面向 Android。界面中的显示名称和分组是管理信息,不一定会以同名字段进入内核配置文件。
03 / JSON structure
连接从入站进入,经规则选择出站。标记负责关联配置对象,策略负责约束部分连接行为。
config.json 是常见的内核配置文件名,通常包含 log、inbounds、outbounds、routing 与 dns 等部分。JSON 对逗号、引号和数据类型有严格要求,说明文档中的局部片段不一定能独立启动。客户端生成的运行配置也可能被再次生成覆盖,修改前应确认自定义配置入口。
入站数组定义内核怎样接收连接,常见本地入口使用 SOCKS 或 HTTP 协议。监听地址与端口共同决定应用应连接的位置;把地址从回环地址改为所有接口,会扩大可访问范围。端口发生变化后,应用代理设置也要同步调整,并确认该端口未被其他进程占用。
出站数组定义连接离开内核的方式,可以是远端代理,也可以是直连或阻断。路由规则通常通过出站标记引用目标,而不是通过客户端里看到的节点显示名称。没有规则匹配时还会涉及默认出站行为,因此不能只检查某条规则而忽略整个出站列表。
tag 是配置对象的引用名称,例如把直连出站命名为 direct,再由规则的 outboundTag 指向它。规则中的 inboundTag 则可用于限制匹配哪些入站来源。标记不是协议关键字,名称可按配置设计确定,但引用必须一致,出站标记也应避免重名造成歧义。
policy 用于配置部分内核行为,例如握手或空闲连接超时,以及特定统计选项。它与 routing 不同:策略不负责按域名选择代理或直连出站。各内核对字段、用户等级和统计条件的支持存在差异,应查阅对应文档,而不是把其他工具的策略配置直接复制进来。
04 / Routing & DNS
先确定规则能看到域名还是 IP,再确定解析发生在哪里。规则命中与 DNS 查询路径需要分别检查。
分流是按照域名、IP、端口或入站标记等条件,把连接交给不同出站的过程。规则通常按顺序检查,先命中的规则会影响后续选择;同一条规则中的不同条件类型通常需要同时满足。调整规则后,应结合日志确认实际目标和命中结果,而不是只看界面模式名称。
GeoIP 通过数据文件中的 IP 集合匹配目标地址,geoip:private 常用于私有地址范围。地址分类是数据来源的判断,不等于物理位置的精确证明。若目标最初只有域名,是否进行解析以及怎样参与 IP 规则匹配,还取决于路由解析策略。
GeoSite 使用命名域名集合帮助组织规则,集合内容由所用数据文件决定。标签名称相同,也需要留意数据来源和更新时间;集合未必覆盖某项服务的所有域名。规则引用不存在的集合可能导致配置加载失败,应把规则与数据文件作为一组检查。
DNS 将域名解析为 IP 地址等记录,解析可以由应用、操作系统、代理内核或远端组件执行。配置内核的 dns 段,不代表所有应用查询都会自动进入该模块。排查时应分别检查查询入口、上游解析器、查询连接的出站,以及最终地址怎样参与路由。
FakeDNS 向应用返回用于映射的虚拟地址,后续连接进入对应处理流程时,再由内部映射关联原始域名。这些地址不是真实服务器地址,不能交给不认识映射的网络路径直接使用。解析入口、虚拟地址范围与流量接管方式必须配合,单独增加字段并不能完成整套接管。
DNS 泄漏指查询绕过预期解析路径,发送给了其他解析器,不是所有本地解析都应被这样命名。浏览器自带的加密解析、系统缓存和应用独立 DNS 都可能改变查询路径。检查应以既定解析策略为基准,仅看到代理出口地址符合预期,不能证明 DNS 路径也符合预期。
05 / Subscription & node
订阅负责获取参数,节点保存连接参数,测试反映特定条件下的结果。三者不能互相替代。
订阅链接是客户端获取一组节点配置的远程地址,其返回格式必须被客户端识别。链接可能包含个人访问凭据,不应放进公开截图或日志。更新失败需要区分地址失效、请求失败与格式解析失败;客户端安装完成后,也不会因此自动获得可用订阅。
节点是客户端保存的一组远端连接参数,通常包括地址、端口、协议、认证和传输安全设置。显示名称只是管理标签,不能据此确认真实部署地区或线路质量。选中节点只确定了候选出站参数,应用流量是否经过它,还取决于代理入口和路由规则。
订阅分组用于管理来源和节点列表,方便分别更新、筛选与维护参数。分组名称通常不会直接参与内核路由匹配,也不等于规则集。更新订阅可能替换来源中的节点记录,手工修改的参数是否保留要看客户端行为,重要调整宜在独立配置中管理。
TCPing 一般通过 TCP 连接建立过程估计目标端口的可达性和耗时,具体测试实现以客户端为准。它通常不完成代理认证,也不能证明 TLS、传输路径和远端转发都正常。TCPing 成功而代理请求失败并不矛盾,应继续查看完整连接测试和内核日志。
真连接延迟通过选定节点发起实际代理请求,通常比单纯端口测试覆盖更多连接环节。结果受测试地址、DNS、握手、服务器响应和当时网络状况影响,不同客户端的测量方式也可能不同。延迟不是吞吐量;比较节点时应使用相同测试条件,再结合实际应用请求判断。
06 / Client functions
先让流量进入代理处理流程,再讨论出站选择。切换界面开关后,应检查实际生效范围。
系统代理是操作系统提供给应用读取的一组代理设置,只有遵守这些设置的程序才会使用指定入口。写入系统设置本身不等于内核已启动,端口也必须与本地监听一致。某个程序仍直连时,应先确认它是否支持系统代理,以及是否有独立代理设置。
TUN 通过虚拟网络接口接收 IP 流量,再由客户端选用的实现处理连接,可覆盖部分不读取系统代理的应用。实际范围受系统路由、排除规则、权限和组件能力影响,并不意味着所有连接必然经过远端代理。它属于客户端与配套网络组件的协作功能,不应伪造为通用 V2Ray 顶层字段。
PAC 使用脚本为请求选择代理地址或直连,前提是应用支持并使用该脚本。它的判断发生在应用选择连接路径的阶段,与流量进入内核后的路由匹配不是同一层。PAC 返回直连的请求不会经过该代理入口,后续内核规则也就无法再接管这部分请求。
嗅探尝试从连接的初始数据识别域名或协议信息,为路由判断等功能提供额外依据。它能看到的信息受协议、加密方式和内核实现限制,并不是读取全部加密内容。是否用识别到的域名覆盖目标地址,与是否仅将域名用于路由,需要根据具体选项区分。
日志等级控制内核输出信息的详细程度,warning 通常用于查看警告与错误,临时排查时可按需提高详细程度。客户端操作日志与内核运行日志可能分开显示,应确认报错来源。日志可能包含连接目标、配置路径或订阅信息,对外分享前需要删除敏感内容。