CLIENT PACKAGES

V2Ray Client Downloads

v2rayN, v2rayNG, and v2flyNG
Choose by operating system, architecture, and interface.

Check your device details before choosing an installer. Connection settings and subscriptions are separate; follow the quick start guide to import them.

PACKAGE SELECTOR

Choose an operating system

Downloads are grouped by platform. Select a tab to see the clients, architecture details, and requirements for that system.

v2rayN

v2rayN

7.24.1
Recommended · Windows

One client, two desktop interfaces. Desktop is the newer cross-platform UI; WPF is the classic stable edition. Both downloads below are for x64.

Desktop: a consistent workflow across platforms

Desktop uses the Avalonia UI and suits users who want a similar workflow across multiple desktop operating systems. Node management, subscription updates, and settings are organized around desktop use. Menu names may change between interface versions. If a setting has moved, search by its function rather than matching its location in a screenshot.

WPF: a traditional desktop layout

The WPF edition is for Windows and retains the classic lists, menus, and settings windows. It’s a good fit if you already know this interface. The choice of UI does not make a connection faster; results still depend on core support, server settings, and network conditions. Export your configuration before switching, and avoid editing the same subscription in both editions.

Windows installation requirements

CheckWhat to look forBefore installing
System and processorBoth packages on this page are x64. Check the relevant release notes for supported Windows versions.Check System type under System Information or About in Windows Settings.
Runtime dependenciesDependencies may change between client releases.If startup reports a missing runtime, install the required component and try again.
Install location and permissionsAssess standard proxy use separately from features that require elevated permissions.Choose a folder you can read and write to. Grant permission for virtual network adapter features only when prompted.

If your system isn’t x64, don’t install based on the word Windows in the filename alone. First check whether your system supports programs built for that architecture. Emulation support and client feature compatibility are separate considerations.

BEFORE FIRST CONNECTION

Check installation and connection separately

The installer deploys the app. Subscriptions, nodes, and routing determine whether it can connect. Check them in order to avoid reinstalling unnecessarily.

Read the full quick start guide →

Before installing: back up your configuration

For a first-time setup, get a subscription URL or complete node settings you’re authorized to use. If you already have a client installed, use its export or backup feature to save your configuration and note the local ports, core selection, routing mode, and custom DNS settings. A subscription URL alone won’t preserve manually added nodes or local rules. Keep each of these settings in your backup, especially when switching interface editions.

Subscription URLs may contain access credentials, and share links may reveal connection details. Store backups somewhere access is controlled, and don’t post your full configuration when asking for help. Before sharing a screenshot, remove addresses, identifiers, and subscription details while keeping the fields relevant to the error.

First launch: import a configuration, then select a node

If the client opens, the app has started—but you still need to add a subscription or import nodes in its interface. Check that the expected entries appear, then select the connection you want to use. A subscription group is not the same as the active node, and updating a group won’t necessarily change the current connection. If importing fails, check the link format and whether the client supports it.

During testing, change one setting at a time. Keep the default listen address first, then check that the selected node has a complete address, port, protocol, and transport configuration before testing the connection. Don’t change DNS, sniffing, routing, and local ports all at once, or it’ll be hard to identify what affected the result.

After connecting: check how apps route traffic

System proxy settings affect apps that respect them; core routing handles requests that have already reached the client. These are separate layers. If a browser works but other apps don’t, first check whether those apps use the system proxy rather than immediately switching clients. On Android, also check the VPN connection status and which apps are included.

For more on how routing, DNS, and inbounds work together, see the JSON Configuration Handbook. Before editing configuration manually, check how the client generates its runtime config. Settings in the graphical interface may overwrite files at startup, so direct edits to generated files may not persist.

DOWNLOAD NOTES

Download and update FAQ

Five answers on choosing installers, checking versions, and migrating settings.

Can I connect right after downloading a client?

The client reads configuration, manages connections, and routes traffic. The installer does not include server connection details. First, get a subscription URL or node settings you’re authorized to use. Import them, select a node, then configure routing and how apps connect through the proxy.

Windows: Desktop or WPF?

Desktop uses a newer cross-platform interface, suited to users who want a similar workflow across desktop operating systems. WPF is the classic, stable edition for users familiar with the traditional Windows interface. Both must match your system architecture. Back up your configuration before switching, and avoid running both editions on the same ports.

Android: arm64 or universal?

Most mainstream phones released after 2015 should use arm64, but check that the system supports running apps built for that architecture. If you’re unsure of the architecture or the arm64 package reports an incompatibility, try the universal build. It supports more architectures but does not remove the client’s minimum OS requirements.

The version shown on the page differs from the installer filename. Which should I trust?

The displayed version and filename come from separate manifest fields, so they may differ during an update. Check the name of the downloaded file, then confirm the installed version in the client’s About screen. Don’t edit the download URL based on the version shown on the page.

What should I back up before updating?

Use the client’s export or backup feature to save nodes, subscriptions, routing, and custom settings. Note the current core selection and local ports. Exit the running client before updating. After restoring your settings, test one connection before enabling the system proxy or other traffic-routing options. Treat backup files as sensitive.