v2rayN
Best for managing subscriptions, checking routing matches, and changing proxy modes on a computer. Start with the system proxy to verify your connection, then decide whether you need TUN for your apps.
Choose a desktop download →Top pick for desktop: v2rayN. Top pick for Android: v2rayNG. Consider v2flyNG only if you specifically need the V2Fly core.
Start by checking your operating system, then identify the protocols used by your subscription, and compare routing and traffic-handling options. These three clients share a technical ecosystem, but differ in their interfaces, core capabilities, and system permissions. Similar names don’t mean their configuration files are interchangeable.
Use this table to compare general suitability, not as a guarantee of features in every release. Check the download page and installed client for current interface labels, core options, and system requirements. Scroll horizontally on narrow screens.
| Category | v2rayN | v2rayNG | v2flyNG |
|---|---|---|---|
| Platform support | Windows、macOS、Linux | Android | Android |
| Core options | Multiple core options; specific choices such as Xray and V2Fly depend on the version and configuration type | Xray | v2fly |
| Checking maintenance status | Check update notes for both the client and its core | Check client updates and changes to the bundled Xray core | Check client updates and V2Fly core changes separately |
| Ease of use | Basic imports are straightforward; multiple cores, routing, and TUN settings take more understanding | Basic imports are straightforward; requires VPN authorization and permission to run in the background | Best for users with a specific core requirement; check subscription compatibility first |
| Subscription groups | Robust group management and server filtering, suited to multiple subscription sources | Subscription management for updating and switching configurations on mobile | Supports subscription imports and management; check the installed interface for grouping options |
| Routing UI | Manage routing presets and rules, including detailed domain, IP, and outbound matching | Configure routing and per-app proxying; complex rules require familiarity with core syntax | Use the routing options provided by the client; Xray-specific fields aren’t interchangeable |
| TUN and traffic handling | Offers a TUN mode; check permissions, core, and platform support separately | Uses Android VpnService to create a virtual network interface; this is not the same as a desktop TUN toggle | Uses Android VpnService to route traffic; behavior depends on system and client settings |
| Key features | Multiple subscription groups, server filtering, graphical routing, and multiple core configurations | Xray protocol support, mobile connection management, and per-app proxying | V2Fly core configuration and a graphical Android interface |
| Best for | Desktop users, users with multiple subscriptions, and anyone who needs detailed routing | Android beginners, everyday mobile users, and anyone who needs Xray features | Users with existing V2Fly configurations or a need to test V2Fly core behavior |
For desktop, start with v2rayN; for everyday subscription use on Android, start with v2rayNG. v2flyNG is an alternative when you have a specific core requirement, not a lightweight option for older devices.
Best for managing subscriptions, checking routing matches, and changing proxy modes on a computer. Start with the system proxy to verify your connection, then decide whether you need TUN for your apps.
Choose a desktop download →Best for importing subscriptions and connecting on the go. Grant VPN permission the first time you connect. If it disconnects in the background, check battery optimization and app restrictions before switching clients.
Choose an Android download →v2rayN’s strength is its desktop management interface. Create separate groups for multiple subscription sources, then filter servers to narrow the list. Groups distinguish sources; filters organize what you see. Neither changes the connection settings on the server. If a subscription update fails, you can also troubleshoot the update method, group settings, and connection status separately.
Routing is another key feature. Create rules based on domain lists, IP ranges, and outbound targets, but keep rule order in mind. A graphical interface provides a way to configure rules; it doesn’t detect conflicts for you. Save a working configuration before making changes. Add one clearly scoped rule, check the logs and test the result, then expand it gradually.
The Windows download page offers the Desktop and classic WPF editions. Desktop uses a newer cross-platform interface and suits users who want a similar workflow across desktop operating systems. WPF retains the classic Windows interface and may suit users with established workflows or tutorials based on it. The editions aren’t ranked by connection speed, and interface type doesn’t indicate connection quality.
On macOS, choose a download for Apple Silicon or Intel. On Linux, check both processor architecture and package format (deb or rpm). Multiple cores don’t mean every configuration can be switched freely: if your subscription relies on core-specific fields, check compatibility first. Before enabling TUN, verify the required permissions, DNS, and routing settings.
v2rayNG uses the Xray core and is the top pick for Android. Getting started mainly involves importing a subscription, updating the server list, selecting a configuration, and connecting. A subscription distributes configuration; the client doesn’t provide a server account. Whether you can connect still depends on a valid subscription, server settings, and your current network.
Android routes traffic through VpnService. The system prompts you to authorize VPN access; once granted, the client can create a virtual network interface. This differs from a desktop system proxy in both coverage and permissions, so don’t copy desktop setup steps directly. If some apps bypass the proxy, first check whether per-app proxying is set to include or exclude them, then review routing rules.
A disconnect after the screen turns off isn’t necessarily a protocol or core issue. First check whether the system restricts background activity, then adjust battery optimization in your device settings. If the system stops the app, the connection can’t stay active; repeatedly importing the subscription usually won’t help. Background access uses battery, so allow it only as needed rather than disabling every system restriction.
For REALITY configurations, check the relevant Xray capabilities and server settings. REALITY is a security-layer technology; seeing the protocol name alone doesn’t guarantee the entire configuration is compatible. The server name, public key, and other required fields must still match. Most Android users will find troubleshooting easier if they verify a basic connection first, then add per-app rules instead of changing every advanced setting at once.
Follow the steps to import a subscription, connect, and verify it →
v2flyNG is an Android client powered by the V2Fly core. Its value lies in compatibility with specific core requirements, not its similar name to v2rayNG. Consider it if you already maintain V2Fly configurations or need to compare how that core handles them. If you’re new and don’t have a specific requirement, start with the recommended Android client.
V2Fly and Xray are both part of the Project V ecosystem, but their development paths and configuration fields differ. A client recognizing subscription text doesn’t mean its core can apply every setting in it. For core-specific security layers, transport parameters, or routing options, check compatibility with the target core. A successful import alone doesn’t mean migration is complete.
Whether a client suits an older phone depends on the OS version, processor architecture, system requirements, and real-world performance. Using the V2Fly core doesn’t guarantee a smaller install, lower battery use, or less memory consumption. Check the download requirements, then test both clients on the same network for the same tasks. That’s more reliable than judging by the product name.
If you choose v2flyNG, start with a configuration confirmed to be compatible, verify basic access, then adjust subscriptions and routing. Switching cores isn’t a universal fix for subscription failures. Check expired addresses, unreachable servers, and incorrect device time as separate issues.
If you’re only trying to fix subscription update failures, first confirm the URL is valid, then check whether updates are set to use the proxy or connect directly. A failed update and a failed node connection happen at different stages; switching clients may not solve either. If the connection works but some domains don’t, check DNS and routing before trying another installer.
Project V provides the technical foundation for this ecosystem. V2Fly continues the development of the V2Ray community, while Xray is a related fork. The three graphical clients put configuration and connection controls in an interface, but they don’t remove differences between cores. Choose a client that fits your platform, subscription needs, and maintenance habits rather than judging by feature count alone.
Once you’ve chosen, visit the downloads page to get the package for your platform and processor architecture. For initial setup, see the setup guide. If something goes wrong, work through the categories in the FAQ, recording each change so you don’t alter several settings at once.