Client downloadsChoose by platform and architecture

V2Ray Client Downloads

For desktop, choose v2rayN; for Android, start with v2rayNG. Confirm your operating system first, then select the CPU architecture and package format.

Choose a download platform

Download links are grouped by operating system; version details appear on each client card.

Download FAQs

v2rayN Top pick

Windows · x647.24.1

The Desktop edition features a modern cross-platform interface and is a good choice for first-time users. The classic WPF edition keeps the familiar Windows interface and is a stable option for established workflows.

Both downloads are ZIP archives

Extract the entire archive to a writable folder, then run the installer inside. Do not launch it from the archive preview or extract only the executable.

Windows installation requirements

CheckRequirements and how to verifyAfter installation
System and architectureFor x64 Windows. Check the selected release package for its minimum supported Windows version.Make sure the main window opens and the logs show no runtime errors.
Directory and runtimeUse a writable folder. If the installer reports a missing runtime component, install the component it specifies.Confirm settings can be saved. Do not run the client long-term from a temporary extraction folder.
Proxy and permissionsSystem proxy and TUN have different permission requirements. Confirm you have administrator access before enabling TUN.Test the connection with the system proxy first, then consider TUN if your apps require it.
Before and after installation

Handle the package, configuration, and connection separately

Installing the package, importing configuration, and establishing a connection are three separate checks. Work through them in order to find the cause more easily than by repeatedly switching clients.

01

Before installation: keep a recoverable configuration

If you already have a client, note your subscription URL, groups, routing presets, DNS settings, and local listening ports. Export manually added settings that cannot be restored from a subscription using the client’s supported export method. Backups may contain credentials, so do not post them in public forums.

Exit the old app normally before upgrading or switching interface editions. Keep a working copy of your configuration so you can distinguish an installation issue from a configuration issue if the new version fails to start. Deleting the data directory removes a useful troubleshooting reference.

02

After installation: import your subscription first

The client does not provide server connection settings. After importing a valid subscription URL, update it and make sure its entries are recognized, then select the configuration you want to use. If you can see a group name but no entries, check the subscription import results first.

Different clients can share compatible subscription content, but do not copy routing, DNS, interface settings, or app data directories directly between them. Start migration with a supported share format, then recreate client-specific settings one by one.

03

When connecting: check the proxy scope first

On desktop, enabling the system proxy affects only apps that follow that setting. TUN uses a virtual network interface to capture traffic that meets its routing rules. They are separate features; enabling TUN does not mean all traffic will use the proxy outbound.

For your first test, keep routing simple and confirm basic access before adjusting DNS, split routing, or background settings. On Android, approve the VPN request. On desktop, check the logs and local ports so multiple clients do not compete for the same port.

Clients and cores

Choose a client that supports your configuration

v2rayN, v2rayNG, and v2flyNG are all free, open-source graphical clients. The client provides the interface for managing configuration, updating subscriptions, and controlling connections. The core handles proxy protocols, transport, and routing. They work together but are different software layers.

Project V is a good starting point for understanding the V2Ray ecosystem. V2Fly and Xray are related core families. Protocol, transport, and security support varies by core and changes over time; importing the same link does not guarantee identical features.

For desktop, start with v2rayN. For Android, v2rayNG with the Xray core is usually the first choice; consider v2flyNG when you specifically need V2Fly compatibility. Check the server requirements against the client’s supported features rather than judging by the app name or package size.

Before updating, review the in-app version and release notes, then decide whether to migrate your everyday configuration. An app update cannot restore an unavailable server or extend a subscription. If you need help with protocol names, look up the terminology, then check the fields in your configuration.

Protocol, core, and routing glossary →

Download and installation FAQs

From choosing a package to granting permissions and restoring configuration, first identify which step is causing the issue.

Which should you choose: the Windows Desktop or classic WPF edition?

For a first install, start with Desktop, which uses a modern cross-platform interface. If you prefer the classic interface and familiar workflows, choose the established WPF edition. Both require an x64 system. Before switching, back up subscription groups, routing rules, and custom settings. Exit the old client before launching the new one to avoid local port conflicts.

Should you choose arm64 or universal for an Android phone?

Most mainstream phones released after 2015 use arm64, but check which app architectures your device actually supports. Choose universal if installation reports an incompatibility or you cannot confirm the architecture. Universal packages include components for multiple architectures and are usually larger; they do not offer better connectivity. Older devices should also be checked against the client’s minimum Android version.

Can you connect as soon as the client is installed?

The client reads configuration and establishes connections, but does not provide server configuration. After installation, import a valid subscription or share link, or add configuration manually. Update the subscription, select an entry, then set the system proxy or approve the Android VPN request. Test the connection with the default routing first, then adjust routing and DNS one setting at a time to make issues easier to trace.

What should you keep before upgrading the client?

Keep at least your subscription URL, groups, custom routing rules, DNS settings, and local listening port details. Export any manually added configuration that cannot be restored from a subscription. Backups may contain credentials, so store them securely. Exit the client before upgrading; afterward, check the imported settings, proxy mode, and logs. Do not overwrite one client’s entire data directory with another’s.

What should you do if the system blocks installation?

First, confirm the package matches your operating system and CPU architecture, then read the specific system warning. On Windows, check the security prompt and installation permissions. On macOS, review the app’s blocked-launch record under Privacy & Security. On Android, grant install permission only to the app currently handling the file. On Linux, check dependency errors in your package manager. Do not disable system-wide security protections just to install the app.

The download filename doesn’t match the release version shown on the card. Which should you trust?

The release version and package filename are separate fields in the download listing and may follow different update schedules. Confirm the platform, architecture, and package format, then check the installed version on the client’s About page. Do not edit the download URL based on the filename. If a download is interrupted or a link is temporarily unavailable, return to this page later and keep your existing working installation and configuration rather than repeatedly overwriting them.

Download v2rayN