10-minute basic setup

V2Ray Tutorial: From Subscription Import to Connection Verification

Complete four tasks in order: import a subscription, choose a proxy mode, connect to a node, and verify the result. This tutorial covers only the settings needed for a first setup; continue with the complete handbook for advanced topics such as routing rules, TUN mode, and core selection.

Before you start: confirm the client and subscription details

Before you begin, make sure the client is installed and that you have a working subscription URL. Use v2rayN on desktop and v2rayNG on Android. A subscription URL is usually a complete link beginning with https:// and may contain account-identifying parameters, so do not share it in screenshots, public documents, or chat groups. When copying it, select everything from start to finish and avoid missing characters, spaces, or line breaks.

If the client is not installed, visit the download page and choose the version for your platform. After the first launch, avoid changing many advanced options at once. Keeping the default DNS, core parameters, and routing rules makes it easier to identify the source of a problem. In this tutorial, a “node” is a server configuration supplied by a subscription provider, while a “subscription” is a URL used to update multiple configurations. See the glossary for related concepts.

Preflight checklist

  • The client opens normally, with no persistent errors in the main window or on the home screen.
  • The subscription URL has been copied in full, with no extra spaces at either end.
  • The device date, time, and time zone are correct.
  • The current network can access familiar direct-connection pages normally.
SUBSCRIPTION

Import a subscription and build the server list

Importing a subscription gives the client a set of server configurations to choose from. Do not paste the subscription URL into a server address, remarks, or search field; use the dedicated Subscriptions entry instead. Desktop and Android clients place the controls differently, but both provide options such as “Add subscription” or “Subscription settings.”

v2rayN desktop steps

Open the v2rayN main window and find “Subscription groups” or the subscription management entry in the top menu, then add a new subscription. The edit window usually has two main fields: an alias and an address. The alias is only for local identification, so use a name that is easy to recognize. Paste the complete subscription URL into the address field. Check that there are no spaces around the URL, save it, return to the main window, and use the subscription menu to run “Update all subscriptions” or update the current group.

When the update finishes, the server list should contain multiple configuration entries, typically showing fields such as alias, address, port, and transport type. Confirm that the list is not empty before continuing. If the status bar says the update completed but nothing changed, check whether an empty group is selected or a filter is active. Clear the search text, switch back to the group you just created, and check again.

v2rayNG Android steps

Open the v2rayNG home screen and select Subscriptions from the top-right menu. Tap the add button, enter an easy-to-recognize name in the remarks field, paste the subscription URL into the address field, and save. Return to the subscription list, select the new entry, and update the subscription. When the update finishes, selectable configurations should appear on the home screen. If the home screen is still empty, return to Subscriptions, confirm that the entry is enabled, and update it manually once more.

A successful subscription import only means that the configuration was written to the client; it does not mean a connection has been established. Do not repeatedly import the same URL, or you may create duplicate groups or nodes. Once the server list appears, stay on the current page and confirm that at least one configuration can be selected before opening the proxy mode settings. Subscription formats, share links, and native configurations differ in several ways; see the glossary for basic definitions or continue with the subscription chapter in the complete handbook.

PROXY MODE

Choose a proxy mode and define its scope

Once the server list appears, decide which traffic the client should handle. A proxy mode is not a node type and does not change the subscription. It determines how system applications send requests to the local proxy and how the client chooses between direct and proxied routes. For a first setup, use the system proxy with rule-based routing: it takes fewer steps and makes browser-based verification easier.

Desktop: enable the system proxy

Find “System proxy” in the v2rayN main window or tray menu. Common options include clearing the system proxy, automatically configuring it, and keeping it enabled. For a first setup, choose automatic configuration so the client writes the system proxy settings while connected. After it is enabled, the tray icon or menu status should change, and browsers and applications that follow system proxy settings will send requests through v2rayN.

Next, check the routing mode. Common options are Global, Rules, and Direct. Rules mode selects an outbound based on domains, IP addresses, and rule sets, making it a good everyday starting point. Global mode sends a broader range of requests through the current node and is mainly useful for temporarily checking whether an access issue is related to routing rules. Direct mode bypasses the remote proxy. Choose Rules mode for now, and avoid changing several variables before verification is complete.

Android: confirm the active configuration and routing

Open Settings or Routing settings from the v2rayNG home screen and choose the rule-based mode provided by the client. Depending on the version, related options may appear under names such as “Predefined rules,” “Domain strategy,” or routing configuration. The default rules are usually sufficient for a first connection. Return to the home screen, where you should see the imported configurations and a clear connection button. Do not start yet; first select the node you want to use so it becomes the active configuration.

System proxy, rule-based routing, and TUN mode operate at different layers. A system proxy depends on applications following the system settings, while TUN mode takes over a broader range of traffic at the network layer and requires the appropriate permissions. To keep the first setup clear, this page does not require TUN mode. If you need to handle applications that ignore the system proxy, read the TUN chapter in the beginner-to-advanced handbook to understand the relationship between permissions, DNS, and routing.

CONNECTION

Choose a node and start the connection

After configuring the proxy mode, select an active configuration from the server list. Node names are usually defined by the subscription provider and do not guarantee that a connection will work. For a first attempt, choose a fully configured node that is not marked as disabled; there is no need to run extensive speed tests. Test results reflect a specific time and method, so actual connection verification should determine whether the node works.

Set an active server in v2rayN

