V2Ray FAQ: Subscription Import, Node Connection & Troubleshooting

Covers common questions about v2rayN and v2rayNG, including subscription import, node connection, system proxy, TUN mode, and routing rules, with troubleshooting steps and directions.

Basics

Understanding V2Ray and Clients

What is the relationship between V2Ray, v2rayN, and v2rayNG?

V2Ray is the core of the Project V initiative, handling network protocols and data forwarding. v2rayN is a graphical desktop client for Windows, macOS, and Linux, while v2rayNG is the Android client. Both are simply graphical frontends for the V2Ray core, responsible for managing subscriptions, selecting nodes, and handling connections.

What is the difference between the VMess and VLESS protocols?

VMess is V2Ray's original encrypted transport protocol, with built-in user ID and encryption layer. VLESS is a later lightweight protocol that removes VMess's redundant encryption and is typically used with TLS/XTLS or REALITY, offering lower performance overhead. When a subscription mixes both protocols, the client handles each node's configuration automatically, so no manual distinction is needed. When choosing nodes, focus on latency and stability rather than protocol type.

What is the relationship between a subscription link and a node?

A subscription link is a URL that, when requested by the client, returns configuration data for a set of nodes. A node is a collection of specific server address, port, protocol, and encryption parameters. After importing a subscription, the client parses the nodes from the link into a list for switching. Updating the subscription refreshes the node list but does not affect custom nodes you've saved.

What is the difference between the client and the core?

The core (Xray or V2Fly) handles the actual proxy connection and data forwarding, while the client handles the interface, subscription management, and system settings. v2rayN uses the Xray core, v2rayNG also defaults to Xray, and v2flyNG uses the V2Fly core. Core versions are upgraded along with client updates, so users don't need to maintain the core separately.

Installation & Setup

Installation and Subscription Configuration

How do I install v2rayN after downloading it?

Extract the downloaded ZIP archive to a path without non-ASCII characters, then run v2rayN.exe. Windows 10 and later usually don't require additional runtime installation. If a missing .NET component is reported, install the .NET Desktop Runtime first, then launch. The first run generates configuration files, so no manual editing is needed.

What should I do if subscription import fails?

First make sure the subscription link is copied in full (without spaces or line breaks), then check for extra characters in the link. If the network environment can't directly access the subscription domain, enable the proxy and retry. v2rayN supports importing from the clipboard; paste and click "Confirm". If it still fails, try a different subscription URL or contact your subscription provider.

How do I troubleshoot when the system proxy isn't working?

In v2rayN's parameter settings, confirm that "System Proxy" mode is enabled, and check whether your browser is using the system proxy settings. If the browser uses a proxy extension, it overrides the system proxy, so you'll need to disable the extension or manually point it to the local port. On Windows, you can view the current system proxy status in Settings > Network > Proxy.

What permissions are required to enable TUN mode?

On Windows, TUN mode requires administrator privileges, and the client will request UAC elevation on startup. On Android, you need to grant VPN permission, and the system will show a confirmation dialog. Once enabled, all traffic goes through the virtual network adapter, so you don't need to configure a proxy for each app. If permission is denied, TUN mode won't work, but system proxy mode will still function normally.

How do I choose between arm64 and universal builds of v2rayNG?

Most mainstream Android phones released after 2015 use arm64 CPUs, so download the arm64 build. For older or special devices, choose the universal build. Both versions have identical node configuration and subscription management features; the only differences are package size and compatibility. If you're unsure, the universal build is safer but takes up a bit more storage.

Usage Tips

Connection and Routing Tips

How do I test node latency and availability?

In v2rayN's node list, right-click and select "Test Real Connection". The client will initiate a real connection based on the current node configuration and display the latency result. Low latency doesn't guarantee availability; you also need to check the connection success rate. It's recommended to test multiple times during peak hours and use a stable value as a reference.

How do I handle subscription update failures?

Check whether the subscription URL has expired, or try updating the subscription from a different network. v2rayN supports automatic updates; you can adjust the update interval in subscription settings. If updates fail frequently, delete the old subscription and add it again. Some subscription services have access rate limits, and refreshing multiple times in a short period may result in a temporary ban.

How do I set up routing rules to direct mainland China traffic directly and foreign traffic through the proxy?

In v2rayN's routing settings, add rules: geosite:cn goes direct, geolocation-!cn goes through the proxy. The exact syntax is geosite:cn → Direct, geolocation-!cn → Proxy, arranged in that order to ensure mainland China traffic doesn't go through the proxy server. Rule order is important; once a rule matches, the client won't continue matching further rules.

How do I change the port if 10808 is already in use?

Open Command Prompt and run netstat -ano | findstr 10808 to find the process using the port, then end that process or use a different local port. After changing it, update the port in your browser's proxy settings as well. v2rayN's parameter settings allow you to customize the local listening port; the defaults are 10808 and 10809.

Can the client connect to multiple nodes at the same time?

v2rayN supports load balancing. You can add multiple nodes to the same node group and enable load balancing, and the client will distribute traffic according to the strategy. However, for typical use, a single node is sufficient. Multi-node load balancing is for specific needs, and you should understand the routing strategy before configuring it. In load balancing mode, the client periodically checks node status and automatically switches to available nodes.

Troubleshooting

Connection Troubleshooting

What should I do if all nodes show timeout?

First check whether the system time is synchronized with real time; a large time offset can cause TLS handshake failures. Then confirm whether the node subscription has expired. Finally, try switching to a different network environment (e.g., from Wi-Fi to mobile hotspot) and test again. If all nodes time out, the current network may be interfering with the proxy protocol.

How do I troubleshoot step by step when connected but unable to browse?

Check in order: ① whether the node is available, ② whether the system time is accurate, ③ whether DNS resolution is working, ④ whether the system proxy points to the correct local port, and ⑤ whether routing rules are incorrectly sending target traffic direct. Each item has a corresponding verification method; see the troubleshooting checklist article on this site for details.

What should I do if the client crashes or closes on startup?

On Windows, first confirm that the .NET Desktop Runtime is installed, then check whether the extraction path contains non-ASCII or special characters. On Android, try clearing the app cache or reinstalling. If security software is blocking it, add the client directory to the whitelist and retry. Startup crashes are usually related to missing runtimes or file permissions.

Does time synchronization affect connections?

Yes, it does. The VMess and VLESS protocols rely on timestamp verification. If the system time differs from actual time by more than 90 seconds, node connections will be rejected. On Windows, you can enable automatic time sync in Settings; on Android, enable automatic date and time. When a connection fails, check the time first—it can resolve many strange issues.

Why is the node list still old after updating the subscription?

Check whether the subscription group has been switched to the new group, or delete the old group and import again. v2rayN's subscription groups are independent. If you've added multiple groups, confirm which one is currently selected in the group dropdown. The node list refreshes automatically after a subscription update; if nothing changes, you may have selected the wrong group.

Still have questions?

Check out the detailed tutorials or head to the download page to get the client. More configuration details can be found in the advanced configuration guide.