v2rayN
Both packages provide the same core connection capabilities; the main difference is the interface technology and workflow. Install either one as needed—there is usually no reason to install both on the same computer.
Client installation packages
Choose the platform for your current device first, then select a package for its processor architecture. Use v2rayN on desktop platforms, and choose between v2rayNG and v2flyNG on Android.
Choose your device
When you switch platforms, the address bar updates with the matching fragment, and your selection remains after a refresh. Before downloading, confirm both the operating system and processor architecture to avoid choosing an incompatible package.
Windows offers two interfaces: Desktop and the classic WPF edition. If this is your first installation and you want a consistent experience across desktop systems, start with Desktop. If you already know the traditional v2rayN workflow, WPF makes it easier to keep your existing habits.
Both packages provide the same core connection capabilities; the main difference is the interface technology and workflow. Install either one as needed—there is usually no reason to install both on the same computer.
| Check | Recommended choice | Why |
|---|---|---|
| Processor architecture | x64 | The Windows packages on this page target common 64-bit Intel or AMD processors. |
| Interface edition | New users: choose Desktop | Desktop uses a modern cross-platform interface; WPF is better for keeping the classic menu layout. |
| Installation permissions | Allow installation for the current user | Installation writes to the application directory, so the system may display a permission confirmation prompt. |
macOS packages are available for Apple Silicon and Intel processors. Before installing, open About This Mac from the system menu and check the chip or processor name. Choose Apple Silicon for an Apple M-series chip, or the Intel edition when Intel is shown.
The two DMG packages only differ by processor architecture; their features and configuration are the same. Choosing the wrong architecture can prevent the app from opening or installing, so checking the chip first is the easiest approach.
| About This Mac shows | Matching package | Installation method |
|---|---|---|
| Apple M-series chip | Apple Silicon | Open the DMG and follow the window prompts to move the app to Applications. |
| Intel processor | Intel | Open the DMG, complete the installation, and launch the app from Applications. |
| First-launch reminder | Review app source and permission prompts | The first time a system runs a network tool, it may ask you to confirm network or proxy-related permissions. |
On Android, start with v2rayNG. It uses the Xray core and supports common subscription, node, routing, and VPN-service controls. If you specifically need the v2fly core, choose v2flyNG below. Whether a subscription imports directly still depends on the configuration provided by the subscription service.
Suitable for most Android users. Popular phones released after 2015 generally use 64-bit ARM processors, so you can start with the arm64 package. If the system reports an architecture mismatch or you cannot identify the processor, use the universal package.
v2flyNG uses the v2fly core and is intended for users who specifically need that branch. Its packages are also split into arm64 and universal editions, selected the same way as v2rayNG. Without a specific configuration requirement, v2rayNG above is the more straightforward choice.
| Check | Choose first | Keep in mind |
|---|---|---|
| Client | v2rayNG | Most users should start with v2rayNG; choose v2flyNG only when you specifically need the v2fly core. |
| Processor architecture | arm64 | Usually suitable for popular phones released after 2015; switch to the universal edition if installation fails. |
| System installation permissions | Allow apps from the current source to be installed | The system may grant permission only for this installation. Adjust it afterward according to your preferences. |
Linux requires checking both the package format and processor architecture. Debian, Ubuntu, and derivatives generally use deb; Fedora, Rocky Linux, AlmaLinux, and other RPM-based distributions generally use rpm. Choose x64 for standard Intel or AMD computers and arm64 for ARM devices.
Choose deb or rpm according to your distribution’s package system, then choose x64 or arm64 for the processor. Check the architecture in system settings or run uname -m in a terminal: common x86_64 corresponds to x64, and aarch64 corresponds to arm64.
Choose the packages below only when the system reports aarch64 or explicitly identifies ARM64. The package format must still match your distribution.
| System or architecture clue | Selection | Notes |
|---|---|---|
| Debian and Ubuntu family | deb | Open it with the system package installer; the package manager handles dependencies. |
| Fedora, Rocky Linux, and other RPM-based systems | rpm | Install it with the appropriate package manager. |
x86_64 |
x64 | Common for Intel and AMD desktop processors. |
aarch64 |
arm64 | Common on ARM desktop devices and some development boards. |
Selection order
Installation failures are most often caused by choosing the wrong platform, processor architecture, or package format—not by the client itself. Follow the steps below and you can usually identify the right package within a minute.
Packages for Windows, macOS, Android, and Linux are not interchangeable. The platform tabs at the top group the matching packages together. Select the device you are using rather than downloading for another system.
On macOS, distinguish Apple Silicon from Intel. On Android, choose between arm64 and universal. On Linux, distinguish x64 from arm64. The current Windows packages target common x64 desktops.
On Linux, choose deb or rpm for your distribution. On Windows, choose between the modern Desktop interface and classic WPF interface. One is enough; installing multiple editions increases configuration overhead.
For a standard Windows PC, start with v2rayN Desktop; for an Apple M-series Mac, choose Apple Silicon; for a recent mainstream Android phone, start with v2rayNG arm64; for an Ubuntu x64 desktop, choose v2rayN deb x64.
First installation
Installing the client does not configure a connection by itself. Next, import a valid subscription, update the nodes, choose a proxy mode, and verify that system traffic is routed through the client as expected.
On desktop platforms, follow the installer or package manager. On Android, open the package and confirm the system prompts. When the first launch requests network, VPN, or proxy permissions, review what each permission is for before proceeding.
Copy the subscription URL, add it under subscription management in the client, and run an update. Once the node list appears, choose a node; do not repeatedly tap Connect before the subscription has finished updating.
For everyday browsing, start with the system proxy, which works for apps that read system proxy settings. To route traffic from more applications, configure TUN mode and review system permissions and local network access rules.
Check the client log for connection errors first, then test with an app that needs network access. If a node times out, troubleshoot in this order: local network, system time, subscription status, and node parameters.
Download FAQ
Here are the most common issues during download. Confirm the package type first, then configure subscriptions and connections inside the client.
For a first installation, start with Desktop, which uses a modern cross-platform interface. If you know the classic interface or want to keep your existing workflow, choose WPF. Both are v2rayN with similar core capabilities, so you normally do not need both.
If an older computer already uses WPF with a stable configuration, keep the same interface edition when updating to make the migration easier to verify. On a new device, you can start directly with Desktop.
Open About This Mac from the system menu and check the Chip or Processor field. Choose Apple Silicon for an Apple M-series chip and the Intel edition for an Intel processor. Do not rely only on the purchase date, since models with different processors were sold during the same period.
The arm64 package targets mainstream 64-bit ARM phones and includes components built for that architecture, so it is usually smaller. Most popular Android phones released after 2015 can start with arm64; use the universal package if installation fails, the system reports an incompatibility, or the processor is unknown.
The universal edition is not a feature-rich premium version; its main purpose is broader processor compatibility. After installation, the main interface and steps are the same for both packages.
Debian, Ubuntu, and derivatives generally use deb; Fedora, Rocky Linux, AlmaLinux, and other RPM-based distributions generally use rpm. After identifying the package format, check the architecture: x86_64 means x64, while aarch64 means arm64.
If you are unsure which package system your distribution uses, check its documentation or software installer rather than changing the file extension. deb and rpm have different package structures and cannot be converted by renaming.
The client manages connections but needs a valid subscription or a manually added working node first. After importing one, update the subscription, choose a node, and enable the system proxy. To route traffic from more applications, configure TUN mode using the tutorial.
If you imported a subscription but the list is empty, first verify that the full subscription URL was copied, then run an update manually. If nodes appear but time out, check the local network, system time, subscription validity, and node parameters in order. Avoid changing several settings at once.