安卓端按节点要求选择内核,而不是按应用名称判断新旧。需要 VLESS + REALITY 或 XTLS Vision 时,优先选择使用 Xray 内核的 v2rayNG;已有明确面向 V2Fly 的配置时,再考虑 v2flyNG。本文区分项目、内核与客户端,列出协议组合的检查项,并给出从桌面配置迁移到安卓的核对顺序。
Project V、V2Fly 与 Xray 的关系
Project V 是围绕网络代理工具及相关组件形成的项目体系,V2Ray 是其中的核心软件。内核负责读取配置、建立入站和出站连接、处理协议与执行路由;客户端则提供节点列表、订阅管理和设置界面。两者不是同一个层级,客户端界面相似,也不代表内部运行的内核相同。
V2Fly 是继续维护 V2Ray 的社区项目。Xray-core 则由 V2Ray 分支发展而来,后来在协议、安全层和传输实现上独立演进。因此,两者共享部分历史与概念,但不能把当前的 Xray 配置文件直接视为任意 V2Fly 版本都能读取的配置。
- v2rayN:桌面客户端。核对配置时,除了看节点类型,还要看实际启用的内核及其版本;不能仅凭客户端名称认定运行的是 V2Fly。
- v2rayNG:安卓客户端,使用 Xray 内核。适合需要 Xray 相关协议组合的节点。
- v2flyNG:安卓客户端,使用 V2Fly 内核。适合已经确认与 V2Fly 匹配的配置和使用环境。
协议支持:重点看完整组合
判断兼容性时,至少要拆成“协议、传输、安全层、流控”四项。VLESS 是协议,WebSocket 是传输,TLS 与 REALITY 属于安全层相关配置,xtls-rprx-vision 是流控取值。只看到“支持 VLESS”就停止核对,容易漏掉真正影响连接的字段。
| 配置组合或能力 | Xray 内核 | V2Fly 内核 |
|---|---|---|
| VMess + WebSocket + TLS | 常见支持组合,仍需核对路径与主机名 | 常见支持组合,仍需核对路径与主机名 |
| 基础 VLESS 配置 | 支持,具体组合受内核版本约束 | 也有支持,不能据此推导支持全部 Xray 扩展 |
| VLESS + REALITY | 选择支持该功能的版本,并补齐对应字段 | 不作为此类配置的兼容替代 |
| XTLS Vision 流控 | 核对服务端要求及 flow 取值 |
不按 Xray 的 Vision 配置直接迁移 |
| 完整 JSON 配置 | 使用对应版本的配置结构 | 使用对应版本的配置结构,不保证与 Xray 互换 |
VMess、VLESS 和 Trojan 等名称只能说明协议类别,不能保证传输组合一致。节点要求的 WebSocket 路径、TLS 服务器名称、指纹配置等也需要客户端正确传递。两端都支持某种协议,仍可能因为某个字段遗漏而握手失败。
结论:先查 security 与 flow,再决定安卓客户端
当节点明确标注 security=reality,或要求 flow=xtls-rprx-vision 时,选择 v2rayNG,并检查其内置 Xray 是否支持该配置;不要通过删掉安全层或流控字段来尝试兼容 v2flyNG。
安卓选择:v2rayNG 还是 v2flyNG
没有现成配置约束、需要接收多种常见分享链接时,可以优先从 v2rayNG 开始。这个建议基于其 Xray 功能适配范围,不代表它在所有网络中都更快。若配置提供方明确要求 V2Fly,或者已有经过验证的 V2Fly 原生配置,则应沿用匹配的运行环境。
v2rayNG:Xray 内核
推荐用于需要 REALITY、Vision 等 Xray 相关功能的节点。导入后仍应打开节点编辑页,核对安全层、服务器名称与流控,不以节点名称作为配置依据。
适合:首次安装、节点明确要求 Xray、桌面已使用同类 Xray 配置
v2flyNG:V2Fly 内核
用于明确面向 V2Fly 的配置。已有 VMess + WebSocket + TLS 节点且运行正常时,没有必要只因分支名称不同就迁移,也不能据此断言其兼容性始终更好。
适合:已有 V2Fly 配置、需要核对 V2Fly 原生配置行为
如果同时安装两款应用用于对照测试,每轮只启动一款的 VPN 连接。安卓的 VPN 服务接管、分应用规则与后台限制都会影响实际流量。两款应用交替启动后出现结果差异,应先确认当前运行的是哪一个服务,再判断是否属于内核差别。
- 仅普通 VMess 节点:两类内核都可能满足需求,先保留已验证可用的配置。
- 明确要求 REALITY:选择匹配功能的 v2rayNG,不把 v2flyNG 当作同配置替代品。
- 只有一份原生 JSON:先询问目标内核与配置格式版本,再选择客户端;不要仅凭文件扩展名导入。
配置核对:端口、字段与导入结果
内核分支不是唯一变量。服务端地址、端口、用户标识、传输路径和安全层任意一项不匹配,都可能导致“导入成功但不能使用”。下面的端口是排查示例,不是所有节点或所有客户端的默认值,实际值以节点编辑页和本地设置为准。
远端端口 443 指向服务器上的服务,本地 127.0.0.1:10808 则是应用在当前设备上的监听地址。把本地端口填进节点的服务器端口栏,并不能让连接“绕回”正确位置。安卓 VPN 模式通常由系统虚拟网络接口接管流量,也不要求每个应用手工填写这个本地端口。
- 先查导入方式。在 v2rayNG 主界面使用「+」→「从剪贴板导入」导入分享链接;菜单文字随版本可能略有调整。订阅地址应放入订阅分组,而不是当作单节点分享链接。
- 再查节点编辑页。确认地址与端口来自原始配置;VMess 节点核对用户标识,WebSocket 节点核对路径和 Host,TLS 节点核对服务器名称。
- REALITY 单独核对。确认公钥、shortId、服务器名称与指纹等参数按提供方要求填写;字段在不同版本中的显示名称可能不同,不要用 TLS 的设置经验代替核对。
- 最后查实际接管。启动后确认系统 VPN 授权已完成;若只有部分应用异常,再检查分应用代理、路由与 DNS,而不是立即更换内核。
桌面与安卓:共用订阅不等于共用全部设置
v2rayN 与安卓客户端可以使用同一个订阅来源,但订阅只负责提供节点内容,不会自动同步桌面的系统代理、路由规则或安卓的分应用代理。若订阅服务按客户端生成不同格式,应选择对应输出;不要假定同一地址在所有客户端中一定返回完全相同的内容。
迁移方案:节点参数对齐,设备接管分别设置
桌面端:v2rayN
- 记录正在使用的节点及实际内核。
- 核对系统代理状态,不把它等同于路由模式。
- 需要 REALITY 时,确认使用匹配的 Xray 配置。
安卓端:v2rayNG 或 v2flyNG
- 按节点要求选择内核,再导入订阅。
- 核对节点关键字段,而非只比较显示名称。
- 完成 VPN 授权,另行检查分应用代理与路由。
同一订阅可以减少重复录入,但两端是否获得相同节点、采用相同规则,仍需分别确认。
桌面可用而安卓不可用时,先比较同一节点的协议组合,再比较当前网络。家庭网络与移动网络的 DNS、连接策略和链路条件可能不同。最好在同一个无线网络下测试同一目标网站,确认配置一致后再切换网络,避免一次改变多个变量。
- 协议字段一致但只有域名访问异常:检查 DNS 与域名路由规则。
- 仅部分应用无法访问:检查该应用是否被排除在 VPN 接管范围之外。
- 订阅更新后节点不同:检查分组地址、更新结果以及服务端输出格式。
常见判断误区与最终选择
Xray 一定比 V2Fly 快吗?
不能这样判断。吞吐量受服务器负载、网络路径、传输组合和终端性能共同影响。对比时应固定节点、网络与目标,先确认两边都正确建立连接,再观察实际使用表现。不同服务端或不同时间的测速不能直接归因于内核。
V2Fly 支持 VLESS,为什么不能直接用 REALITY 节点?
VLESS 只是协议层的一项。REALITY 与 Vision 涉及额外功能及配置语义,基础 VLESS 支持不能覆盖这些能力。原节点要求 REALITY 时,改成普通 TLS 或删除 flow 都改变了连接条件,通常无法与原服务端匹配。
订阅能更新,但节点连不上,是内核问题吗?
不一定。更新成功只说明获取并解析了订阅内容。节点连接还要通过服务器可达性、认证、安全层握手和路由等环节。先看日志是否出现不支持的配置字段,再检查认证与握手错误,不能仅凭订阅成功排除配置问题。
换客户端后需要重新购买节点吗?
客户端本身与订阅服务是不同层次。已有订阅能否继续使用,取决于服务条款、设备限制和输出格式,而不是应用名称。先向提供方确认支持的协议组合和客户端,再决定是否迁移。
结论:按节点要求选内核,按设备设置查接管
首次安装且节点需要 Xray 功能时选 v2rayNG;已有可用 V2Fly 配置时可继续使用 v2flyNG。连接失败先查完整协议组合与日志,连接成功但应用不可用再查 VPN 接管、DNS 和路由,不把所有故障都归因于分支差异。