v2rayN · v2rayNG · v2flyNG

V2Ray Official LatestClient Setup Guides

From downloading v2rayN to importing subscriptions and setting up split routing, choose a client for your device and configure your connection step by step.

  • Xray / V2Fly cores
  • Open-source clients
  • Four desktop and mobile platforms

Find downloads by operating system

V2Ray Client Setup

From subscription imports to multi-core settings

Start with a basic configuration that connects, then fine-tune routing and traffic coverage. The settings shown below illustrate concepts; they are not a live client interface. Menu names vary by platform and client.

  • Subscription groupEveryday use
  • Update methodManualScheduled
  • Server listGrouped by subscription source

A subscription URL retrieves server configurations in bulk; it is not the same as a share link for a single server. Create a group in your client, paste the full URL, and update it. Then check that servers appear in the list. Groups let you keep configurations from different sources separate, making updates and troubleshooting easier. Updating a subscription usually replaces the entries in that group, so save a copy before making personal changes. Subscription URLs may contain access credentials: don’t share them in public screenshots or chat logs. If an update fails, check the error message, then verify that the URL is still valid and your network is working.

Setup order: connect first, then fine-tune

After importing a configuration, select a server and check the local listening port and system proxy status. Then try a website you actually need to access. Once the basic connection works, add custom rules, remote DNS, or TUN capture. Change one setting at a time and note the result to tell whether the issue is with the server, DNS, or local setup. A client showing as running usually means only that its process has started; it doesn’t guarantee every site is reachable.

Latency tests are just one way to assess a connection. The test method, destination, and current network load all affect the result, so a low number doesn’t necessarily mean faster sustained downloads. For everyday browsing, check that pages load fully; for remote work, focus on connection stability; for video, observe throughput over time. See the user guide for step-by-step instructions, and the advanced reference for routing, DNS, and custom outbounds.

v2rayN download / v2rayNG for Android

Choose a client for your platform

For desktop devices, start with v2rayN. On Android, consider v2rayNG first, then look at v2flyNG if you need its core. Platform links go to the relevant section of the download center, where you can check package architectures and system requirements before downloading.

Windows

Choose between the v2rayN desktop edition and the classic WPF edition. The desktop edition uses a cross-platform interface, while WPF retains the classic desktop experience. Base your choice on system requirements, interface preference, and the features you need—not on assumptions that interface differences mean protocol differences.

After installing, make sure the app starts normally before importing a subscription. If your browser still isn’t using the proxy, check that the system proxy setting took effect and that no other app has changed it. Before upgrading, save your configuration in the client; the server list alone isn’t a full backup.

Go to downloads Windows client →

macOS

v2rayN provides downloads for Apple Silicon and Intel Macs. Check your Mac’s chip type in system settings before choosing a package. Processor architecture and node protocol are separate concerns; switching devices doesn’t mean you need to choose a different protocol.

After installation, follow the system prompts for first-launch permissions and check your network proxy settings. If you need TUN, check its permissions and network interface separately. If the system proxy works but a particular app doesn’t, first check whether that app uses the system proxy.

Go to downloads macOS client →

Android

Start with v2rayNG, which uses the Xray core. Consider v2flyNG if you need compatibility with V2Fly core configurations. Most newer phones use arm64; if you’re unsure of your device’s architecture, check the universal build details. Confirm that your configuration is supported by whichever client you choose.

The first connection usually requires you to approve the system’s VPN connection request. Once connected, check per-app proxy settings, background activity, and battery management. If the connection drops when the screen locks, first check whether the system restricts background activity; there’s no need to immediately change server settings or reimport the subscription.

Go to downloads Android client →

Linux

v2rayN offers deb and rpm packages for desktop Linux, with separate x64 and arm64 builds. Ubuntu and Debian usually use deb; Fedora typically uses rpm. Check your distribution’s package management guidance to confirm.

Once the graphical interface starts, check whether your desktop environment’s proxy settings are being used by the apps you need. Support for system proxies varies, so a working browser doesn’t mean every app is covered. If you configure the client to start at login, distinguish launching the app from automatically establishing a proxy connection.

Go to downloads Linux client →

Project V / V2Fly / Xray

V2Ray cores and open-source clients

How the ecosystem fits together

V2Ray generally refers to the core project in the Project V proxy ecosystem. As the project evolved, V2Fly continued community development of the V2Ray core, while Xray developed into a separate core based on related technology. In everyday searches, “V2Ray client” is often used as a broad term. The graphical client you install may use different cores, so the name alone doesn’t tell you whether a configuration will work.

The core handles incoming traffic, protocols and transports, routing, and outbound connections. The graphical client organizes those capabilities into server lists, subscription groups, and settings pages. Understanding this division makes troubleshooting clearer: an interface that won’t open points to a client issue; a core that won’t start may indicate an invalid configuration field; and a site that won’t load may involve the server or DNS path.

Protocols, transports, and security layers are separate concepts. VLESS, VMess, Trojan, and Shadowsocks are common protocol names; REALITY isn’t a universal switch that can be added to any protocol. Match the fields in the client to the combination supported by the server. Choose protocols based on compatibility at both ends and your needs, not simply by which name sounds newer.

Read about protocols and cores →

Configuration interface and connection handling

What each client is for

v2rayN
An open-source desktop client for Windows, macOS, and Linux that brings subscriptions, servers, and proxy settings together. Available cores and features depend on the interface and configuration support you choose.
v2rayNG
An open-source Android client built around the Xray core, for importing subscriptions, choosing servers, and managing app traffic on your phone.
v2flyNG
An open-source alternative for Android built around the V2Fly core. Choose it when you specifically need support for V2Fly core configurations; it isn’t a universal replacement for every setup.

This comparison covers platforms, interfaces, and core capabilities—not a single ranking of connection speeds. Real-world performance on the same device also depends on server load, network quality, protocol combinations, and app behavior.

Read the client selection guide →

Open-source licenses and maintenance

All three clients are released as open source, but each client project and the cores it uses have their own licenses and maintenance scope. Open source means the code can be viewed, used, and modified under the applicable license; redistribution may still have conditions. Before deploying or redistributing software, read its license and check the requirements for copyright notices, modifications, and other obligations.

Public development and community maintenance make it easier to trace configuration capabilities, bug fixes, and implementation differences, but open-source status doesn’t replace careful judgment. A client doesn’t determine how a subscription provider operates or change how a destination service handles data. To protect account information, also consider how subscription credentials are stored, system permissions, and the app’s own encrypted connections.

Check the client and core separately when updating

Client updates may change menus, fix interface issues, or improve core compatibility. Core updates may change protocol support, configuration fields, or default behavior. These changes don’t always happen together. Before upgrading, save a working configuration and read the release notes. Then check that your custom routing, DNS, and outbound settings still match the current configuration format.

After upgrading, test a basic connection using the same server and check the logs for startup errors before enabling advanced features again. If only one extension stops working, check field compatibility first. If all requests fail, start with core startup, the local proxy entry point, and system proxy settings. Changing the client, core, and server all at once makes it harder to find the cause.

Configuration guides and platform setup

Recent V2Ray guides

Start with the basic guide to make your first connection; use in-depth articles to understand your options and platform-specific details. When choosing a server, distinguish latency from throughput. When exploring the core ecosystem, separate the graphical client from the component that handles connections. For desktop setup, check how your operating system manages proxies and startup.