Android setup · Desktop downloadsXray / v2fly

V2Ray Android Clientv2rayNG downloads and setup

Start by importing a subscription, then configure routing and DNS as needed. Use v2rayNG on Android and v2rayN on desktop.

Open sourceSetup guidesVMess / VLESS / Trojan / Shadowsocks

v2rayNG: key settings

First, make sure the configuration connects. Then add rules one at a time. These four settings handle different tasks: choosing a route, organizing the list, resolving domains, and selecting which apps connect. They are not interchangeable switches.

{
  "rules": [
    {
      "type": "field",
      "ip": ["geoip:private"],
      "outboundTag": "direct"
    },
    {
      "type": "field",
      "domain": ["geosite:cn"],
      "outboundTag": "direct"
    }
  ]
}

Routing rules determine which outbound handles a request. In v2rayNG, routing settings can match domains and IPs by category. Rule order matters: put specific exceptions before broader rules. This example sends LAN IPs and selected domain groups to the direct outbound; the configuration must include a `direct` tag and the corresponding rule data. Unlike subscription filters, routing does not hide servers—it chooses where traffic goes when a connection is made. After making changes, reconnect and check the client logs to confirm which rules matched. Do not judge the entire routing setup solely by whether a webpage loads.

Read the in-depth guide →

Downloads for four platforms

Choose the operating system first, then the processor architecture. Similar client names do not mean their installers are interchangeable. The links below open the corresponding platform section of the download page, where you can check available files and release details.

v2rayN · Recommended for desktop

The download page offers a desktop edition and the classic WPF edition. The desktop edition uses a newer cross-platform interface, while WPF retains the familiar classic layout. Choose one to get started; you do not need both just to import the same subscription.

After enabling the system proxy, check whether your apps follow it. For broader traffic interception, learn about TUN mode and its permission requirements. The system proxy and TUN are not the same thing.

Go to downloads

v2rayN · Choose by processor

Choose the Apple Silicon or Intel download for your device. Check the chip under About This Mac, then download the matching file instead of guessing from its filename.

When you first open the app, follow the system prompts for permission to run it and access the network. If the app opens but your browser does not use the proxy, check the system proxy status and listening address before reimporting all your nodes.

Go to downloads

v2rayNG · v2flyNG alternative

Start with v2rayNG, which uses the Xray core. Choose v2flyNG if you need a v2fly configuration. Most recent devices use arm64; if you are unsure of the architecture, check your device information or use the universal build.

On the first connection, approve the system VPN request. If another VPN is already connected, check for conflicts. For ongoing use, review background and battery restrictions so the system does not stop the connection when you switch apps.

Go to downloads

v2rayN · Choose by distribution

Choose deb or rpm based on your distribution's package manager, and select the right architecture: x64 or arm64. The desktop client manages configuration, but you may still need to check your desktop environment, proxy settings, and individual app behavior.

If your browser connects but other programs do not, first check which proxy protocol and local port those programs use. Before enabling TUN, verify the required permissions and how it handles routing and DNS, and make sure you know how to restore your previous settings.

Go to downloads

A client is not a proxy service. Installing it lets you load configurations and start connections, but you still need a subscription or server configuration you are authorized to use. Treat subscription URLs as account credentials. Do not include them in public screenshots, discussion posts, or shared documents.

Import a subscription and connect for the first time

For your first setup, follow this order: add a configuration to the list, route traffic through the client, then test it in the apps you use. Start with one node and establish a repeatable connection before adding automatic updates, routing rules, or app selection. This makes it easier to identify what changed if something goes wrong.

01

Add a subscription or share link

In v2rayNG, open Subscription groups from the side menu, enter a group label and subscription URL, save, then return to the main screen and update the subscription. In v2rayN, add the source under Subscription groups and run Update subscription. Menu labels may vary slightly between releases; the key is to save the source before fetching its contents.

Individual share links beginning with vmess://, vless://, trojan://, or ss:// are usually imported through the clipboard configuration option. A subscription URL retrieves a set of configurations; its length alone does not tell you which type it is. After updating, check that the node names, protocols, and groups look right.

02

Select a node and connection mode

Select a valid configuration. On Android, start with VPN mode, tap Connect, and approve the system request. Proxy-only mode requires apps to use the local proxy themselves and does not provide system-wide traffic interception. On desktop, first check that the system proxy is enabled, then confirm whether your browser uses the system proxy or its own proxy settings.

