Skip to content
Client Downloads · Choose Your Platform

Download V2Ray clients
v2rayN and Android clients

Choose v2rayN for desktop and v2rayNG for Android.
Check your operating system and architecture before importing a subscription and configuring the proxy.

Subscription groupsTraffic routingSystem proxy / TUN
01 Choose a package 02 Import a subscription 03 Test the connection

CLIENT SHELF

Choose a download by operating system

Switch platforms to see the right downloads. The package format and processor architecture must both match. Being able to open the client doesn’t mean a subscription or proxy is configured.

v2rayN

v2rayN · Windows

Recommendedx64

Desktop

A modern cross-platform UI. Recommended for first-time installations and anyone who wants a consistent desktop interface.

Download v2rayN · Desktop Windows x64 · ZIP package

Classic WPF

Keeps the familiar, stable interface. A good fit if you’re used to the classic menus, tray controls, and settings layout.

Download v2rayN · WPF Windows x64 · ZIP package

Release 7.24.1 · Separate downloads for each edition

Windows requirements and installation

CheckWhat to look for
Operating systemUse a supported version of Windows 10 or 11. Check the release notes and installer prompts for specific compatibility details.
Processor architectureThe Windows download on this page is x64. Go to Settings → System → About and check your system type.
Package formatExtract the ZIP file to a complete folder before running the installer. Don’t launch it from the compressed archive.
Permissions and runtimeInstall any required runtime components as prompted. TUN mode may require administrator privileges.

Before installing, exit the old client and check that it isn’t still running in the taskbar notification area. Fully extract the archive, then run the installer and follow the prompts. Don’t drag out a single program file; it may need other files in the same folder. If the interface opens but the core exits immediately, check the log panel and note the first clear error before investigating a port conflict or missing runtime.

Desktop and WPF differ mainly in their interface and layout. Switching editions isn’t a general fix for network problems. During initial setup, run only one client instance to avoid both editions changing the system proxy. After updating your subscription, select a server and use the tray menu to enable “Set system proxy automatically.” Test TUN separately if you need to route traffic from more applications.

CLIENT & CORE

Clients, cores, and subscriptions: what’s the difference?

Project V laid the foundation for the V2Ray ecosystem. V2Fly continues development of a related core, while Xray is another core in the ecosystem. Graphical clients manage configuration, run a core, and provide the interface. Support for specific protocols and transports depends on the core and version in use.

v2rayN, v2rayNG, and v2flyNG are free, open-source clients. Use v2rayN on desktop and, in most cases, v2rayNG with its Xray core on Android. Consider v2flyNG if you specifically need the V2Fly core. Downloading a client doesn’t provide a server; you’ll need a subscription separately.

If a protocol field isn’t recognized, don’t switch packages at random. Check the share link type, core support, and log errors before deciding whether to update the client. For help choosing, see the comparison of the three clients; for setup across platforms, see the complete installation guide.

AFTER INSTALLATION

Configuration steps after installation

First establish a connection you can test, then adjust routing and traffic handling. Change one type of setting at a time so it’s easier to troubleshoot and roll back.

STEP 01

Import a subscription or share link

On desktop, open “Subscription Group Settings,” create a group, and enter the subscription URL. Example format: https://example.com/sub?token=xxxx. Save it and update the subscription. If you haven’t set up a proxy yet, try “Update subscription (without proxy).” If the service requires a specific network, follow its instructions for choosing an update method.

On Android, choose the subscription option in the Add menu or import from the clipboard. A subscription URL and a single share link are different types of content; use the matching option. After updating, check that servers appear in the list. If it’s empty, check the update result before changing the system proxy.

STEP 02

Select a server and verify its configuration

Select a server from the list and check its address, port, protocol, and transport settings. Imported subscriptions usually provide these fields, so there’s no need to guess. For manual setup, match each field to the server details, especially TLS, SNI, and REALITY settings.

A latency test reflects only the conditions under which it was run and doesn’t replace a real access test. If it fails, distinguish DNS errors, connection timeouts, and handshake errors, then use the logs to investigate. Don’t share screenshots containing subscription URLs, identity fields, or a complete configuration.

STEP 03

Set up the system proxy or connection permissions

On desktop, first use the system proxy to test browser access. Make sure its port matches the client’s local listening port and no other program is changing the proxy. On Android, approve the system VPN prompt and check the connection status in the app.

The system proxy doesn’t automatically cover every app. If an app still connects directly, check whether it uses the system proxy before deciding whether to enable TUN. TUN requires permissions, a virtual network interface, DNS, and routing; don’t enable it before confirming a basic connection works.

STEP 04

Set routing and keep a working configuration to restore

Choose a routing mode that fits your needs, such as “Bypass mainland China,” then check that apps requiring direct access and those requiring a proxy behave as expected. Routing rules control traffic flow; they won’t fix a server that’s no longer working. Save your current working configuration before editing custom rules.

When setup is complete, test web access, commonly used apps, network switching, and connectivity after exiting the client. Before upgrading, note your local port, subscription groups, and rule sources. For step-by-step instructions, read the subscription import and connection guide.

DOWNLOAD FAQ

Download and installation FAQ

Desktop or classic WPF for Windows: which should you choose?

For a first installation, choose Desktop for its modern cross-platform interface. If you prefer the familiar classic interface and workflow, choose the stable WPF edition. Both are v2rayN. When trying either edition for the first time, import your subscription and verify the system proxy before migrating other settings.

Android: should you download arm64 or Universal?

For most phones released since 2015, arm64 is usually the best choice, but check which app architectures your device supports. If you’re unsure or the arm64 package is reported as incompatible, choose Universal. It supports more architectures and is usually larger. Switching package architectures won’t fix subscription or connection issues.

Why can’t I connect to a server after installing the client?

The client reads configuration and forwards traffic; the installer does not include a usable server. Prepare a subscription URL, share link, or configuration file that you manage or have obtained legally, then add it through the subscription group or import menu. Subscription URLs contain access credentials, so don’t publish them or include them in support screenshots.

What should I check if the download won’t install?

First check your operating system, processor architecture, and package format, then read the system message. Fully extract ZIP files on Windows; choose the right package for Apple Silicon or Intel on macOS; check installation permissions and signature conflicts on Android; and review package manager dependency and distribution compatibility messages on Linux.

What happens to my subscriptions and routing settings when I update the client?

Before updating, use the client’s backup or export feature and note your subscription groups, routing mode, and local listening port. Exit the old client, then install a package compatible with your system. After updating, confirm your configuration is still there, refresh subscriptions, and test the connection. When switching interface editions, don’t overwrite incompatible configuration files.