HELP / CLIENT CONFIGURATION

Frequently Asked V2Ray Questions

Subscription, system proxy, and connection issues. Identify where the problem occurs, then follow the relevant checks. Change one setting at a time and keep a reproducible error message.

CONCEPTS

Getting Started

Understand the difference between clients, cores, subscriptions, and traffic routing.

What do V2Ray, its core, and graphical clients each do?

V2Ray is part of the Project V proxy ecosystem, with V2Fly and Xray as related core families. The core handles protocols, connections, and routing; graphical clients let you edit settings, manage subscriptions, and start the core. v2rayN is for desktop platforms, v2rayNG uses the Xray core, and v2flyNG uses the V2Fly core. Downloading a client does not provide a working server configuration—you still need a subscription or node details you are authorized to use.

Which client should I use on desktop or Android?

For Windows, macOS, and Linux desktops, start with v2rayN. On Android, try v2rayNG; consider v2flyNG if you need compatibility with the V2Fly core. The Windows download section offers Desktop and WPF interfaces: the former is cross-platform, while the latter uses the classic WPF interface. Choose based on your operating system, processor architecture, and protocol support. Being able to import the same link into another client does not guarantee that all transport settings are compatible.

What’s the difference between a subscription link and a single-node share link?

A subscription link typically points to a set of server configurations, which the client fetches again whenever you update the subscription. A single-node share link usually starts with a protocol name and describes one connection. Use the appropriate import option for each; link length alone does not tell you whether it is a subscription. Subscription URLs may contain account identifiers and access credentials, so treat them as sensitive. When asking for help, describe the error without sharing the full URL, QR code, or screenshots that reveal credentials.

How do system proxy settings, routing presets, and TUN mode differ?

The system proxy directs apps that follow system settings to a local proxy port. Routing presets decide whether requests entering the core go direct, through a proxy, or are blocked. TUN mode receives traffic through a virtual network interface; its coverage depends on the implementation, permissions, and routing settings. These work at different layers, so none is a single switch that replaces the others. For initial setup, leave TUN off and verify the connection with the system proxy. Enable TUN only if needed for apps that do not follow system proxy settings.

INSTALL / IMPORT

Platforms

Start with the installation package architecture, then check imports, proxy settings, and permissions.

Subscription import failed or no nodes appeared. What should I check?

Make sure you copied the complete subscription URL, with no leading or trailing spaces, line breaks, or punctuation added by a messaging app. In v2rayN, save the URL in a subscription group, then update that group. On Android, save it in the subscription settings and run an update. Saving the URL does not mean the nodes have been fetched. If the list is still empty, check the update log to distinguish a network request failure, unparseable response, or response with no valid nodes. Web login URLs, plan information pages, and expired subscriptions cannot be imported directly as node subscriptions.

Which Android package should I choose: arm64 or universal?

Check the processor and the app architectures supported by your device and operating system. Most mainstream phones released after 2015 are likely to support arm64, but a 64-bit processor does not guarantee that the installed system can run 64-bit apps; check your device specifications. If you’re unsure, choose universal. It usually includes components for multiple architectures, so the package is larger. If the package cannot be parsed or installed, also check the OS version, whether the download was interrupted, and whether an app with the same name came from a different signing source. Back up your settings before uninstalling.

Why isn’t the system proxy setting in v2rayN working?

Make sure the core is running and a server is selected, then choose automatic system proxy configuration in v2rayN. Open your system’s network proxy settings and check that the local address and port match the client. Browser extensions, other proxy tools, or organization policies may override these settings; some apps do not use the system proxy at all. Close conflicting tools and test with a browser that follows system proxy settings. Proxy settings are in different places across Linux desktop environments; check them manually in GNOME or KDE if needed.

TUN reports insufficient permissions. What should I do?

Turn off TUN first and confirm that a regular proxy connection works. Then address virtual interface permissions. Windows typically requires administrator privileges and the relevant driver to be available. On macOS and Linux, follow the client’s authorization prompts; don’t use unknown commands as a substitute for configuring permissions. Android requests system VPN permission on first launch. If you denied it, start the connection again and approve the request. Stop any other VPN app using the system interface. If TUN still fails, check the logs for interface creation or route configuration errors instead of repeatedly toggling the setting.

ROUTING / MAINTENANCE

Advanced

