PROJECT V CLIENTS · CONFIGURATION

V2Ray Official Download
Clients & Guides

A resource hub for desktop and Android clients, bringing together installer selection, subscription import, and routing. Coverage includes v2rayN, v2rayNG, v2flyNG, and configuration concepts related to the Xray and V2Fly cores.

Free to use Open source Four platform options Configuration guides
PLATFORMS Windows · macOS · Android · Linux CORES Xray · V2Fly PROTOCOLS VMess · VLESS · Trojan · SOCKS LICENSE Open Source

PLATFORM ENTRY

V2Ray clients platform options

The home page only routes visitors by operating system. On the installer page, choose files based on processor architecture, package format, and client core. v2rayN is the primary option for desktop devices, while Android users can choose between v2rayNG and v2flyNG.

Windows

Use the v2rayN desktop client. The installer page explains the differences between the newer desktop interface and the classic WPF version, and covers runtime requirements, extracted installation, system proxy setup, and port conflicts.

Go to downloads

macOS

Use the cross-platform v2rayN desktop client. Before downloading, check whether the device uses an Apple Silicon or Intel processor; the relevant tab covers architecture identification, first launch, and system proxy setup.

Go to downloads

Android

For the Xray core, start with v2rayNG; choose v2flyNG when the V2Fly core is required. The installer page separates arm64 and universal builds and covers subscription import, VPN permissions, and background operation.

Go to downloads

Linux

Use the v2rayN desktop client. Installers are organized by deb, rpm, and processor architecture for common desktop distributions. After installation, configure the system proxy for the desktop environment or use the client's TUN feature.

Go to downloads

CLIENT CAPABILITIES

v2rayN configuration essentials

The client is only the graphical layer between configuration and the core. Real-world behavior depends on node parameters, protocol fields, routing order, DNS paths, and how the system hands over traffic. The four most common areas are explained below.

ROUTING

V2Ray routing

Routing rules decide whether traffic goes through a proxy, uses a direct connection, or is blocked. Common conditions include domains, destination IPs, ports, inbound tags, and protocol types. v2rayN can use preset rules or load custom JSON. Start with a small set of understandable rules, then add geosite and geoip entries gradually; more rules do not automatically mean more accurate matching. When troubleshooting, check top-to-bottom match order, the final fallback outbound, and domain resolution results to prevent the same destination from matching conflicting conditions.

Compared with a simple global proxy, routing preserves control over different types of traffic. Direct connections for services in mainland China, proxying for specific domains, bypasses for local network addresses, and ad-domain blocking can be handled separately. Logs also make it easier to confirm whether a particular rule is active.

routing.json
{
  "type": "field",
  "domain": ["geosite:cn"],
  "outboundTag": "direct"
}

OPEN SOURCE ECOSYSTEM

How the Project V, V2Fly, and Xray cores relate

V2Ray is not the name of a single graphical client. It more commonly refers to the protocol, core, and client ecosystem that grew from Project V. Understanding the division between core and interface helps identify which layer is causing a configuration problem.

From Project V to the core family

Project V established V2Ray Core and its configuration system in its early years, introducing concepts such as VMess, inbound and outbound handlers, routing, and transport layers. The community later took different maintenance paths: V2Fly continued developing and maintaining v2fly-core, while Xray developed xray-core while retaining compatibility with established configuration concepts. Both are common core implementations today, but their protocol extensions, configuration fields, and release schedules are not identical.

Graphical clients usually do not handle protocols directly. v2rayN, v2rayNG, and v2flyNG manage subscriptions, edit nodes, generate parameters, start the core, switch the system proxy, and display logs; the core they invoke performs the actual data connections. As a result, the same node may behave differently across clients because of the core type, core configuration template, or client-version compatibility. When troubleshooting, record the client name, core in use, protocol fields, and error logs rather than simply reporting that “V2Ray cannot connect.”

Open-source licenses allow developers to review code, study configuration implementations, and build derivative tools, but each project's license text, dependencies, and release method must be checked separately. The site's documentation is based on public configuration models and actual client interfaces, focusing on installation, parameter meanings, and troubleshooting order rather than treating different projects as one software package.

V2FLY

v2fly-core

The V2Fly community-maintained core continues the Project V configuration model, covering inbound and outbound handlers, routing, DNS, and multiple transport methods. v2flyNG uses this core as a graphical Android entry point and suits configurations that need to stay on the V2Fly core path.

