VMess
VMess 是 Project V 生态中的代理协议,包含用户认证与数据传输机制,配置中常见用户标识与加密选项。它可以配合不同传输方式使用,因此仅知道协议名称,还不能还原完整连接参数。客户端与服务端需要采用兼容的协议实现及一致的认证信息,系统时间异常也可能影响认证过程。
REFERENCE / TERMINOLOGY
协议、内核、流量入口与 JSON 字段,按配置层级分别查阅。
同一个设置名称可能出现在不同内核或不同配置层级中。本页先解释概念与作用边界;实际取值应结合正在使用的内核及客户端界面核对。每张术语卡都有独立锚点,可复制地址用于定位。
PROTOCOL / TRANSPORT
代理协议决定通信约定,传输方式承载数据,安全层保护连接;三者不能互相替代。
VMess 是 Project V 生态中的代理协议,包含用户认证与数据传输机制,配置中常见用户标识与加密选项。它可以配合不同传输方式使用,因此仅知道协议名称,还不能还原完整连接参数。客户端与服务端需要采用兼容的协议实现及一致的认证信息,系统时间异常也可能影响认证过程。
VLESS 是轻量代理协议,本身不提供内容加密,通常与 TLS 或 REALITY 等安全层配合。节点中的用户标识、传输方式、安全参数以及可能存在的流控选项,需要作为一组核对。VLESS 与 VMess 不是修改一个协议名称就能互换的配置,服务端也必须支持相应组合。
Trojan 通常在 TLS 连接内承载代理流量,并通过密码完成认证。配置时除服务器地址与端口外,还要核对服务器名称和证书验证相关设置。地址可以用于建立连接,而服务器名称参与 TLS 握手,两者承担不同作用;证书报错不一定意味着密码填写错误。
REALITY 是 Xray 生态中的传输安全机制,不是与 VLESS 并列的一套独立代理协议。使用时需要核对服务端提供的公钥、短标识与服务器名称等参数,并确认客户端内核支持对应配置。它与普通 TLS 的参数结构存在区别,不能直接套用证书设置或凭协议名推断连接方式。
传输方式描述代理协议如何承载数据,常见名称包括原生 TCP、WebSocket 与 gRPC。WebSocket 可能涉及路径和请求主机名,gRPC 可能涉及服务名称,这些参数需要与服务端一致。传输选项并非越多越好,也不是更换传输就能兼容任意节点;具体支持范围取决于协议、内核与服务端部署。
KERNEL / ECOSYSTEM
客户端负责操作界面,内核负责执行连接。名称相近不代表功能集合完全一致。
Project V 指围绕模块化网络代理工具形成的项目与技术生态,V2Ray 是其中的核心组成。日常讨论中的“V2Ray”有时泛指相关工具,有时特指内核,因此阅读教程时需要辨认上下文。遇到协议支持或字段兼容问题,应落实到具体内核,而不是只根据生态名称判断。
V2Fly 是延续 V2Ray 开发的社区项目,其内核负责代理协议处理、路由匹配与 DNS 等功能。v2flyNG 是面向 Android 的图形客户端选择之一,客户端名称与内核名称处于不同层级。引用配置示例时应注意配置格式与内核代际,不能假设所有历史字段都适用于当前环境。
Xray 是从 V2Ray 技术体系发展而来的内核项目,具有自身的协议、安全层与配置演进。v2rayNG 使用 Xray 内核,桌面客户端中的具体内核选择则需要查看实际设置。即使两个内核接受相似的 JSON 结构,个别字段、默认值与支持组合也可能不同,迁移时应分段核对。
v2rayN、v2rayNG 和 v2flyNG 提供图形操作入口,用于管理订阅、连接参数及运行设置;内核读取配置后执行实际通信。客户端通常会根据界面选项生成运行配置,因此直接修改生成文件可能在下次启动时被覆盖。排错时应同时记录客户端设置与内核日志,区分界面保存失败和内核执行失败。
CLIENT / SUBSCRIPTION
订阅提供连接参数,代理入口决定应用流量如何进入内核,延迟测试只反映特定测试条件。
订阅是批量获取连接配置的内容或地址,客户端更新订阅后会重新读取其中的节点信息。它与单个节点分享链接不同,也不等同于一份可以直接交给任意内核运行的完整 JSON。订阅地址可能包含访问标识,应避免公开展示;更新后还应检查当前选中项是否仍然存在。
节点是客户端中一组远端连接参数的常用称呼,通常包含地址、端口、协议、认证信息与传输安全设置。显示名称只是便于识别的备注,不足以证明实际出口位置或网络质量。同一服务器也可以提供多组不同参数,判断是否为相同连接时,应核对配置内容而不是只看名称。
系统代理向操作系统登记本地代理地址,主要影响会读取这项设置的应用。它不等于“所有流量经过代理”,也不等于内核中的全局路由,因为部分应用使用独立网络设置。更改本地监听端口后,应确认系统代理同步更新;退出客户端后仍保留失效地址,可能导致相关应用无法连接。
TUN 模式通过虚拟网络接口接收 IP 流量,常用于接入不遵循系统代理设置的应用。它的覆盖范围仍取决于路由、权限、DNS 设置与客户端实现,不表示全部流量一定走远端代理。启用前应检查其他虚拟网卡或网络工具是否同时接管路由,出现异常时可先停用 TUN 以缩小排查范围。
TCP 延迟通常衡量到服务器端口建立 TCP 连接的耗时,不能单独证明代理认证成功。真连接延迟通常通过所选代理访问测试地址,会受到握手、解析、目标站点与测试实现影响。两类结果不宜直接混排比较;选择节点时还应结合实际应用表现、稳定性和流量计费条件判断。
ROUTING / DNS
解析给出地址,规则决定出口。检查分流结果时,需要把域名、IP 与实际请求路径放在一起看。
路由规则根据域名、IP、端口、入站标签等条件选择出站,分流就是按这些条件将流量送往不同出口。常见规则按顺序匹配,先命中的规则决定去向,因此宽泛规则放在前面可能遮住后面的细分规则。系统代理只决定部分流量是否进入内核,进入之后仍须由路由配置判断走向。
GeoIP 在此类配置中通常指供路由匹配使用的 IP 地址分类数据,可通过类似 geoip:private 的表达式引用相应集合。数据分类不是实时定位结果,也不负责将域名转换为 IP。只有规则实际取得目标 IP 并进入对应匹配过程时,相关集合才可能生效,数据更新也会影响覆盖范围。
GeoSite 是按类别组织的域名规则集合,便于一次引用一组相关域名,而不必逐条维护。类别名称不能代替条目检查,同一服务使用的登录、媒体或静态资源域名也可能分布在不同集合中。出现分流遗漏时,应先查看实际请求域名,再核对数据是否包含它及规则是否被更早的条目覆盖。
FakeDNS 为域名分配合成 IP 并保存映射,便于流量进入内核后恢复域名信息。它需要 DNS 接管、流量入口与映射恢复配合使用,不是单独切换一个解析服务器就能完成的功能。若应用缓存了旧映射,或流量没有经过对应处理路径,可能出现连接失败,排查时应同时考虑缓存和接管范围。
DNS 泄漏通常指查询离开了预期解析路径,例如希望由指定解析器处理,却仍由系统或浏览器的另一套解析机制发出。判断时应先明确预期路径,再检查浏览器加密 DNS、系统解析器和内核 DNS 的分工。检测页面显示某个解析器名称,只是线索,不能单凭这一项断定全部流量的出口。
JSON / CONFIGURATION
字段名需要连同所在对象一起理解。复制片段前,先确认它属于入站、出站还是顶层配置。
inbounds 是定义流量入口的数组,每一项可以设置监听地址、端口、协议与标签。它描述内核如何接收应用请求,不是远端服务器清单。本地使用时应注意监听地址的范围:监听回环地址与监听所有网卡有不同的可访问边界,不应为解决连接问题而随意扩大暴露范围。
outbounds 是定义流量出口的数组,可以包含远端代理、直连或阻断等处理方式。路由规则通过出站标签引用对应项,因此标签拼写必须一致。在常见配置中,未匹配规则的流量会使用第一个出站;调整数组顺序可能改变默认走向,应结合具体内核行为确认。
sniffing 通常位于入站对象中,用于从支持的协议握手或请求信息提取域名线索,辅助路由或目标处理。它不是通用解密功能,也不能保证恢复每条连接的域名。启用后的具体影响还取决于目标覆盖与仅用于路由等选项,不能把“开启嗅探”直接等同于“所有域名规则都能命中”。
domainStrategy 的含义需要结合所在对象理解;在 routing 中,它控制路由匹配时是否尝试将域名解析为 IP。常见值包括 AsIs、IPIfNonMatch 与 IPOnDemand,但它们不是系统 DNS 的总开关。其他对象中的同名字段可能使用不同取值,不能跨层级直接照抄。
allowInsecure 出现在部分 TLS 配置中,设为 true 会放宽证书验证,不能修复根本的信任链或服务器名称问题。遇到证书错误时,应先核对系统时间、证书链和配置中的服务器名称。保持验证开启是常规配置方向,不应把关闭验证当作通用连接优化步骤。
policy 是策略配置对象,可用于连接超时、用户等级策略和部分统计开关。它与 routing 分工不同,不负责根据域名或 IP 选择出口。调整握手超时或空闲连接参数前,应先判断失败发生在哪个阶段;单纯延长超时通常不能解决认证错误、端口不通或规则引用错误。