Four platforms · Three graphical clients

V2Ray Client Download

Choose a release by operating system, processor architecture, and installer format. Use v2rayN on desktop platforms, and choose between v2rayNG and v2flyNG on Android.

v2rayN 7.24.1 v2rayNG 2.2.6 v2flyNG 1.10.31

Platform installers

Choose your current device

After switching platforms, only the matching client is shown. Download buttons read the version list from the same origin; if the list is temporarily unavailable, the page keeps a direct entry for the current version.

Windows

v2rayN Windows installers

The Desktop and classic WPF editions use different interfaces. For a first installation, Desktop is the preferred choice; users familiar with the classic Windows interface can continue with WPF.

v2rayN

7.24.1
Recommended

v2rayN brings subscription management, node selection, the system proxy, routing rules, and runtime logs into one desktop interface. Desktop is the newer cross-platform UI, with a structure closer to other desktop systems; WPF is the classic Windows edition for users who want to keep their established workflow.

Desktop edition

A modern cross-platform interface, suited to first-time installation and regular updates.

v2rayN-Desktop-Setup-x64-7.24.1.zip
Download the Desktop edition
Classic WPF edition

Keeps the classic Windows interface and established workflows.

v2rayN-Setup-x64-7.24.1.zip
Download the classic WPF edition

Windows system and installation guide

Check Recommendation Why it matters
Processor architecture x64 desktop device Both Windows installers provided on this page target common x64 desktop environments.
Before installation Fully quit the old client Processes in the system tray may still hold configuration files, local ports, or program files being updated.
First launch Allow required network access The client needs to create a local proxy listener and, depending on the selected mode, handle application or system network requests.

Before you install

A reliable order for downloading, updating, and configuring

Handling installer selection separately from node configuration makes it easier to avoid confusion between architecture, permissions, and proxy status.

STEP A

Confirm the system and architecture

First identify whether the device runs Windows, macOS, Android, or Linux, then check the processor architecture. On macOS, distinguish Apple Silicon from Intel; on Android, distinguish arm64 from universal; on Linux, also choose between deb and rpm package systems. A mismatch may cause the app not to open, an architecture error, or the package manager to reject the installation.

STEP B

Back up existing configuration

If the client is already installed, save the subscription URL, manual nodes, routing rules, and local port settings before updating. Graphical clients can usually retain existing settings, but a quick backup prevents repeated setup after an OS upgrade, directory change, or cross-version migration. Store backups somewhere under your control, and do not share subscription URLs publicly.

STEP C

Quit the old version before installing

Closing the main window does not always end the process. On desktop systems, also check the system tray or menu bar and make sure the old client has fully quit before installing the new version. This releases configuration files, program files, and local listening ports. On mobile devices, wait for the update to finish before reopening the client.

STEP D

Restore the subscription and verify the connection

After launching the client, confirm that the subscription is still present and run a subscription update. Choose a node with complete parameters, enable the system proxy or the client's connection mode, then access a familiar online service to verify resolution and connectivity. If something fails, check the client log and local proxy status first rather than changing several protocol parameters at once.

Recognizing installer files

Architecture and format in file names

Installer names usually include the platform, processor architecture, and file format. Learning these terms makes it easy to rule out releases that do not fit the current device.

x64 / amd64 / x86_64
These names usually refer to common 64-bit desktop processor architectures. Windows and most Intel or AMD desktop computers typically use x64; Linux package names may use amd64 or x86_64.
arm64 / aarch64
Both usually describe 64-bit ARM architectures. Apple M-series chips use arm64; most recent Android phones use the same architecture; Linux RPM file names commonly use aarch64.
DMG / APK
DMG is a common macOS app distribution format; open it and follow the system prompts to install. APK is the Android app package format; follow the source and permission prompts shown by the system.
deb / rpm
These are Linux package formats. deb is common on Debian, Ubuntu, and derivatives; rpm is common on Fedora, Rocky Linux, AlmaLinux, and similar distributions.

Common download questions

Version selection and installation troubleshooting

These questions cover desktop edition choice, chip identification, mobile architecture, Linux packages, and connection checks after an update.

Should you download the Desktop or WPF edition of v2rayN for Windows?

The Desktop edition uses a modern cross-platform interface and suits first-time installations, users who want the newer UI, or anyone who wants a similar workflow across desktop systems. WPF keeps the classic Windows interface for users familiar with its menus, tray controls, and settings paths. Both manage subscriptions, nodes, the system proxy, and routing rules, so installing both is unnecessary. If you have no established preference, start with Desktop.

How do you choose between the Apple Silicon and Intel installer on macOS?

Open About This Mac from the system menu and check the Chip or Processor field. Choose Apple Silicon when an Apple M-series chip is shown, or Intel when an Intel processor is listed. Both installers provide the same client features; the difference is the compilation target. Matching the device architecture can reduce translation overhead and launch problems.

Should you download the arm64 or universal version on Android?

Most mainstream Android phones released after 2015 can use the arm64 version first. The arm64 file targets common 64-bit ARM devices and is more focused in size. Choose universal if the architecture is unknown, the device is older, or the system reports that the arm64 package is incompatible. Universal supports more architectures and may therefore be larger.

Should you choose deb or rpm on Linux?

Debian, Ubuntu, and derivatives generally use deb; Fedora, Rocky Linux, AlmaLinux, and similar distributions generally use rpm. After identifying the format, check the processor architecture: standard Intel and AMD desktops commonly use x64, while ARM single-board computers and some ARM desktops use arm64. Both the distribution format and processor architecture must match.

Do you need to delete existing subscriptions before installing a new version?

Usually not. Before updating, export or record the current configuration and fully quit the old client. After installation, check the subscription list, current node, system proxy status, local listening port, and routing mode. For an update spanning several major versions, backing up first is the safer approach.

What should you check first if nodes are present but cannot connect after installation?

Manually update the subscription first and confirm that all node parameters loaded correctly. Then check the system time, client runtime status, and whether the system proxy or connection mode is enabled. A local listening port occupied by another program can also prevent the browser from connecting through the proxy. If only one node fails, try another node from the same subscription to distinguish a node-side issue from a local setting.