XRAY

xray-core

The Xray core remains closely related to established V2Ray configuration concepts while adding capabilities such as VLESS and REALITY. v2rayN and v2rayNG commonly invoke Xray within their client ecosystems, although the exact support range depends on the client-core combination.

CLIENTS

Three graphical clients

v2rayN targets Windows, macOS, and Linux desktop systems; v2rayNG targets Android and primarily uses the Xray core; v2flyNG also targets Android but uses the V2Fly core. Their roles differ, so selection should not be based only on similar names.

Update mechanisms

The client, core, GeoIP data, and GeoSite data are separate components. Client updates usually affect the interface and configuration generation; core updates affect protocol handling and runtime behavior; geographic data updates affect routing-rule matching. If routing becomes inaccurate, check the data files first; if protocol fields are not recognized, verify core and client compatibility next.

Configuration compatibility

Share links and subscription formats are only configuration exchange methods; they do not guarantee that every client supports every included field. A successful import only means the client recognized the basic structure. You still need to check whether transport, security, SNI, fingerprint, and routing settings are complete. When migrating between cores, compare fields one by one instead of overwriting the original configuration.

Log-based troubleshooting

Useful logs should include the time of the event, the connection stage, and the error type. DNS resolution failures, TCP connection timeouts, TLS handshake failures, authentication-field errors, and routing misses each point to a different layer. Identify the failing layer before changing the corresponding configuration, avoiding new interference caused by changing multiple variables at once.

QUICK DIAGNOSIS

Selected V2Ray FAQs

These questions cover four areas that are most easily confused after the first installation. For a systematic diagnosis, continue to the guides, concept reference, and advanced troubleshooting manual.

Why are there no nodes after importing a subscription in v2rayN?

First, confirm that you used “Update subscriptions” rather than only adding a subscription group, and check that no characters were lost from the beginning or end of the URL. Then verify the system clock, current network connection, and client logs. If the request succeeds but the parsed list is empty, the returned format may not be supported by the client. Do not repeatedly delete all configurations; keep the original subscription entry and verify each point in turn.

View the subscription import steps →
The system proxy is enabled, but some applications still connect directly. What should I do?

The system proxy only affects applications that read that setting. Check whether the target program has its own proxy option, then determine whether it uses an independent network stack. If broader traffic capture is needed, consider TUN mode, but first ensure the node works normally in standard proxy mode and avoid multiple network tools modifying the routing table at the same time.

View the system proxy and TUN guide →
The node connects, but web pages load slowly. What should I check?

First distinguish slow DNS resolution from slow connection setup and slow content transfer. Test several destinations and watch the logs for repeated lookups or reconnects. Then check routing rules, the DNS query path, transport method, and local network. Do not rely on a single speed test, because results can vary significantly by destination, time, and route.

Open the speed troubleshooting section →
How should I choose between VMess, VLESS, and Trojan?

The protocol must match the server configuration and cannot be swapped arbitrarily in the client. Check the protocol, port, user identifier, security layer, and transport parameters supplied by the server. If you have a complete subscription, importing it directly is usually more reliable than rewriting it manually; for manual setup, compare every field with the original information.

View the protocol reference →

FIELD NOTES

V2Ray configuration and usage notes

Long-form guides on routing rules, geographic data, and the Windows installation process. Configuration snippets explain relationships between fields; actual parameters should always follow the current client interface and server configuration.

Routing

V2Ray routing rules in practice: split traffic between direct connections in mainland China and proxies abroad

Using v2rayN routing settings as an example, this guide explains the matching order for domain, ip, and geosite rules, covers common combinations for direct access, proxying, and ad blocking, and shows how to use logs and outbound tags to locate rule conflicts.

Read the full article →
Routing

How to update GeoIP and GeoSite databases: file locations, loading behavior, and rule references

Learn what geoip.dat and geosite.dat do, where they are commonly stored, and how they are loaded. The guide also explains how to verify geographic-data updates in v2rayN and v2rayNG, plus typical routing mismatches caused by stale data.

Read the full article →
Windows Guide

Complete v2rayN Windows installation and setup: choosing between the desktop and WPF versions and avoiding common pitfalls

Starting with installer types, this guide covers runtime requirements, extracted startup, subscription import, system proxy setup, and connectivity checks, along with common issues such as security-software blocks, occupied ports, insufficient permissions, and configuration-directory migration.

Read the full article →