Click the target entry in the server list, then use the context menu or top command to set it as the active server. The selected entry usually changes color, font, or icon state. After confirming that the system proxy is enabled, watch the status bar and log area at the bottom of the window. A normal startup log shows the core loading its configuration, the local listening port being established, and the service starting. If configuration parsing errors or port conflicts continue, stop the connection before handling the error.

v2rayN usually keeps the core process running in the background, so closing the main window does not necessarily exit the client. Keep the main window open during the first verification so you can inspect the logs. To stop completely, choose Exit from the tray menu and clear the system proxy if needed. If the browser loses connectivity after the window is closed, a common cause is that the client stopped while the system proxy still points to the old local port.

Start the current configuration in v2rayNG

On the v2rayNG home screen, select the target configuration and confirm that it is marked as current, then tap the connection button at the bottom. The system will request permission to establish a local network connection. After you confirm, the status icon should change to connected and the notification area should show the running state. Return to the configuration list and make sure the current node remains selected. If the button quickly returns to a disconnected state, open the logs and inspect the first error instead of focusing only on the final repeated message.

If the connection fails, first try another node in the same subscription group. If the second node works, the problem is more likely specific to the original node configuration or service status. If every node fails, check whether the subscription was fully updated, the device time is accurate, the current network restricts connections, and the client core starts normally. Do not reinstall the client, change routing, replace DNS, and switch between multiple nodes at the same time, or it will be difficult to identify which change mattered.

Status to expect during connection

Active node
One configuration is clearly selected in the server list.
Core running
The logs show that local listening has started, with no persistent repeated startup errors.
Proxy enabled
The system proxy is enabled on desktop, and the connection remains active on Android.
VERIFICATION

Verify that the proxy is actually working

A client status of “Connected” only means that the local core has started; it does not mean every request is completing as expected. Verify both the actual browsing result and the client logs. After connecting, open a new browser window or tab so cached pages do not affect the result. First visit a familiar page that normally works without a proxy to confirm that basic connectivity has not been disrupted. Then visit a destination that requires the current proxy route and check whether it loads reliably.

Keep the client logs visible during verification. When you open a new page, the logs should show a new connection entry and indicate whether the request was sent through a direct or proxied outbound. Different domains using different outbounds in Rules mode is normal. If the target page fails and the logs show no new entry, the browser or application may not be using the system proxy. If the logs show a request that immediately fails, check the current node. If only certain domains use an unexpected outbound, the routing rules are the more likely cause.

Desktop verification sequence

First confirm that the v2rayN system proxy is still enabled, then fully close and reopen the browser. Some running applications cache the network settings read at startup, so restarting removes interference from old settings. Visit two pages with different purposes and compare their domains and outbound names in the logs. If the browser works but a standalone application does not, that application may use its own proxy settings or ignore the system proxy. In that case, consider configuring a local proxy specifically for the application or evaluating TUN mode.

Android verification sequence

Confirm that v2rayNG remains connected, then reopen the application you want to test from the recent-apps screen. Test a normal page first, followed by the target connection. If only one application produces no traffic entries, check whether per-app proxy settings are enabled in v2rayNG and whether that application is excluded. For a first setup, keep per-app rules disabled until the basic connection is stable.

For a more precise routing check, search the logs for the target domain and compare the results in Rules and Global modes. Restore Rules mode after testing so temporary troubleshooting settings are not left in place. See the glossary for definitions of domain rules, IP rules, inbounds, outbounds, and DNS. To continue learning about routing and routine maintenance, open the complete beginner-to-advanced handbook.

QUICK CHECK

Quick troubleshooting order when the connection does not work

Troubleshoot issues in this basic tutorial across four layers: data source, active configuration, proxy entry point, and actual request. The order matters: if one layer is not working, changing settings in a later layer usually will not help. Reconnect and test after each change, and do not modify multiple settings at once.

  1. Confirm that the subscription list is not empty.

    Return to Subscriptions and update the subscription. Confirm that the server list actually contains configurations. If the update request itself fails, recopy the URL and check the current network before changing routing.

  2. Confirm that an active node is selected.

    Having nodes in the list does not mean the client selected one automatically. On desktop, set a node as the active server; on Android, clearly select the current configuration on the home screen.

  3. Confirm that the proxy entry point is enabled.

    v2rayN must have the system proxy enabled, while v2rayNG must remain connected. If the core is running but the proxy entry point is disabled, application traffic will not enter the client automatically.

  4. Find the first meaningful error.

    The end of the log may repeat the same result continuously. Scroll upward to find the error that appeared during the first startup or first request. Handle configuration parsing, port conflicts, connection timeouts, and routing mismatches separately.

  5. Replace only one node for comparison.

    Switch to another node in the same subscription and test again. A single-node failure and an all-node failure require different troubleshooting paths, so narrow the scope through comparison first.

  6. Check the device time and restart the target application.

    A clock difference can affect some connections, and running applications may retain old proxy settings. Correct the time, then restart both the client and the application under test before verifying again.

If these checks still do not reveal the cause, record the client name, current proxy mode, subscription update result, and first error in the logs, then work through the routine maintenance chapter in the complete handbook. Study TUN, DNS, and custom routing only after the basic connection is confirmed, so advanced settings do not hide the original problem.

NEXT STEP

What to learn after the basic connection

First understand subscriptions, nodes, and rule-based routing. Then study TUN mode and routine maintenance according to your application needs. The complete handbook follows this sequence and is intended for continued reading after the basic connection is stable.