Client installation Subscription setup Routing

V2Ray Client Guides

From platform selection through routine maintenance, this site brings together installation links for four platforms, subscription import steps and routing methods. Choose a client for your device first, then follow the guide to complete the connection, mode settings and updates.

Free forever Open source Xray and V2Fly core ecosystem Documentation in Chinese
Core features

Subscriptions, routing and multi-platform clients

Graphical clients turn core configuration into manageable subscription, group, routing and system proxy options. Understanding what each layer handles makes it easier to keep a stable setup than repeatedly switching buttons.

01 · Subscription management

Multiple subscription groups and node filtering

Subscription links deliver server configurations in batches, while the client handles updating, organizing and selecting them. Both v2rayN and v2rayNG let you assign separate notes to different subscription sources, making it easier to keep daily, work and temporary setups apart. Before updating, confirm the active group; afterward, check keyword filters and sort criteria. This helps avoid mistaking an imported configuration hidden from the list for a failed update. A subscription is only the configuration source: routing rules, the system proxy and per-app settings still need to be managed separately in the client.

Daily subscriptionAuto-update
Filter rulesKeep common tags
Sort byName
02 · Routing

Choose an outbound path by domain, address or app

Routing rules determine which connections use the proxy, connect directly or are blocked. Rules generally run from specific conditions to broad ones, so precise domain or address rules should appear first. Reconnect after editing so the new route applies to the current session. When results differ from expectations, check the matched rule first, then the proxy mode; do not confuse subscription quality with routing configuration.

{
  "type": "field",
  "domain": ["geosite:cn"],
  "outboundTag": "direct"
}
03 · Platform coverage

The same configuration approach across desktop and Android

Windows, macOS and Linux can use v2rayN, while Android users can choose between v2rayNG and v2flyNG. Menus differ between interfaces, but the workflow is similar: import a subscription, select a configuration, choose a proxy mode, connect, then use logs to diagnose issues. When moving between devices, migrate subscription sources and essential routes first rather than copying every local option. This reduces problems caused by differences in system permissions and network interfaces.

04 · Core ecosystem

Client wrappers for Xray and V2Fly

The graphical client handles the interface, subscriptions, system proxy and configuration management; the underlying core handles protocols and transport. v2rayNG generally targets Xray core capabilities, v2flyNG follows the V2Fly maintenance path, and v2rayN provides a unified desktop entry point for managing cores and configurations. You do not need to memorize every protocol detail before choosing a client. Confirm that the protocol, transport layer and security layer required by the configuration provider are supported by the active core, then keep the client and core components updated together.

Project V ecosystem
Xray
V2Fly
v2rayN v2rayNG v2flyNG
Platform entry points

Choose a client by operating system

Identify your device platform and processor architecture first, then open the matching tab. The download page groups each platform’s clients, interface versions and package types together.

Windows

For desktop systems, start with v2rayN. Choose the interface and package that match your workflow and system architecture, then install it in a folder with normal read/write permissions.

Go to downloads

macOS

When using v2rayN on macOS, identify the processor type first. Apple Silicon and Intel packages are not interchangeable; check the chip name in System Information. If macOS shows a permission prompt on first launch, follow it before configuring the system proxy or TUN.

Go to downloads

Android

On Android, choose v2rayNG for the Xray core path, or v2flyNG when the configuration calls for it. Most recent devices can start with an arm64 package; if the architecture is unclear, choose the universal build. The first connection requires authorization for the system VPN service.

Go to downloads

Linux

On a Linux desktop, use v2rayN and select a deb or rpm package for your distribution. You also need to distinguish between x64 and arm64. After installation, confirm the desktop environment, system proxy and required network permissions before importing a subscription; this makes permission and interface issues easier to isolate.

Go to downloads
View all clients →
Quick start

Three stages from installation to connection

You do not need to adjust every advanced option during initial setup. Establish a basic connection first, then add routing and TUN step by step. This also makes it easier to identify where a problem was introduced.

  1. 01

    Choose a client and install it

    On desktop devices, open the v2rayN download section for the relevant platform. On Android, choose v2rayNG or v2flyNG according to the required core. Match the package to your system architecture. After first launch, locate the subscription, server list, system proxy and log views before changing core parameters.

  2. 02

    Import a subscription and choose a configuration

    In subscription management, add the URL and a note, then update and confirm that the configuration appears in the expected group. If the list is empty, check the subscription URL, active group and filter keywords in that order. After selecting a configuration, keep the default transport parameters initially to avoid overwriting values delivered by the subscription.

  3. 03

    Connect, verify and save your daily mode

    After connecting, confirm that the client status matches the system proxy, then open the logs to inspect the configuration load result. Only after the basic connection works should you set bypass rules, per-app proxying or TUN. Change one category of setting at a time and reconnect after each change to keep troubleshooting clear.

View the full guide →
Ecosystem and maintenance

How Project V, V2Fly and Xray relate

