QUICK START · 10 MINUTES

v2rayN Tutorial: From Subscription Import to Connection Verification

This Getting Started flow covers the four things needed for a first setup: add a subscription, choose a proxy mode, connect to a node, and verify the route. Follow the steps in order—there is no need to understand every protocol setting first.

Supported clients v2rayN · v2rayNG Steps 4 Estimated time About 10 minutes

Jump to a Step

BEFORE START

Before You Start

Before you begin, prepare the client and a subscription URL that is still valid. Use v2rayN on desktop and v2rayNG on Android; if they are not installed yet, visit the client downloads page to choose the right platform. After installation, launch the client normally. Do not run other network tools that change the system proxy, virtual adapter, or DNS at the same time, or it may be unclear which program is handling the traffic.

A subscription URL is generated by the node service provider and usually starts with https://. It is not an account created automatically by the client, nor a public server bundled with the installer. Copy the URL in full, including its path and parameters; do not omit the final character or mistake a web console login URL for a subscription URL. If the provider offers multiple subscription formats, choose the one marked for V2Ray, v2rayN, or v2rayNG.

Also verify that the device has the correct date, time, and time zone. TLS connections rely on certificate validity periods, so an incorrect system clock can cause the handshake to fail immediately. On desktop, enable automatic time synchronization; on Android, enable automatic date and time zone as well. If you are on a corporate network, public Wi-Fi, or a network requiring web authentication, close the client and confirm that ordinary websites open first. The client cannot establish an outbound connection when the underlying network is unavailable.

For the first setup, do not manually edit the server port, transport, TLS, SNI, or user identifier. After a successful subscription update, these fields are written to the client with the node configuration. Changing any of them manually can make the client and server configuration inconsistent. To learn about protocol, transport, and routing parameters, read the all-platform guide after completing this tutorial; this flow keeps only the shortest path to a working connection.

CLIENT The client starts normally

The window or main interface opens without missing-core errors or startup failures.

SUBSCRIPTION The subscription URL was copied in full

The URL comes from the current service provider and was not truncated or given extra spaces by a chat app.

NETWORK The underlying network is working

With the proxy disabled, the device can complete any required network authentication and access ordinary websites.

SUBSCRIPTION

Step 1: Import a Subscription and Build the Server List

Create a subscription group in the client, then run an update. The group stores the subscription URL and organizes servers; adding the URL alone does not load nodes into the main list. You must run “Update subscriptions” so the client can request the remote content and parse the nodes. For a first setup, add only one subscription. Once the workflow works, add other groups so errors are easier to trace to a specific URL.

v2rayN Desktop Instructions

Open the v2rayN main window, find “Subscription groups” or a similarly named item in the top menu, and open the subscription group settings. Add a new group, enter an easily recognizable name in the remark field—such as the provider name or intended use—and paste the full subscription URL into the address field. Check that there are no spaces at the beginning, end, or inside the URL, then save. The remark is for local identification only and does not change the server configuration.

After saving the group, return to the main window, open the subscription menu, and choose “Update all subscriptions” or update the new group individually. Do not click repeatedly during the update. Normally, the status area shows the download and parsing progress; after a few seconds, the server list should contain multiple entries. Common columns include alias, address, port, transport type, and group. Once the list appears, continue to the next step—there is no need to edit node fields one by one yet.

v2rayNG Android Instructions

Open the v2rayNG main interface, open the top-right menu, and find “Subscription group settings.” Tap the add button to create a group, enter an easy-to-recognize name, and paste the subscription URL into the address field. Save it, return to the main interface, and update the subscription from the menu. Some versions ask you to select the current group first; make sure it is the group you just added before updating.

After the update, server entries appear on the main screen. Tapping an entry only selects it; it does not start a connection. At this stage, confirm that the list is not empty and that the entry names broadly match those shown by the provider. If a QR-code import option is available, use only a subscription QR code explicitly supplied by the provider. A regular web-page QR code or payment QR code cannot import server settings.

Once the server list appears, subscription import is complete. Do not rush to test every node or enable both the system proxy and TUN at the same time. First decide how application traffic will be captured, then connect the active node. This order prevents the client from appearing to run while another setting is actually handling the traffic.

NextChoose a Proxy Mode →

ROUTING MODE

Step 2: Choose a Proxy Mode and Routing Scope

The node determines which exit carries the traffic; the proxy mode determines which applications and requests are handed to the client. These are different layers. Even with a correct node configuration, websites will connect directly if the system or application does not send traffic to the client. Conversely, if traffic capture is enabled but the node is unavailable, the browser will time out. For a first setup, choose a mode with a clear scope that is easy to undo.

