v2rayN desktop client, plus v2rayNG and v2flyNG Android clients.
Choose your operating system, then confirm your processor architecture. After installation, follow the guide to add a subscription, select a configuration and set a proxy mode.
Free, open-source clientGUI configurationSubscription and routing management
A next-generation cross-platform UI. A good starting point for a first install or if you prefer the Desktop layout. The download is a ZIP archive; extract it completely before opening the installer.
The classic Windows interface. A good fit if you’re familiar with the WPF menus and workflow. The two editions have different layouts, so check which interface you’re using when following a guide.
System requirements and package types
Check
What to look for
Before installing
System architecture
Both installers on this page are x64
Check “System type” in Windows settings. These packages are not for 32-bit systems.
OS and dependencies
Use a Windows version that still receives updates; check the installer prompts for specific compatibility details
If a runtime component is missing, install the dependency for the required architecture
Files and permissions
Extract the ZIP, then run the installer
Make sure the install directory is writable. TUN features may require administrator privileges.
Windows installation steps
Check your system architecture, then download one edition. Extract the entire ZIP to a separate folder. Don’t launch the installer from the archive preview or drag out just one program file.
Open the installer in the extracted folder, review the prompts and complete setup. If Windows security shows a warning, verify the file’s source, name and warning details before deciding whether to proceed. Don’t disable protection just to install the app.
Launch v2rayN, add a subscription group and URL, then save and select Update All Subscriptions. Once configurations appear, choose one and set the system proxy for your use case.
Before switching from WPF to Desktop, back up your existing settings, then check subscription groups, routing and DNS in the new interface. Don’t assume both editions use identical configuration folders or import methods. Quit the other edition while testing to avoid local port conflicts. Clear the system proxy before quitting the client to prevent other apps from pointing to an old port.
macOS installers
Check your chip in About This Mac, then choose the matching DMG.
Choose this package if your chip is an Apple M-series processor. Match the package to your actual chip architecture; don’t rely on the device’s appearance, screen size or purchase year.
Choose this package if About This Mac lists an Intel processor. If you see an architecture incompatibility warning at launch, recheck your chip type and the installer filename.
System requirements and package types
Check
What to look for
Before installing
Processor
Choose arm64 for Apple Silicon or x64 for Intel
Open About This Mac and check the chip or processor field
OS compatibility
Follow the package’s stated requirements and any system startup warnings
Note your macOS version and check it against the system requirements if you run into compatibility issues
Installation and permissions
DMG disk image; some network features require system authorization
Copy the app to Applications and review permission prompts on first launch
macOS installation steps
Open the downloaded DMG and copy v2rayN to Applications. Once copied, launch it from Applications instead of running it from the mounted disk image.
If macOS blocks the app, verify its source and review the system message, then check the related details under Privacy & Security in System Settings. Don’t disable system security features to resolve routine installation issues.
Import and update your subscription. First test browser access with the system proxy, then enable TUN if needed. When a permission prompt appears, make sure it comes from the client you just launched.
Package architecture determines whether the app can run; routing rules determine how traffic is forwarded. These are separate issues. If the app won’t launch, check the OS version, processor and permissions. If it launches but connections fail, check the configuration, subscription and proxy mode. Quit the old process and back up settings before updating. Afterward, check local ports to ensure your browser isn’t still using an outdated manual proxy.
Android installers
Start with v2rayNG. Consider v2flyNG if you specifically need the v2fly core.
Most phones released after 2015 can usually start with arm64. Some devices use a different architecture or an older system, so check your device’s actual support before installing.
Includes program files for multiple architectures and is usually larger. If the arm64 package is incompatible, check the system requirements and try the universal package.
For devices that specifically need the v2fly core and use compatible configurations. Its core differs from v2rayNG’s, so don’t assume all protocol extensions and configurations are interchangeable.
Use this if your device architecture is unclear. Check the app name before installing, and keep the two clients’ settings, subscription update methods and running status separate.
System requirements and package types
Check
What to look for
Before installing
Device architecture
arm64 for most phones; choose universal if unsure
Check your device information. The universal package must also meet the app’s system requirements.
Package format
APK, opened with the system installer
Grant installation permission only to the browser or file manager you’re using
Network access
Android VPN permission is required to connect
Check whether another VPN app is already using the connection
Background operation
System battery-saving policies can interrupt persistent connections
Check battery optimization and background restrictions if connections keep dropping
Install Android and connect for the first time
After downloading, open the APK in a file manager and review the installer prompts. If you see “App not installed,” check the architecture, available storage, system compatibility and whether an older app with a different signature is installed. Don’t uninstall an app that still holds your settings without checking first. Export settings if possible, confirm you can find the backup, then decide how to resolve the installation conflict.
Open the client, add and update your subscription, select a configuration, then tap Connect. The first time you connect, Android displays a VPN permission dialog. Check the app name before allowing access. Android uses the system VPN interface, not the desktop “automatically configure system proxy” workflow, so desktop menu instructions don’t apply.
You can compare v2rayNG and v2flyNG as different options, but only let one app establish a VPN connection at a time. After switching clients, recheck the selected configuration and routing mode. If the connection drops when the screen locks, check background restrictions first, then review the logs. Don’t mistake battery-saving behavior for an expired subscription.
Linux installers
For Linux desktop environments. Choose a package by distribution format and system architecture.
For compatible desktop distributions that use DEB packages, such as Ubuntu and Debian. Check your system architecture and dependencies before installing.
For desktop distributions that use RPM packages and meet the dependency requirements. Sharing a package format doesn’t guarantee compatibility with every distribution version.
This page covers graphical client installation, not command-line-only deployments
Package format
DEB or RPM
Check your distribution and version in system information or the software manager
Processor architecture
x64 corresponds to amd64 or x86_64; arm64 corresponds to aarch64
Match the architecture of your installed OS; don’t rely only on the processor’s product name
Dependencies and permissions
The software installer checks dependencies; network-routing features may require additional permissions
Resolve any listed dependency issues before launching the client
Linux graphical installation steps
Check your distribution, version and system architecture, then choose the matching package. Double-click the download and review its package details and dependencies in your system’s software installer.
Use the software installer to complete setup and resolve dependencies, then launch v2rayN from the applications menu. If no launcher appears, confirm installation completed, then refresh your desktop session or sign in again.
Add and update your subscription, select a configuration and set a proxy. System proxy behavior varies between desktop environments, so test first with a browser that follows system proxy settings.
If dependencies can’t be met, note the exact component names and required versions shown by the software installer, then check distribution compatibility. Don’t force the installation by ignoring dependencies. TUN, the system proxy and app-specific proxy settings operate at different levels, so test them separately. Terminal tools may not automatically follow the desktop system proxy.
To launch the client automatically after sign-in, first confirm it starts and connects manually. Then add it under your desktop environment’s “Startup Applications.” For more on installation and autostart, see the Linux desktop setup guide.
What to do after downloading
Install, subscribe, choose a proxy mode
The installer determines whether the app can run; subscriptions and routing determine how it connects. Check each step in order to avoid repeating work.
Confirm the app launches before importing a configuration
Installing the client doesn’t establish a connection. First confirm its window opens and the logs show no persistent startup errors. Then prepare a subscription URL or an existing share link. You must provide your own subscription; the installers on this page don’t include usable connection configurations.
On desktop, add a subscription group and URL, save it, then select Update All Subscriptions. On Android, add the URL in subscription settings and trigger an update. Continue to traffic routing only after configurations appear and you’ve selected a working one. If an update fails, check that the URL is complete and current, and that your network can reach the subscription service.
Test system proxy and TUN separately
On desktop, the system proxy is mainly used by apps that follow system proxy settings. TUN routes traffic through a virtual network interface and may require extra permissions. For a first setup, test one mode at a time. Once connections and routing work, decide whether you need the other mode. Avoid changing DNS, routing and proxy mode at the same time, or it will be hard to identify what affected the result.
On Android, confirm VPN permission before connecting, then check browser access and client logs. A connection icon means the network interface is active; it doesn’t prove every destination is reachable. If you run into issues, note the exact error and steps that triggered it, then consult Troubleshooting.
For version, architecture, update and first-connection issues, start by checking the relevant step.
Windows Desktop or classic WPF: which should you choose?
For a first install, consider Desktop, which uses a next-generation cross-platform interface. The classic WPF edition retains the familiar Windows interface and workflow. Both manage configurations and subscriptions. Back up your settings before switching, and run only one edition at a time while testing.
How do you choose between arm64, x64 and universal packages?
Check your device’s system information for its processor and OS architecture. Choose arm64 for Apple Silicon Macs and x64 for Intel Macs; on Linux, match the package to your system architecture. Most Android phones released after 2015 can start with arm64. If it is incompatible or the architecture is unclear, try the universal package. Support varies by device.
Why can’t you configure the app as soon as you download the ZIP?
The Windows download is a ZIP archive. Extract it completely, then open the installer in the extracted folder and follow the prompts. Don’t run it from the archive preview. If files are missing after extraction, check the extracted contents and any security warnings. Don’t disable security protection outright.
Does installing the client include a subscription?
The installer contains the client, not a usable subscription or connection configuration. You’ll need to provide your own subscription URL. On desktop, add and save the URL, then select Update All Subscriptions and choose a working configuration. Subscription links may contain access credentials, so don’t share them publicly.
What should you keep before updating or reinstalling?
Back up custom settings such as subscription groups, manual configurations, routing rules and DNS, then quit the running client. Use the client’s export or backup feature where available, and note where the backup is saved. After updating, verify your settings before enabling the system proxy or TUN to avoid losing custom data through a direct overwrite.
The installation succeeded, but you can’t connect. Where should you start?
Check that your network works, your device’s clock is correct, subscriptions updated successfully and a configuration is selected. Then review the client logs. On desktop, test the system proxy and TUN separately. On Android, check VPN permission and whether another VPN app is using the connection. Troubleshoot one symptom at a time instead of changing several settings at once.