Clients, cores and protocols are separate layers. Keeping them distinct helps you choose software more accurately and prevents interface issues from being mistaken for protocol problems.

Understand clients through the Project V ecosystem

Project V developed an open-source ecosystem around proxy protocols, transport methods, routing rules and configuration formats. V2Ray is often used as a broad name for this ecosystem, but in practice users usually work with three parts: the graphical client, the underlying core and the subscription configuration. The graphical client manages the interface and system integration, the core parses protocols and handles connections, and the subscription service provides importable configuration sets. Their release schedules differ, so troubleshooting starts by identifying which layer is involved.

V2Fly and Xray are two core maintenance paths

V2Fly continues the Project V community maintenance direction, retaining mature configuration structures and protocol support. Xray extends protocol, transport and security-layer capabilities along a related configuration path. They are not simply different interface versions; their underlying implementations and feature roadmaps differ. When a configuration includes VMess, VLESS, TLS, REALITY or a specific transport, first confirm that the core used by the current client recognizes the relevant fields.

Open-source licensing and community updates

v2rayN, v2rayNG, v2flyNG and the related cores are maintained by the community, with source code and licensing information available publicly. Open development makes configuration formats, change records and issue discussions reviewable, while allowing clients to follow changes in underlying capabilities. For most users, a practical maintenance routine is to follow stable releases, read change notes, keep working configuration backups and record the existing proxy mode and routing choices before making broad changes.

Keep configuration boundaries when updating clients

Client upgrades, core upgrades and subscription updates address different concerns. Client upgrades mainly affect the interface, system integration and configuration management; core upgrades may change protocol compatibility and runtime behavior; subscription updates refresh server configurations. Run these three update types separately when possible and test the basic connection after each. If the client, core and subscription all change at once, it becomes difficult to identify the cause of a problem.

Desktop client

v2rayN

Graphical clients for Windows, macOS and Linux that manage subscriptions, servers, the system proxy, routing and TUN in one place. They suit users who maintain multiple configuration groups on desktop systems or prefer diagnosing connection issues through detailed logs.

Android · Xray

v2rayNG

A commonly used Xray-core client for Android, with subscription management, per-app proxying, routing controls and access to the system VPN service. Stable mobile operation also depends on battery-saving policies, background permissions and vendor process-management settings.

Android · V2Fly

v2flyNG

An Android client following the V2Fly core maintenance path, with an interface similar in some ways to v2rayNG. It suits configurations that explicitly require V2Fly behavior or situations where compatibility between the two core paths needs to be evaluated.

Selected FAQs

Four things to confirm before installation and setup

Most first-use issues involve platform selection, subscription updates, proxy mode and system permissions. Establishing a clear check order is usually more effective than repeatedly reinstalling the client.

How should I choose between v2rayN and v2rayNG?

Choose v2rayN for Windows, macOS and Linux desktops. Android devices typically use v2rayNG; when a configuration explicitly follows the V2Fly core path, v2flyNG is also an option. Client names differ, but the basic workflow—import a subscription, select a configuration, connect and check logs—is similar. For detailed steps, continue with the quick start guide.

Why is the server list unchanged after a successful subscription update?

First confirm that you updated the active subscription group, then check the filter keywords, sort method and hidden conditions above the list. Some clients retain the current search state, so newly imported configurations may be hidden by a filter and make the list appear unchanged. Clear the filter, reopen the group, then check the subscription timestamp and log messages.

What is the difference between the system proxy and TUN mode?

The system proxy mainly handles applications that follow the operating system’s proxy settings. It is straightforward and a good starting point for a first connection. TUN uses a virtual network interface to handle a broader range of traffic, but requires extra permissions and may conflict with other network software. Verify the system proxy first, then enable TUN if your use case requires it.

Should I check the subscription or routing first when a connection fails?

Check the logs first to see whether the configuration loaded successfully and whether the active configuration can establish a basic connection. If it cannot, prioritize the subscription contents, time settings, protocol fields and network permissions. Only when the connection works but a specific domain or app takes the wrong path should you inspect route order, proxy mode and per-app settings.

Guide updates

Recent configuration and troubleshooting articles

Repeatable steps for Android authorization, background operation and managing multiple subscriptions. Each article focuses on one issue and is best read as needed after the basic configuration is complete.

v2rayNG on Android: VpnService authorization, battery-saving exceptions and per-app proxy settings

Covers first-connection authorization, background-operation permissions and per-app proxying, including how these settings affect one another.

Read the full article

What to do about high v2rayNG battery usage: background keep-alive and battery-optimization checks

Start with background restrictions, connection keep-alive, log levels and runtime duration to distinguish normal usage from abnormal persistent wakeups.

Read the full article

Practical multi-subscription group management: server filters and node-selection tips

Covers naming notes, group boundaries, keyword filters and sort methods for multiple subscription sources, keeping the daily list clear.

Read the full article
View all articles →
Download v2rayN