· Getting Started · About 8 min read

First V2Ray Connection: Test Nodes, Choose a Server, and Verify Your Proxy

Learn how to compare TCPing with real connection tests, choose a server, and verify proxy traffic using your browser and an IP lookup.

At a glance

For users who have imported a subscription but aren't sure which node to choose. Use TCPing to rule out clearly unreachable servers, then run a real connection test to check the proxy route. After choosing a node, check Android VPN permission, per-app settings, and routing rules. Finally, verify the proxy with a browser and a public IP lookup. Latency is only a screening signal—not a measure of download speed or proof that browser traffic is using the proxy.

1. Before connecting: check your subscription, time, and network

This guide focuses on v2rayNG on Android, which uses the Xray core. v2flyNG uses the v2fly core, so its menus and protocol support may differ. On desktop, you can also verify v2rayN in three stages: port reachability, the proxy connection, and the app's outgoing traffic. However, system proxy settings work differently from Android's VPN-based traffic routing.

First, make sure regular websites open directly on your current network. If hotel or public Wi-Fi requires a captive portal, sign in first. A successful subscription import only means the configuration was retrieved; it doesn't mean the account is still active or that every node is reachable. Menu names below refer to common Chinese-language interfaces and may vary slightly by release. Follow the function, not the exact wording.

  1. Update subscription

    On the v2rayNG home screen, tap ⋮ in the upper-right corner and select “Update subscription.” If you haven't saved the subscription URL yet, add it under “Subscription group settings,” then update. Make sure the server list appears and that no expiration or request failure message is shown.

  2. Set the correct time

    On Android, go to “Settings” → “System” → “Date & time” and turn on automatic time. On some devices, this option is under “Additional settings.” An incorrect system clock can interfere with TLS certificate validation and some protocol authentication.

  3. Avoid conflicts

    Disconnect other apps using Android's VPN service, including filtering tools that run as a local VPN. With typical personal configurations, only one app at a time can take over the Android VPN connection for a user.

  4. Keep conditions consistent

    For the first round, use your current Wi-Fi, pause large downloads, and don't switch to mobile data mid-test. Note the node label, test time, and network type so you can compare results under the same conditions later.

2. TCPing vs. real connection tests

TCPing typically tries to establish a TCP connection to the node's address and port. It's useful for a quick check that the endpoint is reachable. If the server uses port 443, a successful TCPing only confirms that the TCP handshake received a response; it doesn't verify TLS, VMess, or VLESS authentication settings. The port may be different—use the value in your subscription and don't change it to 443 just for testing.

TCPing: endpoint check

What it checks
Node address and TCP port
What success means
A TCP connection completed this time
Not verified
Proxy authentication, end-to-end transport, or destination access
Best for
Quickly narrowing down the candidates

TCPing isn't a universal test for every transport type. UDP-based transports in particular can't be judged by TCPing alone.

Real connection test: end-to-end check

What it checks
The process of accessing a test URL through the proxy
What success means
The test destination was reachable under the conditions at the time
What can affect the result
DNS, handshake, routing, and destination response
Not verified
Sustained bandwidth or traffic from every app

The test destination, timeout settings, and client implementation all affect results. Keep them consistent when comparing nodes.

A real connection test is closer to making an actual request through the selected configuration, but it still isn't a large-file download test. A node may complete the handshake quickly yet lack bandwidth for sustained transfers. Or a test URL may respond slowly once while commonly used sites work fine. Don't rank millisecond results from different test methods side by side.

3. Test nodes under consistent conditions

On the v2rayNG home screen, tap ⋮ and select “Test all configurations (TCPing),” then “Test all configurations (real connection).” Some versions put these options in a test submenu. If the list is long, select the subscription group you need first to reduce interference from simultaneous requests. Avoid switching nodes or updating the subscription while tests are running.

Keep a few candidates that pass the real connection test, then test them again. The numbers below are suggested testing steps, not measured results from this site or a guarantee of connection quality.

3 rounds
Repeat the real connection test for each candidate
2 networks
If possible, compare Wi-Fi with mobile data
1 variable
Change either the node or the network—not both at once

4. Connect: VPN permission and app coverage

Select a candidate node to make it the active configuration, then tap the start button on the main screen. The first time you connect, Android asks for VPN permission. Approve it, then check the client's status and the system VPN indicator. The indicator confirms that the system VPN connection is active, not that the remote proxy is working. A real connection test may also run independently, so it doesn't replace this step.

Verification scope: simplify first, then restore your usual rules

