CLIENT SELECTION / 3 OPTIONS

Choosing between v2rayN, v2rayNG, and v2flyNG

Start by narrowing the options by operating system, then compare the core, subscription management, routing interface, and traffic handling. Choose v2rayN for desktop platforms; for typical Android use, choose v2rayNG, and choose v2flyNG when the v2fly core is required.

DESKTOP v2rayN

Windows、macOS、Linux

ANDROID / DEFAULT v2rayNG

Xray core and common configuration options

ANDROID / V2FLY v2flyNG

Keep the v2fly core

COMPARISON MATRIX

Key differences between the three clients

The three clients target different device ranges. Identify your platform first, then choose based on your configuration source, core requirements, and traffic coverage. You usually do not need multiple clients for the same platform.

Comparison criteria v2rayN v2rayNG v2flyNG
Platform support Windows, macOS, and Linux desktop platforms Android Android
Primary core Xray is the default for common configurations, with core settings managed through the client interface Xray v2fly
Maintenance status Actively maintained Actively maintained Actively maintained
Ease of use Moderate. Basic connections are straightforward, but routing, TUN, and multiple groups require an understanding of desktop network settings Low. Import a subscription, choose a server, and start the system VPN service for a typical setup Moderate. The layout resembles common Android clients, but core and configuration compatibility should be confirmed first
Subscription groups Well suited to managing multiple subscription groups, with notes, filters, and sorting for organizing servers Supports subscription imports and updates, making it suitable for everyday switching on mobile devices Supports subscription imports, with an emphasis on preserving the v2fly configuration chain
Routing rules interface The desktop settings are comprehensive, making it easy to review and adjust routing rules, the system proxy, and core parameters Provides mobile routing settings for directing traffic by domain, address, and preset rules Provides routing configuration options designed for the v2fly core
Traffic handling Supports the system proxy and TUN. TUN covers more application traffic but usually requires additional system permissions Uses the Android system VPN service to handle application traffic, with per-app settings available to control its scope Uses the Android system VPN service to handle traffic; behavior is determined by the v2fly core configuration
Key features Subscription groups, server filtering, routing rules interface, system proxy, TUN, and desktop tray controls Xray protocol support, per-app proxying, mobile network switching, and the Android VPN service v2fly core, subscription management, routing settings, and mobile VPN service
Best for Desktop users, people managing multiple subscriptions, and advanced users who need detailed routing or TUN Most Android users and anyone who needs compatibility with Xray configurations Users who specifically need the v2fly core or whose existing configurations depend on V2Fly behavior

Maintenance status describes the current continuity of each project and does not mean their release schedules are identical. Use the download page for the installers and versions currently available.

CLIENT NOTES

A closer look: platform and core define the differences

The client names are similar, but their roles do not fully overlap. Desktop and Android differ in permission models, system proxy access, and background operation, so start with the device you actually use.

01 / DESKTOP

v2rayN: the desktop choice

Top desktop pick

v2rayN supports Windows, macOS, and Linux, making it a good fit for users who want to manage subscriptions, servers, the system proxy, and routing rules from one desktop environment. The usual workflow is to import a subscription, update the server list, select an active server, and enable the system proxy. If an application ignores the system proxy or you need broader traffic coverage, consider TUN mode next.

Its strength is not a single long feature list, but the way it brings common desktop operations together in one interface: group subscriptions by source, filter servers by name, adjust routing rules independently, and use the log window to identify port conflicts, invalid configuration fields, and core startup failures. For users maintaining several subscriptions, groups, notes, and filters are clearer than repeatedly importing individual links by hand.

Keep in mind that the system proxy and TUN are separate switches. The system proxy mainly affects applications that follow the operating system proxy settings; TUN uses a virtual network interface to handle more traffic, usually needs higher privileges, and is more likely to conflict with other network tools or virtual adapters. New users should establish a connection through the system proxy first, confirm that the subscription and server work, and configure TUN separately afterward.

02 / ANDROID · XRAY

v2rayNG: the default Android choice

Top Android pick

v2rayNG uses the Xray core and suits most Android devices. The usual workflow is short: import a subscription URL, update it, select the current server, and authorize the client to establish the Android system VPN service. Once connected, Android shows the VPN status in the status bar; whether app traffic enters the proxy depends on the client’s routing and per-app settings.

If a subscription provides VLESS, VMess, Trojan, or settings with TLS and REALITY parameters, successful connection depends on the subscription, core support, and server parameters matching. The client will not correct an incorrect address, port, transport, or authentication field for you. When a connection fails, check the log for handshake, DNS, timeout, or configuration parsing details before repeatedly changing system permissions.

v2rayNG suits users who want a clear workflow on mobile. Per-app proxying limits which applications use the network channel created by the client, while routing rules determine whether a destination domain or address uses a direct connection, proxy, or block. They operate at different layers: the former filters local apps, and the latter handles destination traffic. During initial setup, change one dimension at a time so you can tell whether the issue comes from the server, DNS, or a rule.

03 / ANDROID · V2FLY

v2flyNG: choose it when the v2fly core is required

Alternative core

v2flyNG also runs on Android, but its key difference is the v2fly core. It is not simply an alternative with fewer steps; the deciding factor is the core requirement. Choose v2flyNG when a provider explicitly requires v2fly, an existing configuration is built around V2Fly behavior, or mobile settings need to remain consistent with an existing v2fly configuration.

The graphical interface handles subscription updates, server selection, routing, and VPN service startup, but core differences still affect configuration fields, protocol extensions, and behavioral boundaries. Do not assume identical results just because both clients can import the same link. Successful import only means the client recognized the data format; a working connection still requires the address, port, security layer, transport, and authentication parameters to match.

Without a specific v2fly core requirement, Android users should usually start with v2rayNG. Use v2flyNG when the configuration specifies v2fly or migration requires minimizing changes in core behavior. This avoids repeatedly importing, authorizing, and modifying system VPN settings in both clients, and makes it easier to associate logs with the relevant core.

SCENARIO ROUTING

Shorten the decision path by use case

If you do not need to review every parameter, choose based on your device and goal. The suggestions below address client selection only; they do not replace checks of subscription parameters or server configuration.

DECISION PATH

Final recommendation: platform first, core second

For Windows, macOS, or Linux, choose v2rayN. It covers desktop subscription groups, the system proxy, routing rules, and TUN settings, making it suitable for expanding from a basic connection to more precise traffic management.

For Android without a specific core requirement, choose v2rayNG. It uses the Xray core and keeps subscriptions, servers, routing, and the system VPN service in one focused workflow. When the configuration source explicitly requires v2fly or existing V2Fly behavior must be preserved, choose v2flyNG.

The client is only the interface for managing configuration and the core. The subscription URL, complete server parameters, accurate system time, DNS, and routing must still be correct for a successful connection. After choosing a client, install it for the relevant platform and verify each part of the same configuration chain in order.

Download client