本文速览

Linux、Windows 与 macOS 桌面先看 v2rayN;安卓需要 Xray 功能时先看 v2rayNG,明确使用 v2fly 配置时再考虑 v2flyNG。本文把客户端、内核与节点协议分开比较,并给出订阅导入、分流设置和连接验收步骤,适合已经拿到订阅地址、但还没确定安装哪款客户端的用户。

一、先按系统选客户端,再核对节点要求

这三款工具不是同一程序的三个皮肤。v2rayN 面向桌面系统;v2rayNG 与 v2flyNG 面向安卓。名称中的大小写不会改变适用平台,安卓安装包也不能直接作为 Linux 桌面程序运行。下载前先确认系统,再确认处理器架构,例如 x64 与 ARM64,不能只看文件名里是否带有“V2Ray”。

v2rayN:桌面配置入口

推荐

提供节点列表、订阅分组、路由与日志界面。桌面可用的内核和流量接管方式取决于平台、安装包及具体版本,不能把某个系统的设置截图原样套到另一个系统。

适合:Linux、Windows、macOS 桌面日常使用与排错。

v2rayNG:安卓 Xray 客户端

使用 Xray 内核,通过安卓 VPN 服务接管流量。支持订阅管理与按应用选择代理范围;节点是否可用,还要核对所带内核与服务端配置是否匹配。

适合:安卓手机、需要 Xray 协议与传输能力的节点。

v2flyNG:安卓 v2fly 客户端

使用 v2fly 内核,适合已有 v2fly 配置的场景。选择它的依据是配置兼容性,而不是名称更接近 V2Ray,也不是假定它比另一款更快。

适合:安卓设备、已确认兼容 v2fly 的节点与配置。

这里的“推荐”限定在桌面选型,不是跨平台性能排名。三款客户端免费、开源,但开源属性本身不能说明某条线路的速度,也不能代替节点参数检查。

二、内核、协议和传输方式分别决定什么

客户端负责界面与配置管理,内核负责实际连接。VMess、VLESS 是协议名称;WebSocket、gRPC 是传输方式;TLS 与 REALITY 涉及连接安全。看到一条 VLESS 链接时,不能仅凭协议名称就认定三个客户端都能使用,仍需检查传输、安全参数及内核支持。

比较项v2rayNv2rayNGv2flyNG
主要平台Windows、Linux、macOS安卓安卓
内核关系可管理不同内核;以当前构建和设置为准Xrayv2fly
VMess 节点核对所选内核及传输参数核对传输与 TLS 参数核对传输与 TLS 参数
VLESS + REALITY使用支持该组合的 Xray 内核并核对字段核对内置 Xray 版本和节点参数不能按 Xray 的 REALITY 配置直接套用
流量接管系统代理、本地代理端口;TUN 依平台与版本而定安卓 VPN 服务,可配置应用范围安卓 VPN 服务,可配置应用范围

例如,VMess over WebSocket + TLS 节点通常要核对地址、端口、UUID、WebSocket 路径、Host 和 TLS serverName。VLESS + REALITY 还可能涉及公钥、shortId、指纹与 flow。字段名称会随界面变化,服务商提供的参数含义不会因此改变;漏填其中一项,就可能出现“能导入但不能连接”。

选型判断:先核对完整节点组合

拿到 VLESS + REALITY 节点时,桌面先检查 v2rayN 当前节点使用的 Xray,安卓先检查 v2rayNG;只有服务端配置明确兼容 v2fly 时,再把 v2flyNG 纳入候选。不要把成功导入当成连接验收。

三、订阅可以复用,路由与本地设置不会自动同步

订阅地址通常用来获取节点列表,不等于完整的设备配置备份。同一条订阅可能同时供桌面和安卓使用,前提是服务端输出格式能被两端识别,且节点协议受支持。是否允许多设备在线、是否有设备数量限制,则由订阅提供方规定。

配置方案:两端分别导入同一条兼容订阅

桌面端:v2rayN
  • 在「订阅分组」→「订阅分组设置」中新增分组,填写订阅地址。
  • 保存后执行更新,选中一个节点,再检查系统代理状态。
  • 单独保存路由规则、本地监听端口和需要的 DNS 设置。
安卓端:v2rayNG
  • 从侧边菜单进入「订阅分组设置」,新增名称和地址。
  • 回到节点列表执行「更新订阅」,核对节点名称与数量。
  • 启动连接时确认系统 VPN 授权,再设置需要代理的应用范围。

两端分别更新后才会刷新节点;路由、应用名单和 DNS 仍需分别设置。菜单名称可能随版本略有变化。

v2flyNG 同样需要先检查订阅解析结果,再检查节点参数。若一条订阅在两个客户端里显示的数量不同,先看是否包含不受支持的节点类型、解析错误或分组过滤,不要立刻重复购买订阅。订阅链接可能包含访问凭据,截图、日志和求助内容中都应遮住完整地址。