For your first connection, leave Mux, complex DNS settings, and custom outbounds disabled. Keep the server address, port, transport parameters, TLS, and SNI consistent with the server requirements. Do not remove or change fields just to make the configuration look simpler. If you see a certificate error, check the system time and domain first; disabling certificate verification is not a routine fix.

03

Test apps and routing rules

Once the connection status shows that the service has started, test the target app and then check the client logs. A successful startup only means the local service is running; it does not confirm that the remote handshake, DNS resolution, and target connection all succeeded. Test both traffic that should use the proxy and LAN access to catch any direct-connection requirements.

If only a few apps fail, check per-app proxy settings and each app's own proxy configuration. If all domains fail, check DNS, server reachability, and handshake errors. Change one variable at a time and record the results. Once the connection is stable, add rules gradually so you can roll back changes if problems arise.

Project V, V2Fly, and Xray

How clients and cores fit together

Clients manage configuration; cores handle connections

Search for the V2Ray official site, V2Ray downloads, or the Xray core and you may see project, core, and client names used interchangeably. When choosing software, first identify the user interface, then check which core runs the configuration. This helps avoid installing an app and then looking for settings with a different product name.

Project VV2Fly / v2flyXray
About this site and its editorial approach →

Project origins and core families

Project V is the open-source ecosystem behind a range of proxy communication tools, with V2Ray as one of its best-known project names. V2Fly continues related community development, and the v2fly core handles protocol processing and network connections. Xray is another core family that grew out of related technology. They share some configuration concepts, but their supported features and field behavior are not necessarily identical.

Before using a configuration, check which protocols and transports it requires, then confirm that the client's built-in or selected core supports them. VMess, VLESS, Trojan, and Shadowsocks are protocol names; transport methods, TLS, security parameters, and domain settings belong to other layers. A matching protocol name alone does not mean the entire configuration can be migrated as is.

Open-source status of the three clients

v2rayN, v2rayNG, and v2flyNG are all open-source graphical clients. v2rayN is for desktop environments, with configuration lists, subscriptions, and proxy controls. v2rayNG is for Android and pairs Xray core capabilities with VPN-based traffic interception and per-app settings. v2flyNG is another option for Android users who need the v2fly core. This site organizes downloads and guides for these three clients without conflating core software with graphical installers.

Open-source licenses set the terms for using, modifying, and redistributing code; they do not replace the need to assess subscription sources, server operators, or device permissions. The client interface, core, and dependencies may each use different licenses, so check the applicable terms before redistributing or developing a derivative. For everyday use, understand the server addresses, credentials, and certificate settings in your configuration. Avoid importing a complete custom configuration from an unknown source if you cannot verify what it does.

Updates and configuration migration

Updating a graphical client, updating its core, and updating a subscription are three different things. A client update may change menus or how configurations are generated. A core update may alter protocol support or field requirements. A subscription update simply fetches the configuration published by the service provider. A changed node list does not necessarily mean the client was updated, and a new switch in the interface does not mean your current subscription should use it.

Before updating, note your operating mode, group labels, custom routing, and DNS choices. Use the client's export or backup feature to save any settings you want to keep. After restoring a configuration, test a basic connection before restoring advanced options one by one. When moving between clients, use a sharing format supported by both rather than assuming that full configuration files, interface preferences, and local group data are interchangeable.

Scope of these setup guides

This site organizes download links and usage guides. It is not an official release channel for Project V, V2Fly, or Xray, and it does not provide proxy subscriptions. Guides use common menu names to explain the steps, but the available options depend on your installed client version. For work devices, managed networks, or system permissions, follow your organization's device policies and make sure your use complies with local laws and applicable service terms.

Before setting up TUN, FakeDNS, multiple subscriptions, or custom outbounds, keep a working basic configuration and then consult an advanced guide. Complex settings are useful when they address a specific need; enabling more switches is not a goal in itself. When troubleshooting, the stage and details of an error in the logs are more useful than simply saying that it does not work. Remove subscription URLs, account credentials, and personal network details before sharing logs.

Open the advanced setup guide →

Client tips and tutorials

Practical guides start with a specific setting or error and walk through checks you can verify one by one. Identify whether the issue occurs during installation, subscription import, the handshake, or traffic interception, then choose the relevant article. This keeps problems at different layers from getting mixed together.