Start with the System Proxy on Desktop

In the v2rayN taskbar menu or the system proxy section of the main window, enable the system proxy. The menu usually contains “Set system proxy”; the taskbar icon or status text changes when it is enabled. The system proxy mainly handles browsers and desktop apps that follow the operating system proxy settings, making it suitable for the first connection test. It does not require a virtual network adapter and is easy to revert.

Next, check the routing mode. During Getting Started, choose the rule mode provided by the client so common local requests connect directly while matching destinations use the proxy. To temporarily check whether a destination is being allowed by the rules, switch to global proxy mode for comparison, but do not assume “global” captures every process: traffic still depends on whether the application follows the system settings. After testing, restore rule mode for your actual use case.

TUN mode captures a wider range of network traffic through a virtual network adapter, which helps with programs that ignore system proxy settings. It also involves routing tables, DNS, and system permissions. There is no need to enable TUN and the system proxy together to improve the “success rate”; layering them only makes failures harder to trace. Complete this tutorial with the system proxy first. After ordinary connections are stable, configure TUN separately by following the TUN chapter in the all-platform guide.

Confirm Routing Settings on Android

In v2rayNG, open Settings or Routing settings and choose a predefined rule set suited to everyday use. Rule mode classifies destinations by domain and address to decide whether they connect directly or through the proxy, so you do not need to write complex rules during the first setup. To quickly check whether a node works, you can temporarily choose a broader mode; switch back to your usual rules after verification and retest important apps.

When v2rayNG connects on Android, it uses the network interface provided by the system, so there is no separate desktop-style “Set system proxy” menu to find. Traffic capture actually begins when you tap the connect button in the next step. This step only confirms the routing choice; there is no need to enable per-app proxying, bypass settings, or custom DNS in advance. Each extra condition creates another opportunity for a rule mismatch.

SYSTEM PROXY

System Proxy

Suitable for a first desktop setup; mainly covers browsers and apps that follow system proxy settings, with a clear on/off state.

TUN

TUN Mode

Captures a broader range of traffic and requires handling a virtual adapter, routing, and DNS. Configure it after basic connection verification.

ROUTING

Rule-Based Routing

Determines whether a destination connects directly or through the proxy without changing the node itself. Choose rules that match your current use case.

After choosing the mode, leave the settings unchanged. The next step has only two tasks: select an active node and start the connection. If it fails, the fixed proxy mode provides a troubleshooting baseline and avoids switching repeatedly between the node, routing, and traffic-capture method.

NextSelect a Node and Connect →

CONNECT

Step 3: Select an Active Node and Connect

In the server list, first choose a node from the subscription you just updated. Its name may include a region, route, or provider-defined remark, but the name does not guarantee that it currently works. For the first connection, do not chase the lowest latency or select multiple entries at once. The client uses only the current active server, so focusing on one entry makes logs and test replacements easier to manage.

v2rayN Desktop Connection

Click the target node in the main list, then use the context menu or top server menu to choose “Set as active server.” The row usually changes color, shows a marker, or changes its selected state. Confirm that the client core has started and that the status area at the bottom is not continuously showing stopped or startup failed. If the system proxy was not enabled in the previous step, enable it now.

Minimizing the v2rayN main window does not exit the client; it can continue running in the taskbar area. Choosing Exit from the menu stops the core and may restore the system proxy settings. Do not end the background process during testing. If the operating system shows a network-access or firewall prompt, allow the client to communicate as needed for the current trusted network; otherwise, the local listening port may be unavailable to the browser.

v2rayNG Android Connection

Tap the target server on the main screen to make it the current configuration, then tap the connect button at the bottom. On the first connection, the system displays a network connection confirmation; read the prompt and allow the connection. After startup, the button state changes and the system status area shows a connection indicator. Keep v2rayNG running in the background and do not force-stop it or restrict its background activity immediately.

If the connect button immediately returns to the disconnected state, open the log and inspect the lines closest to the failure time. Common causes include an unresolvable server address, an unreachable port, a failed TLS handshake, missing configuration fields, or a local port conflict. The first error in the log is usually more useful than repeated retries afterward. Do not keep changing every setting without recording the error, or it will be difficult to tell which change mattered.

If the first node will not start, try another node from the same subscription without changing the proxy mode. Disconnect first, set the replacement as the active server, and start it again. If two nodes behave differently, the issue is more likely limited to one node. If several nodes show the same local port or permission error, check the client environment first. For detailed log categories, see the Troubleshooting section.

