Windows
Choose the cross-platform desktop edition or the classic Windows WPF edition of v2rayN, then import your configuration.
Go to downloadsOpen-Source ClientsDesktop and Android Setup Guides
Download a free, open-source client for your device and follow our setup guides, from subscription import to routing.
The interface on the right is for demonstration only. The example address and user ID won't connect; a working configuration must include all parameters provided by the server operator.
DOWNLOAD / Choose a device
Choose your operating system, then check your processor architecture. Use v2rayN on desktop and start with v2rayNG on Android. Consider v2flyNG when you need a V2Fly core configuration.
Choose the cross-platform desktop edition or the classic Windows WPF edition of v2rayN, then import your configuration.
Go to downloadsCheck About This Mac for your chip, then choose the Apple Silicon or Intel build. After installation, verify your system proxy settings.
Go to downloadsChoose v2rayNG for Xray or v2flyNG for V2Fly. Check your device architecture, allow VPN access, and review battery settings for background use.
Go to downloadsChoose a v2rayN deb or rpm package for your distribution and CPU. After installation, check both desktop and application proxy settings.
Go to downloadsCONFIGURATION / Core settings
A connection depends on several pieces: where the configuration comes from, how traffic is routed, whether the core can interpret the settings, and whether the app is actually using the proxy. Check these four areas one at a time to pinpoint issues more easily than changing multiple settings at once.
ROUTING
Routing determines whether requests use the proxy, connect directly, or are blocked. In v2rayN, routing and the system proxy are separate layers: the system proxy directs requests from compatible apps to the client, and routing then determines how those requests leave. Start with a preset that fits your needs. Once websites work as expected, add rules for specific domains or addresses.
When troubleshooting one website, first check whether its domain matches the expected rule, then review rule order and DNS resolution. A connected status doesn't mean all traffic uses the proxy, and you shouldn't copy another client's rule file without checking compatibility. Desktop and Android clients have different settings, and per-app proxy rules may further limit which apps are covered. See the v2rayN setup guide for the recommended checks.
SUBSCRIPTION
A subscription URL retrieves a set of server configurations; an individual share link usually contains just one. Before importing, identify what you have. Add subscription URLs in a subscription group and update it. For a single server link, use the appropriate option, such as importing from the clipboard. After importing, select a server and set it as active.
If an update fails, determine whether the URL is unreachable, returns no content, or contains data the client can't parse. Don't delete the entire group right away. Keep any working configurations, check that the URL is complete and access requirements haven't changed, then try again. Subscription URLs may contain credentials, so redact them before sharing screenshots or logs. For more help, see subscription troubleshooting. Reinstalling repeatedly won't fix incorrect parameters.
CORE
The core handles protocols and connections; the GUI client presents settings and manages configurations. Xray and V2Fly are both part of the open-source Project V ecosystem, but their features and configuration syntax aren't identical. For REALITY or XTLS Vision, confirm that your client and core support the required features—successful import alone doesn't guarantee compatibility.
The specific cores supported by v2rayN depend on the build and its settings. On Android, distinguish between v2rayNG, which uses Xray, and v2flyNG, which uses V2Fly. When migrating, check the flow, transport security, server name, and all other required parameters. Don't treat these as simply newer and older versions of the same client. Compare the configuration requirements for each core below.
REALITY configuration: Check the public key, server name, short ID, and fingerprint required by the server. If you're using Vision, the flow must also match the server settings. The security mode isn't a cosmetic option you can swap at will.
Configuration compatibility: Set the protocol, transport, and TLS parameters supported by V2Fly. If migrating a configuration with Xray-specific fields, check that they're supported first—successful import doesn't guarantee it will work.
LAN
Other devices on the same local network can use the proxy through the host's listening port. First check the listener settings in v2rayN, then enable “Allow connections from the local network” if needed. On other devices, enter the host's LAN address and actual listening port—not their own loopback address. Sleep mode, a changed address, or a firewall block can interrupt the connection.
Enable sharing only on trusted networks, and limit firewall access to the networks or devices that need it. The system proxy doesn't automatically route traffic from every type of connection; TVs, phones, and other computers need to be configured separately. If you only use the proxy on the host, leave LAN access disabled. See how to allow LAN connections in v2rayN. First confirm the host can connect, then check connectivity between devices.
QUICKSTART / Get started in three steps
First verify that one configuration connects, then adjust routing and background settings. Desktop and Android clients have different controls, but the steps are the same: prepare a configuration, select a server, and confirm the traffic route.
Open the client and identify whether you received a subscription URL, a share link, or manual parameters. Add subscription URLs to a subscription group and update it; use the matching import option for share links. For manual setup, enter the protocol, address, port, and credentials individually. Once an entry appears in the list, check that its protocol and transport match the original instructions. Don't copy example values from the tutorial interface.
Updating a subscription and updating a client are different operations. The first refreshes the server list; the second replaces the app. If a subscription update fails, keep existing entries and check the URL and network access first. There's no need to clear all your settings.
Select a configuration from the list and set it as the active server. On desktop, check the system proxy mode and choose a suitable routing preset. On Android, authorize the system VPN when connecting and check whether per-app proxying is enabled. If an app is excluded from the proxy, its results can't tell you whether the server is working.
When setting things up for the first time, run only one client that manages system network settings. Multiple proxy tools changing those settings can leave your browser pointing to an old port. After switching apps, check the proxy address again rather than just looking for an icon in the taskbar.
After connecting, use an app that's definitely covered by the proxy to visit the test page, and check the client logs. Establishing a server connection, resolving a domain, and loading a webpage are separate checkpoints. A successful connectivity test doesn't prove every app is configured correctly. Test both destinations that should connect directly and those that should use the proxy to confirm routing works as intended.
For timeouts, start with the local network and server parameters. If only the browser fails, check system proxy and browser settings. If the connection drops when the screen locks, check background restrictions. Note each change and make one at a time so you can identify what actually fixed the issue.
OPEN SOURCE / Clients and cores
Understanding the roles of clients and cores helps you decide whether a download, configuration, or guide applies to your setup. Similar names don't guarantee identical features, and protocol support depends on the specific build.
Project V is an open-source ecosystem of proxy tools and related technologies. V2Ray is the name of a core project in the ecosystem, and the V2Fly community has continued related development and maintenance. Xray grew from related code into an independent core branch with its own development path. The branches share some concepts, but their configuration fields, transport features, and release schedules don't always align.
v2rayN, v2rayNG, and v2flyNG are GUI clients for end users. They provide interfaces for managing server lists, subscriptions, routing, and status, then pass traffic to the relevant core. Keep the client name, app build, and core capabilities distinct: seeing a protocol name in the interface doesn't mean every combination of additional parameters is supported. Server settings must also match the server configuration.
Open source means the projects' code and license terms are available for review, discussion, and improvement. Reuse and redistribution must still comply with each project's license, and the client and included components may have different terms. For everyday use, focus on the app documentation, core changes, and configuration compatibility rather than assuming that “open source” means every configuration will work.
An open-source desktop client for managing servers, subscription groups, routing, and system proxy settings. The desktop and WPF editions differ mainly in interface technology, platform support, and runtime requirements. Choose based on your operating system and preferences; connection support also depends on the core and your configuration.
An open-source client for Android that uses the system VpnService to route traffic from selected apps. It works differently from a desktop system proxy. First-time authorization, per-app scope, and background battery settings are all part of setup. For Xray-specific features, check the client core and server parameters.
An open-source client for Android, suited to configurations that require the V2Fly core. Choose it for configuration compatibility—not as an interchangeable version of another Android client with a similar name. Before migrating, keep your existing settings and check that the protocol, transport, and security options are supported.
FIELD NOTES / Practical tips
Once the basic connection works, learn about LAN sharing, desktop editions, and Android background activity. Each article covers a specific setting, so you can find guidance for the issue at hand.
Learn how to enable “Allow connections from the local network,” enter the host IP and port on other devices, configure firewall access, and troubleshoot common connection problems.
Read the LAN sharing guide →Compare the cross-platform Avalonia edition with the Windows-only WPF edition, including their interfaces, system integration, and runtime requirements. Choose a build that fits your system and preferences.
Read the edition comparison →Use your system's battery stats to identify what's draining power, understand the trade-offs of background activity and battery optimization, then check connection settings and wake frequency. Avoid disabling every restriction without checking first.
Read the battery troubleshooting guide →