v2rayN
RecommendedDesktop uses a newer cross-platform UI; WPF is the classic, stable version for users who prefer its familiar workflow. Both downloads are archives. Extract the entire archive, then run the installer inside.
v2rayN for desktop, v2rayNG for Android, and v2flyNG as an alternative.
Choose your platform, then your processor architecture.
The installer runs the client; you’ll need to supply a subscription or service configuration separately to connect. Start with the default settings, import your configuration, and test the connection before adjusting routing or DNS.
Desktop uses a newer cross-platform UI; WPF is the classic, stable version for users who prefer its familiar workflow. Both downloads are archives. Extract the entire archive, then run the installer inside.
| Item | What to check |
|---|---|
| System architecture | All downloads above are x64. Check your system type under Settings → System → About first. |
| OS compatibility | You’ll need a Windows environment supported by the client and its runtime components. Follow the installer’s prompts. |
| Write access | Make sure the installation location and configuration folder are writable. Extract the archive fully before launching the app. |
| Network permissions | The system proxy usually doesn’t require elevated permissions; TUN may require administrator approval. |
After downloading the archive, don’t launch the program from the archive viewer. Extract all files to a writable folder, then run the installer. If Windows reports a missing runtime component, install the required component as indicated instead of copying files from another application folder.
If you already use v2rayN, note your local listening ports and system proxy status first. Quit the old instance before updating or switching versions so two clients don’t compete for the same ports. After installation, check your subscription groups and selected configuration before enabling the system proxy. If your browser has a separate proxy setting, verify that port too.
Open Apple menu → About This Mac. Choose Apple Silicon if Chip shows an Apple M-series chip, or x64 if Processor shows Intel. Don’t rely on the Mac’s appearance or purchase year.
| Item | What to check |
|---|---|
| Chip architecture | Apple Silicon uses arm64; Intel uses x64. |
| OS compatibility | Your macOS version must meet the app’s current minimum requirements. Follow any prompts when opening the app. |
| Install location | Open the DMG, drag the app to Applications, then launch it. |
| Permissions | Verify the app’s source, then handle startup and network permissions in System Settings. |
If macOS displays a developer verification warning on first launch, confirm the download source and selected architecture, then check the latest block notice under System Settings → Privacy & Security. Allow access for this app only; there’s no need to disable macOS security system-wide just to install a client.
System proxy and TUN are different ways to route traffic. After importing a subscription, start with the system proxy to test a basic connection. If the app requests network permissions, check what feature requires them. After changing permissions, quit and reopen the client, then verify that the system proxy is set correctly. This helps distinguish a permission issue from an invalid service configuration.
Most mainstream phones released since 2015 are best suited to arm64, but the supported app architecture depends on the operating system. If you’re unsure, choose universal. The universal build does not bypass the minimum Android version requirement.
Choose v2rayNG if you need Xray configuration support. Add a configuration from the home screen, or enter a subscription URL under Subscription group settings and then update the subscription. Importing a configuration and connecting are separate steps: once it appears in the list, select it and start the connection.
Set up v2rayNG for the first time →A good fit if you already use a v2fly configuration. Choose an architecture the same way you would for v2rayNG, but don’t assume the cores support identical features or configuration fields just because the interfaces look similar.
When switching from another client, check that the server’s protocol and transport options are supported. Keep the original subscription URL or share link, then use the new client’s import feature to create a configuration. Don’t overwrite the private data folders of both apps.
Compare client and core differences →| Item | What to check |
|---|---|
| App architecture | The arm64 build is for systems that support 64-bit apps. If you’re unsure, choose universal. |
| OS compatibility | The device must meet the selected client’s current Android requirements. Check the result shown by Android’s installer. |
| Install permission | Follow the system prompt to allow the browser or file manager you’re using to install apps. |
| VPN permission | When starting VPN mode for the first time, approve Android’s VPN connection request. Avoid running another VPN connection at the same time. |
If Android says the app can’t be installed, read the full error message first. Common causes include an unsupported Android version, the wrong architecture, insufficient storage, or a signature mismatch with an existing app. Don’t immediately uninstall the old app; uninstalling may erase local settings. Export anything you want to keep before deciding whether a reinstall is necessary.
Permission to install apps and VPN permission are separate. The first lets Android install the app; the second lets the client create a local VPN interface. If the connection drops in the background, check battery optimization and background activity restrictions. For your first test, keep the default routing and leave FakeDNS, Mux, and complex per-app rules disabled to narrow down issues.
Choose deb or rpm based on your distribution, then select x64 or arm64 for your processor. Package format, architecture, and system library compatibility are separate requirements. A matching file extension alone doesn’t guarantee compatibility.
Configure the desktop proxy after installation →| Item | What to check |
|---|---|
| Package format | Debian- and Ubuntu-based distributions generally use deb; Fedora- and RHEL-based distributions generally use rpm. |
| Processor architecture | amd64 and x86_64 map to x64; aarch64 generally maps to arm64. |
| Desktop environment | You’ll need a desktop session that can run GUI apps and the libraries required by the package. |
| Permissions | Installing packages requires the appropriate permissions; check TUN network permissions separately. |
Open the file with your distribution’s package installer first so it can report dependencies and compatibility. If it says a dependency version is unavailable, don’t force the installation. Check your distribution, architecture, and software repositories before deciding whether the package is suitable. Changing the file extension won’t convert it to another package format.
The desktop environment’s system proxy may not cover every app. Browsers, terminal tools, and standalone network apps may each use different proxy settings. Test with one app first, then expand coverage one app at a time. If you use TUN, understand the permission and routing changes involved, and check that your normal network settings are restored after exiting.
Check the client, service configuration, and traffic routing separately. Verify a basic connection before adding custom rules; this makes problems easier to isolate.
Import a single share link from the clipboard. Add subscription URLs under a subscription group, then update it. Don’t use a subscription website’s information page URL in place of its subscription endpoint, and never post a full subscription URL in a public support request.
If the list is empty after an update, check that the URL is complete and reachable, then temporarily clear any keyword filter. A successful client download doesn’t mean the subscription endpoint is accessible; troubleshoot those connections separately.
Subscription formats and import options →On desktop, start with the system proxy; on Android, use VPN mode for your first test. v2rayNG’s “Proxy only” mode exposes a local proxy but doesn’t route every app through it automatically. Use it when you know how to configure an app to use that proxy.
Per-app proxy settings control which apps use the connection. Start with a small, simple selection, confirm that your browser works, then add apps one at a time. Don’t run multiple clients that manage network traffic simultaneously.
Choose a mode and test the connection →Back up your settings before changing routing, DNS, or TUN. If something goes wrong, revert the latest change, restart the connection, and test again. For certificate errors, check the system time and service configuration instead of disabling certificate validation.
To help diagnose a problem, note the error message, client name, system architecture, and steps that led to it. Logs may contain server addresses or authentication details; remove sensitive information before sharing them, and store backups securely.
Advanced routing, DNS, and configuration →Troubleshoot “won’t install,” “won’t start,” and “won’t connect” separately. For installation failures, check the package format, architecture, and OS requirements. If the app won’t start, check its runtime components, permissions, and error message. If it opens but won’t connect, check the subscription, selected configuration, system time, and proxy mode. Repeatedly switching installers won’t fix server authentication or routing issues.
If a download is interrupted, check your browser’s download history and available storage, then click the appropriate link again. Wait until the file is fully downloaded before opening it with the installer. Renaming a saved file in your browser doesn’t change which download you chose, but note the client, platform, and architecture when troubleshooting so you can distinguish between downloads.
The displayed version and actual filename may be maintained separately in the manifest; the page doesn’t infer an upgrade path from them. After installation, check the client’s About page for the actual version and keep a working copy of your configuration. If a new problem appears, review your most recent changes instead of resetting subscriptions, ports, DNS, and every routing rule at once.
Most mainstream phones released since 2015 are best suited to arm64, but the supported app architecture depends on the operating system. A 64-bit processor does not necessarily mean the OS supports 64-bit apps. If you are unsure which architecture your device supports, try the universal build. If installation still fails, check OS compatibility and the installer’s error message.
The Desktop version uses a newer cross-platform UI, while the classic WPF version has a traditional Windows desktop interface. New users can start with Desktop; if you’re familiar with WPF, you can stick with the classic stable version. Back up your settings before switching, and don’t let both versions manage the system proxy at the same time.
Open About This Mac from the Apple menu and check the Chip or Processor field. Choose Apple Silicon for an Apple M-series chip, or Intel for an Intel processor. Match the installer architecture to your Mac’s hardware.
The installer contains only the client, not a working service configuration. Import a valid subscription or share link, select a configuration, and start the connection. On Android, approve the VPN request. On desktop, enable the system proxy or configure an app proxy as needed.
Use the client’s backup or export feature to save your configuration first. Note your subscription groups, routing, DNS, per-app proxy rules, and local listening ports. Keep backups somewhere you control, and don’t share configuration files containing subscription URLs or authentication details.
The displayed version and download link come from separate manifest fields, so they may temporarily be out of sync. Don’t edit the download URL based on the filename. After installation, check the actual version in the client’s About page. To update, return to this page and choose the download for your platform.
Visit the Help Center for installation and troubleshooting →