Verify the traffic path and keep subscription data separate from manual settings.

When should I use Bypass mainland China or Global proxy?

Choose a routing preset based on what you need to access, then verify how specific domains are matched. Bypass mainland China typically uses domain and IP classification rules to send matching traffic through a direct connection. Global proxy generally prefers the proxy route for requests entering the core, though the selected rules still apply. Global routing does not take over the entire device; traffic that never enters the core is unaffected. If one site has a problem, briefly switch presets to compare results. Adjust the rules once you find the cause rather than permanently widening proxy coverage to mask a configuration issue.

How can I confirm that browser traffic is going through the proxy?

Select an imported server, start the core, configure the system proxy, and visit a known-working HTTPS page while watching the client’s connection list or logs. Check whether the destination domain appears and whether it was routed through the proxy or directly. A successful node test only confirms that a particular test request worked; it does not prove that the browser is using the proxy. If there’s no matching browser traffic, check the browser’s own proxy settings, extensions, and system settings. If the logs lack detail, temporarily increase the log level, then restore it and handle the logs carefully.

Why did my manual node changes disappear after updating the subscription?

Nodes in a subscription group are usually generated from the remote subscription data. During an update, the client may recreate or overwrite entries, so avoid making lasting manual changes directly to subscription nodes. To keep separate settings, back up first, then use the client’s copy or manual-add feature to create an independent entry. Keep it clearly separate from the original subscription group. Updates may also change node identifiers, so the previously active server may no longer be selected. After each update, check the active server, routing preset, and key transport settings, then test the connection.

What should I back up before changing devices or upgrading a client?

Use the client’s export or backup feature to save subscription groups, manual nodes, custom routing, and essential DNS settings. Note your local listening ports and commonly used modes. Backups may contain server passwords, user IDs, and subscription credentials; store them securely and never share them as ordinary attachments. When moving to another client, migrate the basic connection settings first, then rebuild routing and DNS settings one at a time—interface settings and configuration file formats may not be compatible. Test one node after restoring it, then migrate the remaining settings once it works.

DIAGNOSTICS

Troubleshooting

Distinguish local service startup, remote connections, and subscription requests instead of treating different errors as the same issue.

A node test timed out. What should I check, and in what order?

First, confirm your local network works and your system clock is accurate. Then check that the node address, port, and protocol settings are complete. Compare other nodes in the same subscription, and try another network if possible. If one node fails, the server or its settings are more likely to be the cause; if all nodes fail, check your local network, core startup, and subscription status. A successful TCP connection does not mean the TLS or protocol handshake succeeded. Look for DNS resolution, connection timeout, or handshake errors in the logs, and troubleshoot the stage where the error occurs. Change one setting at a time so you can identify the cause.

The client says connected, but websites won’t load. What should I do?

Connected usually means the local service or system interface has started; it does not confirm that the remote connection and DNS resolution are working. Check the active server first, then confirm that browser traffic is reaching the core. If requests reach the core but fail, review DNS resolution, the routing exit, and handshake logs. If there are no requests in the logs, check the system proxy or TUN coverage. Test another known-working HTTPS page to rule out a site-specific issue. Don’t start by disabling the firewall or all security settings; use the logs to narrow the issue down to the app, DNS, routing, or server.

Why can my existing nodes connect when subscription updates fail?

Node connections use saved server settings, while subscription updates fetch data from the subscription URL. These paths may use different DNS, routing, and access conditions. Check whether the subscription has expired, whether its URL has changed, and what HTTP status appears in the logs. Contact the subscription provider about authentication or access errors. If the client supports it, compare updating directly with updating through the proxy when troubleshooting a network timeout. If proxy-based updates rely on an active node that is itself unavailable, updates can get stuck. Repeated retries in a short time may trigger rate limits; save the error details and try again later.

My network is acting up after I quit the client. How do I restore it?

Reopen the client, turn off TUN, choose Clear system proxy, and then exit normally. If the client won’t start, check your operating system’s network settings for a manual proxy pointing to localhost. Make sure no other app is using that proxy configuration before clearing it. On Android, check whether the system VPN connection is still active. On desktop, check for other VPNs or virtual networking tools as well. Test a regular direct connection after restoring the settings. Don’t remove all network adapters or reset every route unless you’ve identified the cause and are prepared to restore your original network settings.

Download clients