For desktop, choose v2rayN; for Android, start with v2rayNG. Confirm your operating system first, then choose the architecture and package format.
The clients are free to use. After installation, import your own server configuration or subscription. For your first connection, follow the setup guide.
Windows client
One v2rayN client, two interfaces. Choose Desktop for your first install; consider WPF if you're already used to its layout.
v2rayN
Recommended
7.24.1
Windows x64 installers. Desktop uses a modern cross-platform UI; classic WPF retains the native Windows layout and is a stable option if you prefer the familiar interface.
The package is a ZIP file. Extract it to a separate folder, then run the installer inside. Don't launch it from the ZIP preview window.
Installers and system requirements
Before installing on Windows
Check
What to look for
Operating system and processor
For 64-bit Windows, use the x64 package. Check your system type under Settings → System → About.
Interface edition
Desktop is the cross-platform desktop interface; WPF is the classic Windows-only interface.
Runtime requirements
Check the installer prompts for the minimum Windows version and required runtime components. Install any missing components before continuing.
Install location
Choose a local folder you can write to, and keep the extracted files together.
From extraction to first connection
Once the download finishes, find the ZIP file in File Explorer and extract all its contents using Windows' built-in tools. Run the installer and follow the prompts. If Windows shows a security warning, verify the file name and source, then read the specific warning. Don't disable system protection globally just to run the client.
On first launch, import a subscription or server configuration, then select an entry and set it as the active server. Importing alone doesn't confirm that the connection works. Check that the system proxy is set to “Automatically detect settings” and that the routing mode meets your needs. Menu names may vary slightly between interface versions.
You don't need to run both interfaces at once. Before switching, use the client's export or backup feature to save any settings you need, quit the current version, then launch the other one. Don't let both processes share a configuration folder that's being written to; port conflicts or overwritten settings can otherwise look like network problems.
If your system reports an ARM processor, don't treat x64 and arm64 as interchangeable. The Windows downloads on this page are x64 packages. Whether they run through a compatibility layer depends on your device and the installer's prompts. If the client won't start, check the architecture and runtime components first; there's no need to keep reimporting your subscription.
macOS client
v2rayN Desktop is available for two processor architectures. Check your chip in About This Mac, then download the matching DMG.
v2rayN
Desktop
7.24.1
If About This Mac lists an Apple chip, choose Apple Silicon; if it lists an Intel processor, choose Intel. Both packages install the same client, so you only need one.
The DMG is a disk image. Open it and follow the included instructions to move the app to Applications, then launch it from there.
Chip and system requirements
Before installing on macOS
Check
What to look for
Apple Silicon
If About This Mac lists an Apple chip, choose the arm64 DMG.
Intel
If the Processor section lists Intel, choose the x64 DMG.
macOS compatibility
Check the current installer and macOS startup prompts for the minimum supported system version.
First launch
Use an application location you can write to. When changing the system proxy, confirm any permission prompts.
Install location and proxy permissions
Open About This Mac from the Apple menu in the top-left corner of the screen and check the Chip or Processor section. Don't infer the architecture from the device's purchase year alone: models in the same product line may use different processors. Choose a package that matches your Mac to avoid extra variables from compatibility layers.
Open the DMG and follow its instructions to copy the app to Applications. Once the copy is complete, eject the disk image and launch the client from Applications. Running it directly from the image can make updates and file permissions harder to manage. If macOS blocks the first launch, check the specific reason under Privacy & Security and follow the system's confirmation steps. Don't run commands from untrusted sources to bypass security restrictions.
Import your configuration and select an active server before enabling the system proxy. The system proxy routes traffic from apps that follow system settings; it doesn't automatically cover every app. If a particular app still can't connect, check whether it uses the system proxy before switching installers.
Before quitting the client, turn off the system proxy or confirm that the client can restore its previous settings. If regular websites stop loading after you quit, check for a leftover proxy address in Network settings. Avoid running multiple apps that change the system proxy at once; they can overwrite each other's settings, leaving the displayed status out of sync with the actual system settings.
Android client
Start with v2rayNG; consider v2flyNG if you need a V2Fly configuration environment. The two apps manage settings and data separately.
v2rayNG
RecommendedXray core
2.2.6
An Android client with a graphical interface powered by the Xray core. Most mainstream phones released after 2015 should use arm64. Choose Universal if you're unsure of the device architecture or the arm64 package reports an architecture mismatch.
APK package. Universal includes components for more architectures and is usually larger. The version label and download link use separate release listings, so check the version shown in the client after installation.
v2flyNG
AlternativeV2Fly core
1.10.31
An alternative Android client built on the V2Fly core. Suitable when your existing configuration specifically relies on V2Fly features. Xray-specific settings can't be imported as-is and assumed to be compatible.
Installed and managed separately from v2rayNG. To switch, import a valid configuration again and review app permissions and per-app proxy settings.
Architecture and permissions
Before installing on Android
Check
What to look for
arm64
For systems that support arm64-v8a apps; usually the first choice for mainstream phones released after 2015.
Universal
For devices that need another supported architecture or whose architecture you're unsure of.
macOS compatibility
The minimum Android version depends on the current APK. If the installer reports an incompatibility, check your Android version and device architecture first.
Install permission
Follow the system prompt to temporarily allow the current browser or file manager to install apps. You can revoke this permission afterward.
Connection permission
The first connection requires confirmation of the Android VPN connection request. Background operation may also depend on the system's battery settings.
First install and background operation
After downloading the APK, open it from your browser's downloads list or the system file manager. Install permission applies to the app that opens the file, not as a single system-wide grant. If you start the installation from a file manager, allow that file manager to install apps when prompted. You can turn off this temporary permission in Settings after installation.
On first launch, import a subscription or configuration, select a server, and tap Connect. Android will show a VPN connection request. This system permission lets the client route traffic through VpnService. Check the requesting app's name before confirming. If another VPN app is already running, the new connection may replace it.
If the connection drops as soon as the screen locks, check battery optimization, background activity restrictions, and auto-start settings. Menu names vary by device; start with the battery settings on the app info page. Don't grant every background permission at once. Note the specific symptom first, then adjust the settings that affect connection persistence.
A signature conflict during installation often means the existing app came from a different distribution channel or uses a different signing key. Back up your configuration and check where the original app came from; don't uninstall it just to install the new package. If the installer says the new version is older and can't replace the existing one, confirm the installed version first to avoid an unnecessary downgrade or data loss.
REALITY and XTLS Vision configurations require support from the Xray core, so v2rayNG is the recommended choice. For a regular subscription, recognizing its link is only the first step; also check the protocol, transport, and security settings required by the server. For permissions and per-app settings, see Android setup tips for v2rayNG.
Linux client
v2rayN Desktop downloads are available in packages for different distributions. Check whether you need deb or rpm, then choose x64 or arm64.
v2rayN
Desktop
7.24.1
Most 64-bit Intel and AMD desktops use x64. Debian- and Ubuntu-based distributions typically use deb; distributions with RPM package management use rpm. Your system's dependencies must still be met.
The same package format doesn't guarantee compatibility with every distribution. Use your system's graphical package manager to check dependencies and compatibility warnings; don't force past dependency errors.
Distribution and architecture requirements
Before installing on Linux
Check
What to look for
deb package
For distributions that use Debian package management and meet the package dependencies.
rpm package
For distributions that use RPM package management and meet the package's current dependencies.
x64 architecture
The system architecture is commonly listed as x86_64; deb filenames often use amd64.
arm64 architecture
The system architecture is commonly listed as aarch64 or arm64. Use the matching package.
Desktop environment
Requires a desktop session that can run graphical apps. System proxy integration depends on the desktop environment and the application.
Package installation and desktop integration
Check your processor architecture under About or device information in system settings, then check which package format your distribution uses. amd64 and x86_64 usually refer to the x64 architecture here and aren't tied to a specific processor manufacturer. arm64 and aarch64 are another set of architecture labels; don't use their packages interchangeably with x64.
After downloading, open the package in your file manager and let the system software installer handle it. The installer checks dependencies, architecture, and permissions. If a dependency version is too old, review the specific component named in the error and check your distribution's support. Re-downloading the same package or changing its file extension won't fix compatibility issues.
After installation, launch v2rayN from the applications menu, import your configuration, and select an active server. System proxy settings from the desktop environment may be separate from each app's own proxy settings: a working browser doesn't mean all desktop apps are using the system proxy. Test with an app known to follow system proxy settings, then check other apps one by one.
If the app launches but can't connect, check whether another proxy process is using its local listening port, whether the right server is active, and whether the routing mode matches your needs. Don't switch to a privileged account to troubleshoot routine connection issues. If you need to adjust firewall rules or share access on a local network, allow only the interfaces and source ranges you actually need.
BEFORE FIRST CONNECTION
Three checks after installation
A successful installation means the program is ready to use. Check your configuration, proxy settings, and actual app access separately to pinpoint where a problem occurs.
01 / CONFIGURATION
Import a valid configuration
Get a server link or subscription URL from a source you trust. The client installer doesn't include a server or generate connection settings for you. Subscription URLs may contain access credentials, so verify the source before pasting one. Hide the URL, user IDs, and authentication details when sharing logs or screenshots. After updating a subscription, check that selectable servers appear in the list.
02 / PROXY MODE
Check the active server and mode
On desktop, select a server, enable the system proxy, and choose a suitable routing mode. On Android, confirm the VPN connection permission. When setting up a new client, start with a basic configuration you understand rather than changing many advanced settings. Quit other proxy apps first to avoid competing for ports or overwriting system settings.
03 / VERIFICATION
Test app connectivity
Open an app that should use the proxy and check the result alongside the client logs. A server appearing in the list doesn't mean it's active, and a running client doesn't mean every app uses the proxy. If the problem persists, note the error, client name, and system architecture, then follow the troubleshooting guide to investigate step by step.
DOWNLOAD QUESTIONS
Download and update FAQs
Which should I download for Windows: Desktop or classic WPF?
For a first install, start with v2rayN Desktop, which uses a modern cross-platform interface. If you prefer the classic Windows layout, choose WPF. Both are clients, so you don't need to install both. Back up your settings before switching, and avoid running both versions at the same time.
Which Android version should I choose: arm64 or Universal?
Most mainstream phones released after 2015 should use arm64, but the right choice depends on the app architectures supported by your system. Choose Universal for older devices, devices with a different architecture, or when you're unsure. Universal includes components for more architectures and is usually larger. Install just one suitable package for the app.
Should I use v2rayNG or v2flyNG?
For Android, v2rayNG is the default choice and uses the Xray core. Consider v2flyNG if your existing configuration specifically targets V2Fly. Choose based on the protocols, transports, and security settings your configuration requires. REALITY and XTLS Vision configurations need an Xray client that supports those features; the app name alone doesn't determine compatibility.
Can I connect right after downloading the client?
You'll also need a valid server configuration or subscription URL. The installer contains only the client, not a ready-to-use server. Import your configuration, select an active server, then enable the system proxy on desktop or grant Android VPN permission. Finally, check that apps can reach their destinations.
Do I need to uninstall the old version before updating?
For a routine update, back up your subscriptions, routing rules, and custom settings first. Quit the old version, then update using the same app, installation source, and architecture. If Android reports a signature conflict, don't uninstall right away. Confirm where the original app came from and export any settings you may need; uninstalling can erase app data.
What if the version shown on the page doesn't match the installer filename?
The version label and download link are drawn from separate release listings, so they may update at different times. Don't rely on the number shown on the page alone to identify the installer. Check the filename shown by your browser before downloading, then confirm the installed version in the client's About or version information screen. Make sure the platform and architecture are right.
Still having connection issues after installation? See the FAQs or revisit the import and connection steps in the setup guide.