For the initial check
  • Under “Settings,” check “Per-app proxy” and make sure your test browser isn't excluded.
  • Temporarily choose a routing mode that sends test traffic through the proxy. Common interfaces call this “Global” or “Global proxy.”
  • Close any old browser tabs, then reopen the test page to reduce the effect of existing connections.
For everyday use
  • Once the connection works, restore your usual routing rules, such as bypassing traffic to mainland China.
  • Set up per-app proxying as needed, and check whether the list includes apps to proxy or apps to bypass.
  • Verify each browser or app that needs the proxy. Don't assume that a result for one app applies to every app.

“Global” routing is still limited by which apps are included in the VPN connection. Apps outside the VPN tunnel won't be routed through it just because you switch to global mode.

If the connection stops right after starting, open “Logs” under ⋮ and check for errors during startup. A parsing error, unsupported configuration, and failed remote handshake are different issues; don't lump them together as “a slow node.” If the interface asks you to restart the service after changing routing or per-app settings, stop and restart it to apply the changes.

5. Browser and public IP: verify that the proxy is working

A page loading doesn't necessarily mean it's using the proxy; the site may allow direct connections. Conversely, a site failing to load doesn't necessarily mean the node is down. The destination may block data center IPs, show an access check, or be temporarily unavailable. A reliable check combines actual browsing, the public IP address, and your current routing rules.

  1. Check your direct connection's public IP

    Stop v2rayNG first. In your browser, search for “IP address lookup” and open a page that displays your public IP. Note whether it shows an IPv4 or IPv6 address and the carrier information. Don't mistake a local network address for your public IP.

  2. Connect to a candidate node

    Return to v2rayNG and check the selected node and connection status. Use the simplified verification setup from the previous section so requests from your test browser and IP lookup page go through the proxy.

  3. Look up your public IP again

    Open the same lookup service in a new tab, then cross-check with a second service. Compare results for the same address type; don't compare a direct IPv6 address with a proxy IPv4 address to decide whether they match.

  4. Check actual browsing

    Open a site you want to access through the proxy and check its text, images, and internal links. If your public IP has changed but only one site fails, investigate restrictions on that site instead of immediately reinstalling the client.

  5. Restore your usual routing

    After restoring your usual routing rules, test the destination again. Your IP lookup site may now use a direct connection and show your local public IP; that's expected if your rules send it direct. If needed, use the connection details in the logs to see which route the destination domain takes.

6. Common issues: choose the next step based on what you see

When troubleshooting for the first time, don't change the port, DNS, transport settings, and routing all at once. VMess, VLESS, TLS, REALITY, and WebSocket settings in your subscription must match the server. Changing one at random can create a new problem. Update the original subscription first, then follow the steps for the symptom—this is usually more effective than repeatedly deleting configurations.

What you see Check first What to do next
TCPing returns a result, but the real connection test keeps failing Authentication, TLS, system time, and test destination Update the subscription, check that automatic time is enabled, and look in the logs for handshake or request errors. Don't disable certificate verification.
Real connection test succeeds, but the browser can't access sites VPN status, per-app coverage, routing, and DNS Make sure the browser is included in the VPN, simplify routing temporarily, then compare destination access with the IP lookup result.
The public IP is unchanged after connecting Whether the lookup site is using a direct connection and whether the browser is excluded Make sure lookup requests use the proxy, reopen the page, and compare results for the same address type.
Wi-Fi fails, but mobile data works Wi-Fi authentication, DNS, or network restrictions Keep the same node and test again on another network. Don't change protocol settings at the same time.
Real connection tests time out for every node Subscription status, local network, and test URL First confirm that you can access the internet directly, then check the test destination settings. If that one destination is unreachable, all results may be misleading.
The connection works at first but drops when the screen locks Background and battery settings In Android app settings, allow v2rayNG to keep running in the background, then check whether the connection recovers after a network change.
Is the node with the lowest real connection latency always the fastest?

Not necessarily. A real connection result mainly measures the time taken by one test request. It doesn't directly show sustained download bandwidth, packet loss, or evening congestion. First choose nodes that pass consistently, then test your own destinations at the times you use them.

Do I need to verify the exit IP in desktop v2rayN too?

Yes. After selecting a node and starting the core, check that your browser follows the system proxy if you're using one. Apps that ignore system proxy settings need separate configuration, or you can use TUN if you understand the implications. Even if the client's built-in real connection test succeeds, check the exit IP and routing in the apps you actually use.

Do I need to leave global proxy enabled after verification?

No. Temporarily using global proxy makes troubleshooting simpler by reducing variables. After verification, restore the routing rules that suit your needs. Then check your usual destinations to make sure direct traffic stays direct and traffic that needs the proxy uses it. For more settings, see the user guide and FAQ.

Download clientsChoose a package for your platform