CLIENT PACKAGES / PLATFORM INDEX

V2Ray Client Installer Downloads

Installers are separated by operating system, processor architecture, and client interface. Use v2rayN on desktop, v2rayNG on Android by default, or v2flyNG when its kernel is required.

Free forever Open source Graphical client Chinese documentation

PLATFORM LAYERS

Expand installers by platform

After selecting a platform, only the matching client, architecture options, and installation requirements are shown. The platform marker in the page URL can take you directly back to the current group.

WINDOWS / DESKTOP

Windows:v2rayN

The same client is available in two interface versions. The desktop version provides a new cross-platform UI, while the classic WPF version keeps the traditional Windows interface and workflow.

Recommended

v2rayN

Windows 64-bit desktop client, current version 7.24.1.

DESKTOP / X64

Desktop version

A new cross-platform UI for first-time installations, users who want the current interface, or anyone seeking a similar workflow across desktop systems.

Download v2rayN Desktop
WPF / X64

Classic WPF version

A classic, stable Windows interface for users familiar with the older menus, tray controls, routing options, and settings locations.

Download Classic WPF

Windows system requirements

Check Requirements and selection method
Processor architecture The Windows installers on this page target x64 devices. Check the system type under “Settings → System → About.”
Installation permissions The installer may ask the current account to approve system permissions when writing to the app directory and creating shortcuts.
Migrating old settings Before updating or switching interface versions, export subscriptions, nodes, routing rules, and DNS settings to avoid overwriting existing adjustments.
First launch After launch, import a subscription or configuration first, then select a system proxy mode. Simply launching the client does not establish a usable connection automatically.

INSTALL SEQUENCE

Configuration order after choosing an installer

Installing the client is only the first step. Confirm subscriptions, nodes, routing, the system proxy, and DNS settings in order so configuration issues are not mistaken for installation problems.

LAYER / 01

Keep and migrate existing settings

Before reinstalling over an existing client or switching clients, record the subscription URL, manual nodes, routing mode, custom DNS, system proxy scope, and group selection. On desktop, use the export function first; on Android, keep at least the subscription source and key rules. The goal of a configuration backup is not to copy every runtime state, but to restore and verify each setting after the update.

LAYER / 02

Complete the client installation

Run the installer or system package installation process for your platform. If the system reports an architecture mismatch, return to the current platform panel and recheck the processor instead of repeatedly running the same file. After installation, first confirm that the client interface opens, then import subscriptions. This separates installation, configuration, and connection troubleshooting.

LAYER / 03

Import the subscription and check nodes

After adding a subscription, update it and confirm that the node list appears with complete group contents. If the list is empty, check whether the subscription URL is still valid, whether the update requires an existing proxy, and whether the client supports the returned fields. Do not change the system proxy while the node list is empty, as this adds more variables to the diagnosis.

LAYER / 04

Enable routing and the system proxy

After selecting a node, confirm the routing mode—global, rules, or direct—and enable the system proxy if needed. Client running, node selected, core started, and system proxy active are four different states. Validate the connection layer by layer through client logs, system proxy status, DNS resolution, and the target access result.

PACKAGE FAQ

Common download and installation questions

Questions are organized by version selection, processor architecture, client differences, and update migration.

Should Windows users choose the v2rayN desktop version or the classic WPF version?

The desktop version uses a new cross-platform interface for users who want the current UI and future cross-platform experience. The classic WPF version keeps the traditional Windows layout for users familiar with the older menus and settings paths. Do not run both at once; export your existing configuration before migrating.

How do you tell whether to download the Apple Silicon or Intel macOS installer?

Open System Information or About This Mac and check the chip field. If it shows an Apple M-series chip, choose the Apple Silicon arm64 installer; if it shows an Intel processor, choose the x64 installer. Choosing the wrong architecture can cause installation failures or prevent the app from starting properly.

Should Android users download arm64 or the universal version?

Most mainstream Android phones released after 2015 should use the arm64 package first, as it targets the common 64-bit architecture. Use the universal version if you cannot confirm the device architecture, the device is older, or the arm64 package will not install.

How should you choose between v2rayNG and v2flyNG?

For everyday Android use, v2rayNG is the usual choice, with familiar configuration, routing, and subscription controls. Choose v2flyNG as an alternative when you need the v2fly kernel ecosystem or want to verify configuration compatibility. After importing the same subscription, check routing and DNS settings separately in each client.

Should Linux users choose deb or rpm?

Choose deb for Debian, Ubuntu, and derivatives; choose rpm for Fedora, Rocky Linux, AlmaLinux, and other RPM-based distributions. Then select x64 or arm64 for your processor. The package format and architecture must both match.

Which configuration should you keep before updating the client?

Before updating, record the subscription URL, current routing mode, custom DNS, system proxy scope, and manually added nodes. On desktop, use the client’s export function first; on Android, keep the subscription source and key rules. After updating, restore the configuration and test the connection step by step.