Client and installer selection

V2Ray client downloads and version selection

On the page for your operating system, choose v2rayN, v2rayNG, or v2flyNG. Each entry identifies the UI version, processor architecture, and intended use, so you do not need to understand complex protocol parameters before downloading.

4 desktop and mobile platforms 3 GUI clients Subscription imports and traffic routing
Platform packages

Browse clients by platform

Switching platforms keeps you on this page. The address bar records your selection, making it easy to save or share the relevant entry point.

Windows client

v2rayN Desktop and classic WPF versions

Both packages share v2rayN's core configuration capabilities, but use different UI technologies and layouts. For a first installation, the Desktop version is the recommended choice; if you already use the WPF interface, you can continue with the classic version.

v2rayN

Windows · Current version 7.24.1

Recommended

v2rayN provides subscription groups, server filtering, system proxy, routing rules, TUN mode, and runtime logs. The Desktop version uses the new cross-platform interface and suits first-time installations or users who want a consistent desktop experience. The classic WPF version keeps the traditional Windows layout, with menus and workflows closer to older releases.

Classic WPF version Traditional Windows interface and layout
Download WPF version

Windows requirements and installation notes

Item Recommendation Details
Processor architecture x64 Both Windows installers provided here target common 64-bit desktop processors.
Installation permissions Allow the installer to write to the application directory If Windows asks for permission, verify the program name before continuing.
First launch Import a subscription first, then choose a server Installing the client alone does not automatically create a usable server configuration.
Proxy method Start with the system proxy If you need to route traffic from more applications, read the guide and configure TUN mode afterward.
After download

Installation and configuration order after downloading

Installing the client is only the first step. Following the order below separates package selection, subscription import, and connection testing, making it easier to identify the exact stage when something goes wrong.

  1. Confirm the platform, package format, and processor architecture

    For Windows, choose the Desktop or classic WPF version; for macOS, choose Apple Silicon or Intel by chip; for Android, choose between arm64 and universal; for Linux, confirm both deb or rpm and x64 or arm64. If the installer will not open, check these choices first instead of changing subscription or routing settings.

  2. Finish installation and launch the client for the first time

    Complete the installation using the interface provided by your operating system. On first launch, the system may ask about network access, proxy settings, or background operation. These permissions allow the client to provide a local proxy and apply system settings. Enable only what you currently need; you can adjust them later in system settings.

  3. Import a subscription link or single-node configuration

    Open the client's subscription management section, paste an existing subscription URL, and update it. For a single vmess://, vless://, or trojan:// link, use the import-from-clipboard function. Android clients can also add an individual configuration by scanning a QR code. After importing, check that entries appear in the server list.

  4. Choose a server and apply a proxy method

    Select a configuration from the server list, then enable the system proxy or TUN mode based on your use case. Browsers and apps that follow system proxy settings can start with the system proxy. To cover more application traffic, read the advanced sections on TUN, DNS, and routing later. Avoid changing several settings at once before the first connection.

  5. Use logs to determine connection status

    After connecting, review the client logs to confirm that the configuration loaded successfully, the port is listening normally, and no DNS, authentication, or network timeout errors appear. An inaccessible page does not necessarily mean the client installation failed; the subscription, server status, system proxy, and local network can all affect the result. Check each factor in the order shown by the logs.

Selection notes

Client and package selection guide

The client model, core, and processor architecture are separate considerations. Resolve platform and package compatibility first, then consider interface preferences and configuration features to make the choice clearer.

Use v2rayN by default on desktop platforms

v2rayN is available on Windows, macOS, and Linux. Installation formats differ across platforms, but the core workflow—subscription groups, server lists, routing, and logs—is similar. To use the same servers on multiple desktop devices, import the same subscription on each and configure the system proxy separately.

Desktop and WPF on Windows are different interface implementations, not a simple ranking of protocol capabilities. Desktop is usually better for new users; WPF may feel more natural if you rely on a fixed workflow, traditional menu locations, or tutorials for the classic interface.

On Android, check the core requirement before the architecture

Without a specific preference, start with v2rayNG. It uses the Xray core and suits common subscription imports, per-app proxy rules, and routing configuration. v2flyNG uses the v2fly core and is an alternative when compatible configurations are required. The two clients keep separate configurations, so switching apps requires importing the subscription again in the target client.

After choosing the client, select the arm64 or universal package. arm64 targets mainstream 64-bit ARM phones; the universal build supports a wider range of devices and is useful when the architecture cannot be identified. If installation reports an architecture mismatch, switch to the other package for the same client.

On Linux, check both package format and architecture

Linux has one more selection step than the other platforms: the distribution determines deb or rpm, while the processor determines x64 or arm64. An incorrect package format may not be recognized by the system package manager; an incorrect architecture can cause a format mismatch during installation or launch.

For Debian or Ubuntu families, deb is usually the right choice; Fedora and enterprise Linux derivatives generally use rpm. Check the device architecture in system settings or with uname -m instead of judging by the device's appearance.

Keep existing configuration before updating

Before updating the client, use its configuration export feature or record the current subscription URL, routing rules, and DNS adjustments. Users who rely only on subscriptions generally need to keep only the subscription source; users who maintain multiple nodes, custom outbounds, or complex routing manually should save those configurations as well.

After updating, first confirm that subscription groups and server lists are intact, then test the system proxy. Avoid making broad routing or DNS changes during the client upgrade; otherwise, it becomes difficult to tell whether a connection problem comes from the version or the configuration.

Download FAQ

Common download and installation questions

These questions cover UI versions, processor architectures, package formats, and first connections. Visit the help center for more on subscriptions, routing, and troubleshooting.

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

For a first installation, the Desktop version is the better starting point because it uses the new cross-platform interface. Choose the classic WPF version if you are used to traditional Windows workflows or want to keep the familiar layout. Both are v2rayN; the main differences are the UI technology and layout.

What is the difference between the Android arm64 and universal versions?

The arm64 build targets mainstream 64-bit ARM processors, so it is a good first choice for most commonly used Android phones released after 2015. Use the universal build if you cannot confirm the processor architecture or see an architecture mismatch during installation.

How do you know whether to download the Apple Silicon or Intel version for macOS?

Open About This Mac from the system menu and check the Chip or Processor field. Choose the Apple Silicon build when an Apple chip is listed, and the Intel build when an Intel processor is shown.

Should Linux users choose the deb or rpm package?

Debian, Ubuntu, and their derivatives usually use deb; Fedora, Rocky Linux, AlmaLinux, and similar distributions usually use rpm. You also need to choose x64 or arm64 based on the device processor.

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

After installation, import a valid subscription link or single-node configuration, select a server, and enable the appropriate system proxy or TUN mode. The client manages configurations and connections; it does not generate server details automatically.

Issues with subscription updates, routing rules, DNS settings, and connection logs are organized by category.

Visit the help center