v2rayN First Connection Guide: Choose a Node, Run a Real Speed Test, and Verify the Proxy
Complete your first connection by importing a subscription, choosing a node, enabling the system proxy, running a real connection speed test, and checking the proxy result.
A first v2rayN connection is not complete just because you double-clicked a node. The full path includes loading the configuration into the client, setting a node as the active exit, starting the core successfully, sending application traffic through the local proxy, and confirming that the remote connection actually works. If any link is missing, pages may fail to open, speeds may be abnormal, or the client may appear to be running while the traffic path remains unchanged.
For that reason, follow a fixed order during the initial setup instead of changing the protocol, DNS, routing, and proxy mode at the same time. Establish one reproducible baseline connection first, then adjust routing rules for your needs. This makes it clear whether a problem lies with the subscription, node, core, or system proxy, rather than leaving you to cycle through unrelated options.
Before You Connect: Check the Client, Configuration Source, and System Time
When using v2rayN on a desktop platform, first confirm that the program opens normally and that the core components can be called by the client. v2rayN provides the configuration and runtime management interface; the corresponding core handles VMess, VLESS, and other connections. A successful client launch does not mean the proxy core is running. Confirm each stage separately through the status bar, runtime logs, and actual access results.
Node configurations should come from a trusted, actively maintained subscription or a single share link. A subscription usually contains multiple server entries for centralized updates, while a single share link describes one node and is useful for temporary imports or targeted testing. Either way, retain essential fields such as the server address, port, user identifier, transport, security settings, and path. A node with missing or incorrectly converted fields may still appear in the list even though the connection cannot be established.
- Check the system date and time zone: Some secure connections depend on an accurate local clock. A significant time offset can cause handshake failures or certificate time errors.
- Keep the default routing for now: Verify the basic exit path first; do not immediately add a large set of custom domain, IP, or process rules.
- Record the existing proxy state: If another local proxy was configured previously, note its listening port and on/off state first to prevent port conflicts or overlapping proxy settings.
- Prepare two test targets: Use one to confirm that ordinary network access still works and another to check for a changed proxy exit, rather than drawing conclusions from a single webpage.
Import the Subscription and Confirm That Nodes Are Updated
Subscription import order
In v2rayN's subscription group or subscription settings, add the subscription URL, enter a recognizable note, save it, and run an update. Adding a subscription alone usually does not populate the node list; you must run a subscription update afterward. When the update finishes, the main list should show node names, addresses, ports, and protocols.
If the subscription group offers update options, start with the standard update method. Change processing options only when you know the subscription requires a specific conversion flow. Repeated or incorrect decoding and conversion can strip fields from otherwise valid VMess or VLESS share data. Native JSON configurations and share links also have different structures, so use the import entry that matches the configuration type.
What to check after importing
- Confirm that new entries appear in the node list, rather than only an empty subscription group being added.
- Check that the nodes belong to the correct group and that the update displays a clear completion or error message.
- Check that the server address and port are not empty and that the protocol matches the configuration source.
- Check for duplicate node names and confirm that the selected entry belongs to the group you just updated.
- If the subscription update fails, first check whether the current network can reach the subscription URL, then check for spaces or line breaks added while copying it.
For a single share link, use the corresponding feature, such as importing from the clipboard. After importing, return to the node list and verify the entry instead of relying only on an “Import successful” message. That message usually means only that the client recognized the text; it does not prove that the remote server is online or that the local network can reach it.
Choose the Active Node and Interpret Latency Results Correctly
After importing nodes, set one entry as the active server. Common methods include double-clicking a node or using the menu to set it as the active server. The interface will usually identify the current node with a color, marker, or status label. Clicking a row once often selects the item without changing the actual exit, so confirm that the “current server” status has been updated.
Start with a basic latency test
Latency tests are useful for quickly ruling out nodes that are completely unreachable, fail to resolve, or cannot complete a handshake. A lower result generally means a faster response from the local machine to the test target. A timeout may indicate an offline node, failed address resolution, local network blocking, mismatched parameters, or limitations of the test method.
A latency value is not the same as download speed. Latency tests transfer very little data and mainly reflect the time needed to establish a connection or receive a response. Everyday browsing and downloads are also affected by congestion, packet loss, server load, transport protocol, target site, and local network conditions. When two nodes have similar latency, continue with a real connection test instead of sorting only by the number in the list.
Practical ways to choose a node for the first connection
- Start with a node that has complete configuration fields and responds to a basic latency test.
- Do not test every feature at once; use one node to establish a baseline connection first.
- If a node times out, switch to another node in the same subscription for comparison.
- If multiple nodes time out, check the subscription, DNS, local network, and core logs before editing protocol fields one by one.
- If only one node fails while the others work, the problem is more likely specific to that node or its route.
On Android, v2rayNG uses the Xray core, while v2flyNG uses the v2fly core. Although the interface differs from the desktop version, the diagnostic order is the same: import the configuration, select a node, start the connection, perform real access tests, and review the logs. Core support for some extended parameters may differ, so revalidate a migrated configuration instead of assuming every field is equivalent.
Start the Proxy Core and Set the System Proxy
After selecting a node, have v2rayN start the corresponding core. The status bar should show that the core is running, and the local proxy port should be listening successfully. If the logs show a port conflict, configuration parsing failure, missing core component, or an immediately exiting process, enabling the system proxy will not produce a valid response.
Core operation and the system proxy are separate steps. The core listens on a local proxy port and forwards connections; the system proxy tells applications that follow system settings to send traffic to that port. Starting the core without enabling the system proxy may leave browsers and other applications connecting directly. Setting the system proxy without a running core sends requests to an unresponsive port, making every webpage fail to open.
Use the system proxy for the first connection test
For initial verification, the system proxy is easier to observe than complex traffic-capture methods. Enable “Automatically configure the system proxy” or the corresponding option in the interface, then reopen the test page. Applications that follow system proxy settings send HTTP or HTTPS requests to v2rayN, and the local proxy then chooses direct, proxied, or blocked access according to the active routing rules.
The system proxy does not capture every program. Some applications use an independent network stack, built-in proxy settings, or direct connections and do not read the operating system's proxy configuration. If the browser works but one program does not, first determine whether that program follows the system proxy instead of immediately blaming the node. For broader traffic coverage, study TUN mode and its permissions, routing, and DNS settings only after the basic connection works.
Real Connection Speed Tests: Separate Latency, Throughput, and Stability
A real connection speed test in v2rayN typically sends actual network requests through the node and estimates usable throughput from data transferred over a period of time. It is closer to everyday access than a simple latency test, but it still reflects only a particular moment, target, and test file. Local downloads, wireless fluctuations, target-server limits, and route congestion can all change the result.
Pause large-file synchronization, online video, and other bandwidth-heavy tasks before testing, then test only a small number of candidate nodes. Testing too many nodes at once can make them compete for local bandwidth and distort the results. First use latency tests to filter for responsive nodes, then run real connection speed tests one by one or in small groups.
Three dimensions for judging node performance
- Connection latency: Affects initial page loads, new connections, and interactive response. Low latency is useful for frequent requests but does not by itself represent sustained transfer capacity.
- Actual throughput: Shows how much data can be transferred over a period of time and better reflects file downloads and media loading.
- Consistent stability: Check whether repeated access is interrupted, speeds fluctuate sharply, and long-lived connections remain open. One brief high result is not enough to prove long-term stability.
For more comparable results, test two candidate nodes on the same network, during the same period, and with the same proxy mode. For each node, run one latency test, one real connection speed test, and several minutes of ordinary webpage access. To compare longer-term stability, repeat the tests and record timeouts instead of keeping only the highest speed.
If a real speed test fails while basic latency works, the test target may be inaccessible, the node may complete only part of the handshake, the remote route may be faulty, or routing rules may send the request through an unintended exit. Open a real webpage first, then inspect the target address, outbound tag, and error type in the logs. Do not delete a configuration based on one speed-test button.
Verify That the Proxy Works: Check the Process, Access, and Exit
Connection verification should cover at least three layers. The first is the process layer: the v2rayN core remains running and the local port reports no errors. The second is the access layer: with the system proxy enabled, the test application can open the target page normally. The third is the exit layer: use a trusted network-information page to check whether the public exit has changed as expected. The first connection is complete only when all three layers agree.
Recommended verification order
- Keep the current node unchanged and confirm that the core log is not continuously reporting connection failures.
- Enable the system proxy, fully close and reopen the test browser, and avoid reusing old connections.
- Open an ordinary webpage and confirm that the domain, page resources, and images all load.
- Visit a network exit lookup page and record the current exit information.
- Temporarily disable the system proxy and visit the page again to compare the exit before and after disabling it.
- Re-enable the system proxy and visit multiple sites to confirm that the connection was not a one-off success.
If the exit is exactly the same with the system proxy on and off, check whether the browser has its own proxy configured, whether it is reusing an old connection, and whether the current routing rules send the lookup target direct. The system proxy settings may also have failed to apply, or the application may not read them at all. Testing with another application known to follow the system proxy can quickly separate an application-side issue from a client-side issue.
Routing rules can also affect verification. v2rayN can choose different outbounds by domain, IP, protocol, or rule set. With bypass rules enabled, some targets connect directly while others use the active node, so different lookup pages may show different paths. During the first verification, understand the current routing mode and test a target that should use the proxy.
First Connection Failure: A Layered Troubleshooting Order
Start troubleshooting as close to the configuration source as possible, then move one layer at a time toward the application. Change only one variable at a time and retest after each change. This preserves a clear cause-and-effect relationship and prevents unrelated adjustments from masking parameters that were working.
1. The subscription has no nodes or the update reports an error
Recheck that the subscription URL is complete, confirm that the current network can reach it, and review the response status in the update log. If the subscription group exists but the list is empty, the update may not have run, the returned content may be unrecognized, or filters may have excluded every node. If a single link fails to import, check its beginning, encoded content, and copy boundaries; do not manually remove characters that merely look unnecessary.
2. Every node times out on latency tests
First confirm that the local network itself works, then check name resolution and system time. Next, inspect the core log for address-resolution failures, connection refusals, timeouts, or secure-handshake errors. If every node in the same subscription fails at once, suspect the subscription configuration, current network, or local environment first. If only one node fails, use another node as a comparison.
3. Every webpage fails after enabling the system proxy
This usually means the application sent its request to the local proxy, but the core did not handle it correctly. Check that the core is still running, that another program has not taken the local port, and that the system proxy port matches v2rayN's current listening port. If necessary, disable the system proxy first to restore ordinary access, then address the core error so the system does not keep pointing to a failed port.
4. Some webpages open while others fail
Check routing rules, DNS resolution, and connection errors from the target site. If the failed target is set to connect directly while the current network cannot reach it, adjust the relevant routing rule. If DNS returns an unexpected address, inspect the DNS path. Also check whether the failure occurs only with a browser extension, an independent proxy setting, or a cached connection.
5. Speed tests are normal but everyday use is slow
Stop background tasks that consume bandwidth and repeat the test at different times. The speed-test target and the sites used in everyday access may follow different routes, so different results are not contradictory. Compare two nodes on the same target by page-load time, sustained download performance, and interruptions before choosing the active node. If every node performs poorly only on this machine, check wireless quality, DNS response time, system resource usage, and network inspection by security software.
First Connection Completion Criteria
After completing the first connection, you should be able to answer these questions clearly: Which subscription group and node are active? Are the node protocol and key fields complete? Is the core still running? Has the system proxy been applied? Does the test application read the system proxy? Does the real connection work? When the proxy is enabled and disabled, does the expected target's access path change?
Once these baseline results are stable, enable automatic updates, routing rules, DNS changes, or TUN mode one at a time. Keep the working configuration as a reference whenever you add a feature. If something breaks, you can quickly return to the verified state instead of rebuilding the entire configuration.
In everyday use, check after a subscription update whether the active node was replaced; identical node names do not mean the underlying parameters are unchanged. When a connection suddenly fails, update the subscription and test other nodes before checking local settings. A fixed diagnostic order turns “the client starts but access fails” into a series of observable, verifiable steps.