01 / SELECTION MODEL
先分清协议、传输、安全层与内核
客户端里的“协议类型”只是第一层选择
图形客户端通常把 VMess、VLESS、Trojan、Shadowsocks 显示为节点类型,但一次连接并不只由这一项决定。完整链路至少可以拆成四层:应用协议负责认证与请求表达,传输方式决定数据如何装入 TCP、WebSocket、gRPC 等通道,安全层负责加密与对端身份确认,内核负责解析配置并实际建立连接。REALITY 更接近安全与握手能力,而不是与 VLESS 完全并列的应用协议。把这些概念混成一个名称,容易出现“协议选对了仍无法连接”的判断偏差。
以常见的 VLESS 组合为例,节点可能同时包含 VLESS、TCP、REALITY、XTLS Vision、服务器名称和公钥等字段。VLESS 只说明认证与请求格式,TCP 表示底层传输,REALITY 处理握手与身份验证,Vision 则影响数据流处理方式。客户端导入分享链接后,会把这些部分写入同一个出站配置。任何关键字段缺失、拼写变化或落在当前内核不认识的位置,都可能让最终行为与节点名称看起来不一致。
选型应从服务端既有配置开始
协议不能只按客户端偏好单方面切换。客户端节点必须与服务端在协议、端口、认证信息、传输方式和安全参数上对应。订阅提供的是既有配置时,正确做法是确认客户端能否完整识别,而不是把 VLESS 手动改成 VMess,或只保留服务器地址和端口重新创建节点。协议名称相近不代表可以互换,UUID 相同也不能替代其余参数。节点编辑器里的每个选项,本质上都是服务端配置的一部分映射。
如果可以自主决定两端配置,选型顺序应是:先确认两端内核支持范围,再确定应用协议,然后确定安全层和传输,最后考虑客户端导入与维护便利。对多数新配置而言,VLESS 提供较轻的协议层,适合与 TLS 或 REALITY 等安全能力组合;VMess 的协议层包含更多既有设计,常见于历史配置;Trojan 把口令认证与 TLS 使用方式结合起来;Shadowsocks 结构简洁,客户端覆盖范围广。这里不存在脱离网络条件、服务端实现和维护目标的绝对排序。
用字段完整性判断兼容,而不是只看名称
判断客户端是否支持某节点,至少要核对协议、地址、端口、用户标识、传输、安全方式、服务器名称、指纹、路径或服务名等字段。客户端列表能够显示节点,不等于所有字段都已被正确接收。订阅转换、旧版订阅模板或跨内核导入可能丢弃不认识的扩展项,使节点看似完整,实际退回默认值。遇到此类情况,应打开节点编辑页逐项比对原始链接或服务端说明,并查看客户端日志中关于未知字段、握手失败或配置解析的提示。
| 层次 | 常见选项 | 决定的内容 | 典型错配 |
|---|---|---|---|
| 应用协议 | VMess、VLESS、Trojan、Shadowsocks | 认证方式与代理请求格式 | 客户端类型与服务端不一致 |
| 传输 | TCP、WebSocket、gRPC | 数据分帧和承载方式 | 路径、服务名或网络类型缺失 |
| 安全层 | TLS、REALITY | 握手、加密与身份确认 | 服务器名称、公钥或短标识错误 |
| 流控 | Vision 等 | 特定组合下的数据处理策略 | 内核支持但客户端未写入字段 |
| 执行内核 | V2Fly、Xray | 配置解析与实际连接实现 | 扩展字段被另一内核拒绝 |
因此,协议选择的基本原则不是追逐一个名称,而是保证整组参数在服务端、订阅、客户端和内核之间连续传递。先建立这套分层模型,后续比较速度、资源占用或电量才有意义。若基础导入流程尚未完成,可先按快速配置教程建立一条可工作的连接,再回到本页比较不同组合。
02 / VMESS & VLESS
VMess 与 VLESS 的设计差异
VMess 的背景与配置特征
VMess 是 Project V 早期生态中具有代表性的协议。它把用户标识、认证信息和协议层加密组织在自身格式内,长期以来被大量 V2Ray 配置与订阅格式采用。常见节点字段包括服务器地址、端口、用户 UUID、alterId、传输方式和安全设置。较新的配置通常不再依赖较高的 alterId,但旧订阅或旧教程仍可能保留该字段。客户端导入后应以服务端给出的值为准,不应因为字段看起来陈旧就自行改写。
VMess 的优点主要体现在生态积累与历史兼容。许多订阅生成器、面板格式和客户端早已能够稳定识别其基础字段,迁移旧配置时阻力较小。它的代价是协议层承担的工作相对更多,字段语义也容易与传输层、安全层混在一起。对资源有限的设备而言,这些差异通常不会单独决定体验,但在大量并发连接、频繁唤醒或长时间运行时,协议与实现的额外处理仍可能反映到 CPU 时间和电量上。
VLESS 把安全职责交给组合层
VLESS 的设计重点是简化协议层。它使用用户标识完成认证,但不在 VLESS 自身重复提供完整的数据加密能力,而是依赖 TLS、REALITY 等外部安全层组成完整连接。这样的分层使职责更清楚,也为 Xray 生态中的扩展能力保留了组合空间。客户端中选择 VLESS 后,仍必须继续确认 security、flow、transport、serverName 等项目;只填地址、端口和 UUID,通常不足以复现原节点。
“VLESS 更轻”不应被理解为所有环境下都必然更快。连接总耗时包括域名解析、TCP 建连、安全握手、认证、首个请求和持续传输。协议层减少一些处理,只影响其中一部分。若网络往返时间较高,握手次数与连接复用会比少量本地计算更显著;若主要传输大文件,拥塞控制、链路质量和服务端出口更关键;若手机频繁建立许多短连接,握手和应用唤醒又会重新成为重点。因此,性能判断需要放在完整组合中,而不是仅比较 VLESS 与 VMess 四个字。
Vision、TLS 与 REALITY 不能省略核对
部分 VLESS 配置会携带 flow 字段,例如与特定 TCP 和安全组合配合的 Vision。该字段不是装饰标签,而是两端协商和数据处理的一部分。订阅导入后若 flow 为空、值被截断,或当前内核不支持对应组合,连接可能在握手后失败。TLS 场景则要核对服务器名称、证书对应域名和应用层协议选项。REALITY 场景还会增加公钥、短标识、服务器名称与客户端指纹等参数,具体含义在第三章展开。
配置编辑器中常见的“跳过证书验证”属于诊断性选项,不适合作为长期修复方式。证书错误通常提示设备时间、服务器名称、证书部署或订阅字段存在问题。直接放宽验证会掩盖根因,使之后迁移设备或更新订阅时再次失败。更稳妥的顺序是先检查系统时间,再核对节点中的服务器名称,最后确认服务端对应端口是否确实提供预期的 TLS 配置。
两者的实际选择边界
已有 VMess 配置运行稳定,且多设备客户端都能完整导入时,没有必要仅因名称更新而立即重建。新部署若使用 Xray 生态并需要 REALITY、Vision 等组合,VLESS 通常更自然。需要在 V2Fly 与 Xray 之间保持较宽兼容时,应优先使用双方都理解的基础字段,并避免把特定扩展误当作通用配置。对订阅维护者而言,明确输出协议、传输和安全层字段,比简单标注“VLESS 节点”更重要。
在 v2rayN 中可通过节点编辑页查看完整组合;Android 上使用 v2rayNG 时,也应展开传输与安全选项核对,而不是只看节点列表名称。v2flyNG 以 V2Fly 内核为主要方向,适合使用 V2Fly 能识别的配置。三个客户端的安装入口与适用平台可在下载页查阅。
03 / TROJAN, SHADOWSOCKS & REALITY
Trojan、Shadowsocks 与 REALITY 的职责边界
Trojan 是协议,核心前提是正确的 TLS 参数
Trojan 使用口令认证,并把连接建立在 TLS 之上。客户端节点通常需要服务器地址、端口、密码、服务器名称与证书验证相关选项。它的配置表面上比带多种扩展字段的 VLESS 简单,但 TLS 参数仍然是连接成立的核心。服务器地址可以是域名或 IP,而服务器名称通常用于 TLS 握手中的名称匹配;两者有时相同,有时不同。订阅转换若只保留地址而丢失服务器名称,就可能出现证书名称不匹配。
Trojan 适合需要成熟 TLS 组合、希望配置语义相对直接的场景。性能上,它受到 TLS 握手、连接复用和底层传输影响,并不会因为字段较少就自动减少所有开销。长连接中,首次握手成本会被后续数据摊薄;大量短连接中,握手次数更值得关注。客户端日志若显示 TLS 相关错误,应先处理名称、时间和服务端配置,而不是反复更换本地代理模式。
Shadowsocks 的简洁来自明确的加密方法
Shadowsocks 节点的核心字段通常是服务器、端口、密码与加密方法。它的协议结构相对紧凑,许多平台和内核都有实现,因此常被用于强调基础兼容与较低配置复杂度的场景。需要注意的是,加密方法必须由两端共同支持且完全一致。客户端下拉列表中存在某个方法,不代表服务端一定使用该项;订阅中的方法名称被转换工具改写,也可能导致认证失败。
不同加密方法对处理器能力与实现质量有不同要求。现代设备通常具有较好的对称加密支持,但低功耗设备、旧处理器或高并发情况下仍可能显示差异。评估时应关注持续吞吐下的 CPU 占用、温度和稳定性,而不是只进行一次网页打开测试。若服务端或客户端日志提示 unsupported method,应恢复订阅原始值,并确认当前内核是否包含对应实现。
Shadowsocks 的简洁也意味着部分高级行为由外部层或客户端策略承担。分流、DNS、系统代理和应用接管并不是协议本身的功能,不能把这些设置变化归因于 Shadowsocks 节点。相同节点在两个客户端中表现不同,常见原因是路由规则、DNS 查询路径或系统接管方式不同,而不是节点协议发生变化。
REALITY 不是第五种并列代理协议
REALITY 常与 VLESS 一起出现,但它处理的是安全握手和对端确认,不负责替代 VLESS 的代理请求格式。客户端中新建此类节点时,通常先选择 VLESS,再把安全方式设为 REALITY,并填写公钥、短标识、服务器名称、指纹和 flow 等参数。若订阅界面把它简写为“REALITY 节点”,仍应在理解上拆回 VLESS、传输、安全层和流控四部分。
公钥用于客户端确认服务端身份,短标识由服务端配置限定,服务器名称参与握手参数,客户端指纹描述握手特征。字段之间没有可随意替代的关系。尤其不能把普通 TLS 证书字段直接套入 REALITY,也不能用节点显示名称推测公钥或短标识。服务端配置改变后,应同步更新订阅;手工编辑多台设备容易造成部分设备仍保留旧值。
REALITY 相关扩展主要与 Xray 内核能力关联。使用 V2Fly 内核的客户端时,不能仅凭“支持 VLESS”推导出它也支持同一组 REALITY 扩展。协议基础兼容和扩展功能兼容需要分开判断。订阅同时服务不同内核时,适合按内核建立不同分组,或至少用清楚的节点名称标示要求,避免客户端导入后才发现字段被忽略。
| 名称 | 主要职责 | 必须核对的字段 | 常见误区 |
|---|---|---|---|
| Trojan | 代理协议与口令认证 | 密码、TLS 服务器名称、端口 | 把证书问题当成代理模式问题 |
| Shadowsocks | 精简代理与对称加密 | 密码、加密方法、端口 | 两端加密方法名称不一致 |
| REALITY | 安全握手与身份确认能力 | 公钥、短标识、服务器名称、指纹 | 把它当作可独立选择的应用协议 |
选用三者时,先问“这一项在连接栈中负责什么”,再问客户端与内核是否支持全部字段。这个顺序比按节点名称判断更可靠。关于导入后节点缺失、字段为空或更新失败的集中排查,可继续阅读常见问题与订阅更新失败排查。
04 / PERFORMANCE & POWER
连接速度、资源占用与移动端电量
先区分建连、首包、吞吐与稳定性
“速度”至少包含四个不同指标。建连时间是从发起连接到协议与安全握手完成;首包时间是请求发出后收到第一段有效数据的等待;持续吞吐反映较长传输中的有效速率;稳定性则关注连接在网络切换、空闲和持续负载下能否保持。某个协议在建连阶段少一次处理,不代表它在长时间传输中一定有更高吞吐。反过来,吞吐接近也不说明短连接体验相同。
公网路径、服务器负载、域名解析、TCP 拥塞控制和应用自身缓存,往往比协议层差异更大。要进行有意义的比较,应固定服务器、出口、客户端、路由规则与测试时间,只改变一个协议组合。连续测试多轮并记录中位表现,比挑选一次最快结果更能反映常态。测试期间还应关闭后台同步和系统更新,避免额外流量影响判断。
协议与传输方式会共同决定开销
VMess 在协议层承担较多处理,VLESS 的协议层较轻,Trojan 依赖 TLS,Shadowsocks 的处理重点与所选加密方法相关。这些只是计算开销的一部分。WebSocket 需要额外分帧与头部处理,gRPC 依赖 HTTP/2 连接管理,TCP 直连组合则减少中间封装。不同实现对缓冲区、连接复用与并发调度的处理也会改变实际资源占用。
内存占用通常更多受连接数量、DNS 缓存、路由规则规模、日志级别和图形客户端界面影响。单独比较一个空闲节点的内存值,很难代表协议成本。更合理的方法是建立相同数量的连接,执行相同持续时间的任务,再观察内核进程的稳定区间。日志设置为详细级别时,磁盘写入和文本格式化也会增加开销,完成排查后应恢复常规级别。
CPU 占用要结合设备硬件看。桌面处理器通常可以轻松处理日常连接,但低功耗设备在高吞吐、复杂加密、密集规则或大量并发时可能达到明显负载。若 CPU 占用随吞吐线性上升,先比较加密与传输组合;若空闲时仍持续占用,则应检查重连循环、订阅更新任务、DNS 请求异常或日志滚动,而不是直接更换协议。
移动端耗电主要来自唤醒与网络活动
移动设备的电量表现不能只按加密算法排序。持续保活、频繁重连、网络在无线局域网与蜂窝链路之间切换、应用后台唤醒、DNS 查询以及大量短连接,都会让无线模块和处理器反复进入活跃状态。一个计算稍轻但频繁断线重连的组合,可能比计算稍重但连接稳定的组合消耗更多电量。因此,稳定性、保活间隔和应用流量模式通常与协议本身同样重要。
测试电量时,应使用相同设备、相近信号强度和相同应用任务,至少覆盖前台连续使用与后台待机两个阶段。系统电量统计适合观察趋势,不适合把很短时间内的小幅变化当作结论。若 v2rayNG 或 v2flyNG 在后台耗电明显,先查看是否持续重连、订阅自动更新是否过于频繁、路由是否让全部应用流量进入代理,以及系统是否反复终止并重新启动连接服务。
对于以消息、网页和轻量同步为主的使用方式,连接稳定和合理分流通常比峰值吞吐更重要。对于持续下载或视频流,服务端出口与链路质量占比更高。对于大量开发工具请求,连接复用和 DNS 行为更值得观察。只有先定义任务,协议性能比较才不会变成脱离场景的数字竞赛。
| 观察目标 | 主要影响因素 | 建议测试方式 |
|---|---|---|
| 建连时间 | 网络往返、安全握手、DNS | 固定节点,多轮新建连接并取中位趋势 |
| 持续吞吐 | 链路、服务器负载、拥塞控制、加密实现 | 相同文件与时段,保持测试时长一致 |
| CPU 与内存 | 并发数、规则规模、日志、传输封装 | 相同任务下观察内核进程稳定区间 |
| 移动端电量 | 唤醒、重连、信号、后台任务、分流 | 分别记录前台使用与后台待机趋势 |
综合来看,VLESS 的简化协议层有利于减少部分处理,Shadowsocks 的结构也较紧凑,VMess 侧重既有兼容,Trojan 的表现与 TLS 连接管理关系密切,但这些方向性差异不能覆盖传输、实现和网络条件。对普通用户,优先选择字段完整、连接稳定、内核明确的节点,通常比仅按协议名追求理论开销更有效。
05 / CORE FAMILY
V2Fly 与 Xray 内核家族关系
共同配置传统不等于功能完全相同
V2Fly 与 Xray 都继承了 Project V 生态中的配置组织方式,常见结构包括 inbounds、outbounds、routing、dns 和 log。大量基础 VMess、VLESS、Shadowsocks、Trojan 与路由配置在概念上相近,因此用户经常看到相似的 JSON 层级和客户端字段。相似结构有利于迁移,但不能推导出所有扩展都能直接互换。两条内核路线各自维护功能、字段与实现,具体支持范围需要按目标内核确认。
图形客户端位于内核之上。v2rayN 负责节点管理、订阅、路由模板、系统代理与内核启动,桌面端通常把用户选择转换成内核配置;v2rayNG 在 Android 上提供相似的管理层,并以 Xray 内核能力为主要匹配方向;v2flyNG 则面向 V2Fly 内核。客户端界面出现某个选项,说明客户端能够表达该字段,但最终是否生效仍由当前内核和字段组合决定。
Xray 扩展与 V2Fly 通用字段要分开看
REALITY、特定 flow 取值及部分扩展组合与 Xray 能力关系更紧密。一个订阅若包含这些字段,导入到以 V2Fly 为执行内核的客户端时,可能出现不识别、忽略或启动失败。反向迁移也需要注意:某个配置虽然能被 Xray 接受,但不代表其写法是两边都推荐的公共形式。建立跨内核订阅时,应该明确区分基础协议节点与要求特定内核的节点。
兼容性判断可分三层。第一层是语法:JSON 能否解析,字段类型是否正确;第二层是结构:字段是否位于目标内核认可的位置;第三层是语义:该协议、传输与安全组合是否实现。只通过格式检查属于第一层,无法证明节点可以连接。日志中的 unknown field、failed to build config、unsupported security 等信息,分别指向结构或语义问题。
最小路由结构有助于理解配置边界
下面示例只展示通用的路由结构。它把私有地址交给名为 direct 的出站,其余流量按后续规则与默认出站处理。该片段本身不包含节点凭据,可用于理解 routing、rule 和 outboundTag 的对应关系。实际客户端通常会生成更完整的配置,手工修改前应先导出备份。
{
"routing": {
"domainStrategy": "AsIs",
"rules": [
{
"type": "field",
"ip": ["geoip:private"],
"outboundTag": "direct"
}
]
}
}
outboundTag 必须指向配置中真实存在的出站标签。如果客户端模板把直连出站命名为其他值,仅复制这段规则会造成引用不存在。domainStrategy 控制路由阶段如何处理域名与 IP 匹配,它与 DNS 配置相关,但不会替代系统或内核的完整 DNS 决策。图形客户端提供预设路由时,优先理解预设效果,再决定是否进入自定义 JSON。
迁移内核时应按功能清单逐项验证
迁移不是替换可执行文件后只看能否启动。应先列出当前节点使用的协议、传输、安全方式、flow、路由规则、DNS 策略和本地入站,再在目标内核中逐项核对。随后选择一条字段最简单的节点验证基础连接,再测试扩展节点和分流。这样可以把问题定位到基础运行、协议扩展或路由配置,而不是一次导入全部内容后面对混合错误。
配置文件也不宜在不同客户端之间长期双向覆盖。v2rayN、v2rayNG 与 v2flyNG 会按各自界面模型生成配置,额外字段、标签命名和默认入站可能不同。订阅链接适合传递节点信息,客户端备份适合恢复同类客户端设置,完整内核 JSON 则适合明确知道字段语义时使用。三者用途不同,混用容易把客户端生成层与内核执行层搅在一起。
| 比较项 | V2Fly 方向 | Xray 方向 |
|---|---|---|
| 共同基础 | Project V 配置传统、常见协议与路由结构 | Project V 配置传统、常见协议与路由结构 |
| 扩展判断 | 按 V2Fly 文档与客户端字段确认 | 按 Xray 扩展及组合要求确认 |
| 本站对应客户端 | v2flyNG | v2rayN、v2rayNG |
| 迁移重点 | 检查特定扩展是否存在等效写法 | 检查旧配置与扩展字段的组合要求 |
桌面端需要覆盖 Windows、macOS 与 Linux 时,v2rayN 是本站首推客户端;Android 以 Xray 配置为主时选择 v2rayNG,需要 V2Fly 内核方向时选择 v2flyNG。安装包类型和系统架构说明集中在客户端下载页,本章只处理内核与配置兼容关系。
06 / SUBSCRIPTION COMPATIBILITY
订阅格式与字段兼容性
订阅是配置容器,不是新的代理协议
订阅链接负责批量传递节点信息,节点内部仍然是 VMess、VLESS、Trojan 或 Shadowsocks 等协议。常见内容形态包括经过 base64 聚合的分享链接列表、客户端可识别的原生配置,以及逐条分享链接。base64 只是一种文本编码方式,不增加协议能力,也不会修复缺失字段。客户端拉取订阅后,需要先识别容器格式,再解析每条节点,最后转换成当前内核配置。
分享链接通常把协议类型放在 URI scheme 中,再通过主体与查询参数表达认证、传输和安全信息。基础字段容易跨客户端传递,扩展字段则依赖链接规范和解析器实现。REALITY 公钥、短标识、指纹、flow、gRPC 服务名等项目,若订阅生成端使用非通用参数名,接收端可能忽略。节点能出现在列表中,只说明外层解析成功,不能证明所有查询参数都已进入配置。
原生 JSON 与分享链接适用范围不同
原生 JSON 能表达完整入站、出站、DNS、路由和日志配置,适合精确控制单个内核实例,但它与图形客户端的节点数据库并不完全等价。把完整 JSON 导入图形客户端时,部分客户端会以自定义配置方式运行,部分只提取出站节点,还有些界面设置不会写回原文件。使用前要明确导入入口标注的是“节点”“订阅”还是“自定义配置”。
分享链接更适合传递单节点,便于二维码、剪贴板和订阅聚合,但复杂路由和 DNS 策略通常不应塞进单个节点链接。订阅负责节点,客户端负责本机路由,是更清楚的职责划分。若需要在多台设备保持相同分流,可以分别维护节点订阅与路由模板,并在每种客户端中采用对应格式,避免一个过度复杂的订阅同时承担全部设置。
更新失败与更新后不可用是两类问题
更新失败表示客户端没有取得或没有解析订阅内容,常见线索包括链接不可访问、设备时间异常、返回内容不是预期格式、证书错误或本地网络出口问题。更新成功但节点不可用,则应转向字段完整性、内核支持和服务端状态。两类问题的日志位置不同,处理顺序也不同。先确认订阅请求是否成功,再检查节点解析数量,最后检查单节点连接,能避免把所有错误都归因于订阅链接。
自动更新间隔不宜设置得过短。频繁拉取会增加后台唤醒,也可能在服务端临时生成内容时反复覆盖本地列表。合理做法是根据节点变化频率设置周期,并在大规模变更前保留客户端备份。分组名称、启用状态、排序和本地备注可能是客户端自身数据,更新订阅时是否保留取决于客户端实现,因此不应把重要说明只写在易被覆盖的节点名称里。
多订阅管理时,按来源或内核要求建立分组比把所有节点放在同一列表更容易排查。可以把基础兼容节点、Xray 扩展节点和 V2Fly 节点分开,再用包含或排除关键词减少列表噪声。具体分组方法可参阅订阅分组与服务器关键词过滤,格式差异则可继续阅读base64、原生 JSON 与分享链接的区别。
| 内容形态 | 适合传递 | 兼容风险 | 检查重点 |
|---|---|---|---|
| 分享链接列表 | 单节点与常用扩展参数 | 查询参数命名与解析器差异 | 导入后逐项核对安全与传输字段 |
| base64 聚合 | 多条分享链接的文本容器 | 外层解码成功但内层节点解析不全 | 比较原始条目数与导入条目数 |
| 原生 JSON | 完整内核配置、路由与 DNS | 图形客户端不一定按节点方式接收 | 确认导入入口与目标内核 |
| 客户端备份 | 同类客户端的界面与本地设置 | 跨客户端字段模型不同 | 用于恢复,不当作通用订阅 |
当订阅包含 v2rayN 能识别而另一客户端不能识别的扩展时,不应强行把原订阅当作完全通用格式。为目标客户端输出清晰、字段完整的订阅,或选择双方都支持的基础组合,维护成本通常更低。关于配置 JSON 中 inbounds、outbounds 与 routing 的职责,可阅读配置文件结构逐段解析。
07 / CLIENT WORKFLOW
在客户端中完成协议选择与核对
桌面端先用 v2rayN 建立基准配置
桌面环境优先使用 v2rayN。安装后先导入订阅并执行一次更新,不要立即修改节点字段。选择一条来源清楚的节点,打开编辑页记录协议、地址、端口、用户标识、传输方式、安全方式、服务器名称、flow 及扩展参数。随后保存并连接,通过客户端日志确认配置已生成、内核已启动、出站已建立。这个过程建立了一份基准配置,后续性能测试或协议迁移都应以它为对照。
如果节点可以连接,再设置系统代理和路由模式。系统代理决定支持该机制的应用是否把请求交给客户端,路由模式决定进入内核后的流量走代理、直连还是阻断。两者不是协议字段。更换 VMess 为 VLESS 不会自动修复系统代理未开启的问题,修改路由规则也不会补齐 REALITY 公钥。排查时保持层次分离,可以减少无效修改。
v2rayN 提供多个桌面安装形态时,应按下载页说明选择适合的界面版本,但节点与内核选型原则一致。Windows、macOS 与 Linux 的系统代理入口和权限表现有所差别,客户端内部生成的出站配置仍遵循相同分层。涉及局域网共享时,还要单独设置监听地址、防火墙与端口,具体边界可阅读允许局域网连接设置指南。
Android 上按内核方向选择客户端
使用 Xray 扩展节点时,v2rayNG 与其字段模型更匹配;需要 V2Fly 内核方向时,可使用 v2flyNG。导入订阅后先查看节点详情,特别核对 VLESS 的安全方式、flow、服务器名称、公钥与短标识。移动端界面空间有限,部分字段可能位于高级设置或传输设置中,不能因为列表页没有显示就断定字段不存在。
建立连接后,系统会显示本地连接服务状态。若应用没有流量,先确认该应用是否被当前分应用规则包含,再检查路由和 DNS。若连接服务反复退出,查看客户端日志中的配置解析或内核启动信息。若只在网络切换后失效,可手动断开再连接进行对照,判断是链路切换、系统后台限制还是节点握手问题。协议迁移期间一次只改一项,才能保留可比较的结果。
手工节点适合验证,不适合替代长期订阅
手工创建节点适合确认某组参数是否可用。创建时应从协议开始,依次填写服务器、端口、认证信息、传输与安全层,保存后立即回到编辑页复核。某些客户端会对空字段写入默认值,复核可以发现默认值是否与服务端要求不同。测试成功后,如果节点由订阅维护,仍应修正订阅输出,而不是长期在每台设备上保留手工副本。
订阅节点被本地修改后,下一次更新可能覆盖修改,也可能生成重复节点。需要临时排查时,可以复制节点到本地分组并修改副本,同时保留原节点。确认问题后,把正确字段反馈到订阅源或服务端配置,再删除临时副本。这样可以区分原始配置、诊断配置和最终配置,避免数周后无法判断哪一条才是当前标准。
日志应按阶段读取
配置解析阶段关注字段类型、未知字段和出站构建错误;内核启动阶段关注端口占用、权限与本地监听;连接阶段关注域名解析、TCP 建连、安全握手与认证;路由阶段关注请求最终匹配的出站标签。日志中最后一行不一定是根因,应该从同一次连接尝试的起点向后阅读。完成诊断后恢复常规日志级别,避免长期记录大量无关信息。
协议节点核对清单
- 来源:确认节点来自当前订阅或明确的手工配置,避免编辑旧副本。
- 协议:核对 VMess、VLESS、Trojan 或 Shadowsocks 类型。
- 认证:核对 UUID、密码及相关用户字段,保持格式完整。
- 传输:核对 TCP、WebSocket、gRPC 及路径或服务名。
- 安全:核对 TLS 或 REALITY,以及服务器名称、公钥、短标识和指纹。
- 执行:确认当前客户端使用的内核支持整套字段组合。
- 日志:按解析、启动、握手和路由阶段定位错误。
首次配置可直接按V2Ray 使用教程完成订阅导入、节点连接与验证。本页的检查清单适合在节点不能连接、跨客户端迁移或准备更换协议时使用。若错误信息仍难以归类,可在常见问题页按安装配置与故障排查分类继续查找。
08 / SCENARIO GUIDE
按使用场景建立选型决策
已有稳定配置:先保持,再建立替代节点
已有 VMess、Trojan 或 Shadowsocks 节点长期稳定运行时,最稳妥的策略是保留现状,同时建立一条独立的新组合进行测试。新节点使用不同名称和分组,避免订阅更新时与旧节点混淆。测试应覆盖网页短连接、持续传输、设备待机恢复和网络切换,而不是只确认一次连接成功。完成一段时间的对照后,再决定是否把新节点设为默认。
这种方式尤其适合从 VMess 迁移到 VLESS,或从普通 TLS 组合迁移到 REALITY 组合。迁移涉及服务端、订阅和客户端三处,分阶段切换能够保留回退路径。若多台设备使用不同客户端,应先在字段展示最完整的客户端中验证,再测试其他客户端的订阅解析。任何一端缺少扩展字段,都应在正式切换前处理。
新建 Xray 配置:优先考虑完整组合支持
新建配置且两端都使用 Xray 能力时,VLESS 可以作为协议层候选,再根据服务端设计选择 TLS 或 REALITY,并确认是否需要特定 flow。选择依据不是流行程度,而是服务端能否正确维护、订阅能否完整输出、客户端能否稳定解析。桌面使用 v2rayN、Android 使用 v2rayNG 时,字段模型通常更容易保持一致,但仍需逐项核对。
若需要让相同订阅同时服务以 V2Fly 为执行内核的客户端,应准备基础兼容节点,或把内核特定节点放入清楚的分组。不要把“VLESS 基础协议可识别”误认为“所有 VLESS 扩展组合可执行”。跨内核兼容的核心是缩小到共同字段集合,而不是依靠客户端忽略未知字段。
低功耗与移动场景:稳定连接优先
移动端应优先选择重连较少、字段明确且订阅更新稳定的节点。VLESS 和 Shadowsocks 在协议结构上较轻,但最终电量还受安全握手、信号、分流和应用流量影响。测试时观察后台待机后能否恢复、网络切换后是否反复重连,以及系统电量统计中连接服务是否长期活跃。若问题来自后台限制或信号变化,更换协议通常不会直接解决。
自动更新频率、日志级别和全局代理范围也会影响电量。节点变化不频繁时,不必设置密集更新;排查结束后关闭详细日志;只让需要的流量进入代理,可减少不必要的连接活动。v2rayNG 与 v2flyNG 的选择首先由节点内核要求决定,其次才比较界面偏好。
多客户端与团队配置:选择可解释的最小集合
需要在多台设备、不同桌面系统和 Android 客户端之间分发配置时,应优先选择字段定义清楚、各目标内核都确认支持的组合。订阅分组中标明协议、内核要求和用途,比使用“高速”“备用”等模糊名称更便于维护。路由与 DNS 策略可以由每个平台的客户端模板管理,节点订阅只传递出站信息,降低跨平台转换复杂度。
配置文档应记录协议、传输、安全层、内核要求和关键扩展字段,但不必复制完整凭据。变更时记录哪些字段发生变化,并保留旧节点到验证结束。这样即使某个客户端更新了解析方式,也能根据结构定位差异,而不是重新猜测节点含义。
| 场景 | 优先方向 | 主要核对项 | 不宜采用的判断方式 |
|---|---|---|---|
| 既有配置稳定 | 保留旧节点,平行测试新组合 | 多任务稳定性与回退路径 | 只因协议名称变化立即替换 |
| 新建 Xray 配置 | VLESS 与受支持的安全层组合 | flow、服务器名称、公钥与订阅输出 | 只填写地址、端口和 UUID |
| 跨内核使用 | 采用双方支持的基础字段集合 | 扩展能力与客户端解析范围 | 把基础协议支持等同于扩展支持 |
| 移动端低功耗 | 稳定连接、合理分流与更新周期 | 重连、后台唤醒、信号和日志 | 只按理论加密开销排序 |
| 广泛客户端兼容 | Shadowsocks、Trojan 或基础协议组合按需评估 | 加密方法、TLS 名称与解析一致性 | 看到节点已导入就认定字段完整 |
出现问题时按决策树回退
第一步判断订阅是否成功取得内容;失败则检查链接、设备时间和返回格式。第二步判断节点字段是否完整;缺失则检查订阅生成与转换。第三步判断内核能否构建配置;失败则处理未知字段、类型或不支持组合。第四步判断是否完成安全握手;失败则核对服务器名称、公钥、短标识、密码和设备时间。第五步判断请求是否被正确路由;连接成功但应用不可用时,检查系统代理、分应用规则、DNS 与出站标签。
每一步只改变相关层次的一项设置,并保留日志与原配置对照。反复同时修改协议、传输、安全层和路由,会让一次成功也难以复现。若问题由订阅更新触发,先复制旧节点作对照;若问题由更换内核触发,先用最基础节点验证内核运行;若问题只发生在某个平台,比较客户端生成字段和系统接管方式,而不是直接判定服务端异常。
完成选型后,可前往v2rayN、v2rayNG 与 v2flyNG 下载页选择对应平台安装包,再按配置教程建立连接。遇到订阅、内核启动、系统代理或路由问题时,使用本章决策树配合故障排查分类逐层定位,通常比频繁更换节点类型更有效。