Client packages and architecture guide

V2Ray Client Download

Choose v2rayN, v2rayNG, or v2flyNG for your operating system. Before downloading, confirm the platform, processor architecture, and package type to avoid mixing files built for different architectures or package managers.

Desktop: v2rayN Android: v2rayNG / v2flyNG Versions follow the release list
Choose by platform

Clients and packages

Platform labels sync with URL anchors, so reopening a link takes you directly back to the relevant system. Version text and download URLs are updated from the same-source release list; if the list is temporarily unavailable, the page keeps the full download path for the current version.

Windows:v2rayN

Windows always offers two v2rayN entry points: Desktop and classic WPF. Desktop is the new cross-platform interface, suitable for first-time installations and users who want a consistent desktop experience. WPF retains the classic layout for users familiar with the older menus and workflow.

v2rayN

v2rayN for Windows

Recommended

A graphical desktop client with subscription management, server selection, system proxy controls, routing configuration, and TUN mode.

7.24.1
Recommended for first-time installation

Desktop edition

The new cross-platform UI. Choose this package if you want the current desktop interface and future cross-platform experience.

Download Desktop
Classic workflow

Classic WPF edition

Retains the classic v2rayN window structure and menu paths for users who want to keep their existing workflow.

Download WPF

Windows requirements and installation guide

Check Requirement and how to verify it
System Use a 64-bit Windows desktop system that is still within its maintenance lifecycle, and install the usual system updates.
Processor This page provides x64 packages. Check the system type under “Settings → System → About”.
Installation permissions The installer needs to write to the application directory. TUN mode may also require elevated privileges to create a virtual network device.
First launch Import a subscription or individual server configuration first, then select a profile, start the connection, and configure the system proxy as needed.

When migrating from another edition, record the subscription URL, routing rules, and local port settings first. Do not repeatedly switch the system proxy between two running clients, or the browser may continue using a local port that is no longer listening.

Selection logic

How to choose from platform to package

Installation failures are usually caused by a mismatch in platform, architecture, or package type—not by the client model. Following a fixed decision order reduces repeat downloads and configuration migrations.

Identify the operating system first

Use v2rayN on Windows, macOS, and Linux desktops; use v2rayNG by default on Android, and choose v2flyNG when the V2Fly core family is required. Do not treat file extensions from different platforms as the same package type.

Then confirm the processor architecture

x64, arm64, Intel, and Apple Silicon describe processor architectures. Read the value from system information rather than inferring it from the device brand, appearance, or approximate age. If the Android architecture is unknown, use the universal build for compatibility.

Finally choose the package type and interface

On Windows, choose between the Desktop and WPF interface paths; on Linux, choose between the deb and rpm package systems. After selecting the package, handle subscription import, system proxy, and routing rules separately—do not troubleshoot installation and connectivity as one step.

First installation

The boundary between installation, import, and connection

Downloading and installing the client only prepares the runtime environment. A valid configuration is required to establish a connection, and whether system traffic enters the client also depends on proxy mode and routing settings.

Installation stage

Confirm that the file matches the current platform and architecture, and exit similar clients before installing. When upgrading an existing client, record the subscription, routing rules, local port, and DNS settings first. A completed installer does not mean the system proxy is enabled.

Configuration stage

Import a configuration through a subscription URL, share link, QR code, or manual parameters. After importing, update the subscription and check that the server list, groups, and protocol parameters are complete. An empty list usually means the subscription was not parsed successfully, not that the package is damaged.

Connection stage

After selecting a configuration and starting the connection, check that local listening works before setting the system proxy. Configure TUN mode only when you need to handle a broader range of traffic. The two modes use different traffic entry points and should not be switched back and forth without understanding the rules.

Verification stage

Check the logs for DNS, port, protocol, or connection timeout errors before testing in a browser. Some apps do not follow the system proxy; in that case, check the app’s own proxy settings or consider TUN mode rather than immediately replacing the client.

Need the complete setup flow?

The quick-start guide explains desktop and Android client operation in this order: import a subscription, choose a mode, start the connection, and verify the result.

View the quick start
Download FAQ

Package selection and first launch

These questions cover edition choice, processor architecture, Linux package types, and the conditions required for connectivity after installation. Replacing the package usually will not fix an invalid configuration.

Should Windows users choose v2rayN Desktop or the WPF edition?

For a first installation, Desktop is usually the better choice because it uses the new cross-platform interface. Choose WPF if you already know the classic v2rayN layout or need to preserve an established workflow. Do not run both at the same time, as their system proxy ports and configuration states may conflict.

How can macOS users tell whether to download the Apple Silicon or Intel version?

Open System Information or About This Mac 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. A mismatched architecture may prevent the installer from launching correctly.

Should Android users choose arm64 or the universal build?

Most mainstream Android phones released after 2015 use arm64, so the arm64 build is the preferred starting point. Use the universal build if you cannot confirm the device architecture, installation reports an architecture mismatch, or the device uses another processor architecture.

How should you choose between v2rayNG and v2flyNG?

For everyday Android use, v2rayNG with the Xray core is the preferred choice. Choose v2flyNG when you need the V2Fly core family or an existing configuration explicitly requires that implementation. Manage each client’s configuration separately rather than overwriting the other client’s data directory.

Should Linux users download a deb or rpm package?

Choose deb for Debian, Ubuntu, and derivatives; choose rpm for Fedora, Rocky Linux, AlmaLinux, and other distributions using RPM package management. You must also match the processor architecture, such as x64 or arm64—do not choose solely by file extension.

Why can’t I connect immediately after installing the client?

The client only manages configurations, the core, and the local proxy. First import a valid subscription or server configuration, select an available profile, and start the connection. Then enable the system proxy or configure TUN mode as needed, and confirm the connection through your browser and the client logs.