四、桌面与安卓的分流入口不同

v2rayN 的桌面界面适合同时查看节点、日志和路由。初次使用可以从「设置」→「参数设置」核对本地监听项,再选择合适的系统代理模式。系统代理只影响遵循该设置的程序;终端、部分游戏和自带网络栈的应用未必跟随。TUN 覆盖的流量范围更广,但还涉及路由、DNS、权限与其他网络工具的冲突,不能当作首次连接的必选步骤。

v2rayNG 与 v2flyNG 的安卓 VPN 模式通过系统接口建立本地隧道,不表示节点服务商的协议变成了另一种协议。分应用设置决定哪些应用进入这条通道;域名、IP 等路由规则则决定流量进入内核后走哪个出口。两层规则要分开理解。

  1. 先缩小接管范围:桌面先测试明确指定的本地代理;安卓先让一个浏览器进入代理范围,避免同时调整大量应用。
  2. 再选择路由策略:需要访问内网打印机或局域网服务时,检查私有地址是否按预期直连,不要仅凭“绕过局域网”名称推断所有规则。
  3. 最后增加复杂设置:确认基础连接正常后,再加入自定义域名规则、分应用名单或 TUN;每次只改一项,并记录结果。

五、用同一套验收步骤比较,不凭延迟数字选客户端

比较速度时,要尽量固定节点、网络、目标站点和测试时段。TCP 延迟只反映连接建立的一部分,不能代表下载吞吐、视频缓冲或复杂网页加载。手机与电脑连接的无线频段不同,也足以改变结果。本文不提供脱离测试条件的速度排名。

  1. 在两端选择同一个节点,核对协议、传输方式、TLS 与安全参数,不要只比较显示名称。
  2. 执行客户端提供的真连接或可用性测试,再访问同一个 HTTPS 页面;记录失败阶段,而不是只记一个毫秒数。
  3. 检查应用流量是否进入代理。桌面可用显式代理命令排除系统代理设置的干扰;安卓检查 VPN 授权与应用范围。
  4. 查看日志中的解析失败、连接超时、TLS 握手失败或本地端口占用,再决定调整 DNS、节点参数还是本地设置。

以下命令只适用于本机已经启用 SOCKS 入站、且监听端口确认为 10808 的情况。端口是演示配置,不是所有版本的固定默认值。可在 v2rayN「设置」→「参数设置」核对实际监听值,再替换命令中的数字。

curl --proxy socks5h://127.0.0.1:10808 --connect-timeout 10 --max-time 20 -I https://example.com/

socks5h 会把目标域名交给 SOCKS 代理解析,适合检查这条代理链路能否完成 HTTPS 请求。收到正常响应只能证明该命令的流量经过了指定代理,不能证明所有应用都已接管;若提示无法连接 127.0.0.1,先检查内核是否运行、端口是否一致,不要先改远端节点。

六、安装前后的常见选型问题

电脑用 v2rayN,手机是不是也要找同名客户端?

不用。电脑保留 v2rayN,安卓根据节点要求选 v2rayNG 或 v2flyNG。把兼容的订阅分别导入后,各自设置代理范围;不要把桌面程序目录当成安卓配置包复制。

订阅在 v2rayNG 能用,换到 v2flyNG 怎么失败了?

先打开节点详情,核对是否使用 REALITY 或其他依赖 Xray 的配置。若是这类节点,应使用匹配的 Xray 客户端;若是 VMess 等双方可处理的组合,再检查路径、Host、serverName 与日志错误。

Linux 上命令行能连,浏览器却打不开,换客户端有用吗?

先不要换。若显式代理命令成功,检查浏览器是否跟随桌面系统代理,或是否另设了代理。再核对 v2rayN 的系统代理状态、路由与 DNS;这是接管路径问题,不足以说明内核有问题。

安卓同时打开两个客户端,能不能自动择优?

通常不能。安卓同一用户或配置文件下通常只能由一个应用占用系统 VPN 服务。测试前先停止另一款客户端,再启动当前客户端并确认授权,避免把通道被替换误判为节点掉线。

订阅更新超时,是不是选错客户端了?

先检查地址是否完整、是否过期,再区分直连更新与通过代理更新。已有可用节点时,可按客户端提供的更新方式通过代理重试;完全没有可用节点时,应先取得可访问的订阅地址或有效配置。

最终选择:平台先行,内核匹配,连通后再加分流

桌面先配置 v2rayN;安卓的 Xray 节点先配置 v2rayNG;已有明确 v2fly 兼容需求时再使用 v2flyNG。完成一次“订阅更新、节点连接、应用接管、日志确认”后,再保存配置并扩展规则,比同时试装三款更容易定位问题。