Once the client remains running steadily and the log is no longer filling with errors, the connection is ready for verification. Do not rely on the icon color alone: the system proxy, routing, and DNS can produce different results across applications. Keep the current node and mode unchanged, and continue with both browser and log checks.

NextVerify That the Proxy Works →

VERIFY

Step 4: Verify the Proxy, Routing, and Application Traffic Capture

Start verification with a simple request and change only one condition at a time. First disable browser extensions that may control their own proxy, then open a fresh normal window. Visit a website that worked without the client to confirm that the underlying network has not been completely disrupted by the proxy settings. Then open the target that should use the proxy. Together, the two results distinguish problems with the network, node, and routing rules.

Check Whether the Client Receives Requests

Keep the browser request running while watching the v2rayN or v2rayNG connection log. If a new entry appears at the same time as the request, application traffic has entered the client. If the page fails but the log does not change at all, the issue is usually before traffic capture. Check whether the desktop system proxy is enabled, whether the Android connection is still active, and whether the browser has its own proxy settings.

If the log shows the request but then reports a connection timeout, connection refusal, or handshake error, the traffic reached the client but could not pass through the current node to the destination. Do not change the system proxy yet. Try another node from the same subscription. If the page works afterward, keep the working node and ask the provider to address the original route. If every node shows the same error, check the device time, subscription expiry, and network restrictions on the relevant connections.

Confirm the Routing Result Matches Expectations

If some pages open while others always connect directly or fail, check the current routing mode. Temporarily switch to a broader option and reload the same page. If the result changes, the node connection is basically working and the difference comes from rule matching. Restore your everyday rules afterward and review domain rules, address rules, and DNS handling in the all-platform guide instead of relying on test mode to hide a routing problem.

On desktop, you can also compare with another browser that clearly follows system proxy settings. If one browser works while the other produces no log entries, the latter likely has its own proxy, extension rules, or bypass list. On Android, if only one app fails, first check whether per-app proxying is enabled and whether that app is included in the capture scope. Do not conclude that all nodes are unusable based on one app.

Run a Disconnect Comparison

After connection verification, deliberately disconnect the client and refresh the target page used for testing. The page behavior should change in an explainable way, and the log should stop receiving new proxy requests. Reconnect afterward and confirm that access returns. This comparison rules out misleading results caused by browser cache, existing connections, or offline page content, and clarifies the relationship between the system proxy switch and the client core.

01 A Basic Website

Confirm that the current network was not interrupted as a whole by the configuration change.

02 The Target Website

Check whether a request that should use the proxy can finish loading.

03 Client Logs

Confirm that the request reached the client and identify where the failure occurred.

04 Disconnect Comparison

Rule out cached content and old connections, and confirm that the result changes with the connection state.

When the ordinary website, target website, and client logs all behave as expected, and disconnecting and reconnecting produce consistent results, the basic setup is complete. Record the subscription group, active node, and routing mode. If problems arise later, restore this verified configuration first, then add TUN, custom DNS, or per-app rules one at a time.

ContinueEveryday Checks After Setup →

AFTER SETUP

Everyday Checks After Setup

A subscription does not remain unchanged forever just because its first import succeeded. When the provider changes nodes or parameters, update the existing group so the client receives the new list. Before updating, note the current active node; afterward, check whether it still exists. If it was replaced, select another node and complete a connection check. Do not repeatedly create identical groups, or duplicate servers will make it difficult to tell which configuration is actually in use.

Before exiting the client on desktop, check the system proxy status. A normal exit usually restores it, but an abnormal shutdown or forced termination may leave the old proxy address in place, preventing browser access after reboot. If that happens, restart v2rayN and disable the system proxy, or turn off the proxy in the operating system network settings. On Android, when finished, disconnect in v2rayNG and confirm that the connection indicator disappears from the status area.

When a node suddenly stops working, keep the troubleshooting order consistent: check the ordinary network first, update the subscription next, try another node, and inspect the logs last. Do not start by reinstalling the client or deleting all settings, since that removes useful comparison data. If the issue affects only one app, check its proxy and routing first. If no requests enter the log, check traffic capture. If requests enter but all fail, check the node, DNS, system time, and service status.

BASELINE SAVED

Keep One Verified Baseline Configuration

The subscription group, active node, routing mode, and traffic-capture method form a troubleshooting baseline. Change only one item at a time, then repeat the connect-and-disconnect comparison to quickly identify where the behavior changed.

Download Client