First connection / Four-step setup

v2rayN and v2rayNG
Subscription import and connection guide

Start with an existing subscription URL and work through import, mode selection, connection, and verification. Get one connection working and easy to check before changing advanced settings.

Before you begin, make sure the client is installed, you have a valid subscription URL you’re authorized to use, and your device has internet access. The client reads configuration and forwards traffic; it does not provide subscriptions or servers. If you haven’t installed it yet, visit Download the client to choose the right package. For installation, system permissions, and architecture details, see the installation and setup guide for all platforms. The steps below cover a typical first-time setup: keep the default port and DNS settings, and don’t write a configuration file in advance.

01 Import a subscription

The first step is complete only when server entries appear on the main screen—not when the URL has merely been saved. A subscription URL retrieves configuration and is usually provided by your subscription provider. Copy the complete URL without the page title, explanatory text, or surrounding spaces. A subscription URL is different from a link for sharing a single server: content beginning with vmess://, vless://, or trojan:// is generally imported as a share link, not pasted into the subscription URL field.

v2rayN: Add a subscription group and update it

Open v2rayN and choose “Subscription Group Settings” from the “Subscription Group” menu at the top. Select “Add,” enter a recognizable name such as “Daily use” under “Alias,” and paste the subscription link into “URL.” The alias is for identification on your device and does not change the subscription. Check that the URL is complete, then save the group. If you see “Enable updates” and “Auto-update interval (minutes),” keep the defaults for now; set up automatic updates after a successful manual update.

After saving, return to the main screen, select the new subscription group, then choose Update current subscription from the “Subscription Group” menu. If no proxy connection is running yet, use the update option that does not go through a proxy. If the URL is only reachable through an existing proxy, first confirm that connection works, then use the update option that goes through a proxy. You can’t use a configuration that hasn’t been imported yet to download itself. When the update finishes, check that the list shows server details such as names, addresses, and protocols, and confirm they belong to the new group.

v2rayNG: Save the group, then update from the main screen

Open v2rayNG, expand the side menu, go to “Subscription Group Settings,” and tap Add. Enter a “Remark” and the subscription URL, then save using the button on the page. Return to the main screen and choose “Update subscription” from the top-right menu. Some versions offer a choice between the current group and all groups; for the first update, update only the group you just added. Wait for the update to finish and check that server entries appear. Adding a group and updating it are separate actions; the list may stay empty until you update.

If the update fails, reopen the group settings and check the URL, then review the update message or log. An expired link, a timeout, and content the client can’t parse require different fixes; don’t keep creating groups with the same name. If the provider gave you a login page instead of a subscription endpoint, the client may receive webpage content and still be unable to create server entries. Get the correct URL and try again. For more on subscription formats and importing from the clipboard, see How to import a subscription link.

Ready to continue: The group updates successfully, and at least one selectable server appears on the main screen. Next, decide which apps should use the proxy and which requests should be proxied, then connect.

02 Choose a proxy mode

Keep two settings distinct. System proxy or VPN mode controls how app traffic reaches the client; routing rules decide whether requests that reach it go direct, through a proxy, or are blocked. Enabling the system proxy does not send traffic from every program through the client, and choosing global routing does not capture apps that never send traffic to it. For your first test, use a simple way to route traffic through the client and keep the existing routing preset.

v2rayN: Configure the system proxy automatically and keep the routing preset

In v2rayN, find “System Proxy” in the main screen’s status area or the tray menu, then choose “Auto Configure System Proxy.” Common options also include “Clear System Proxy” and “Do not change system proxy”: the first removes the system proxy settings, while the second leaves the current settings unchanged. The latter does not mean the browser is using the client, so don’t assume the system proxy is enabled just because the client is running.

Next, open “Routing” or “Routing Settings.” If a preset such as “Bypass LAN and mainland China addresses” is available, start with that. It sends requests matched by the rules directly and handles other requests according to the preset’s outbound. Preset names and rule sets vary by version, so note the current selection and avoid adding lots of rules for your first test. You don’t need to enable TUN at this stage; for browsers that respect system proxy settings, the system proxy is usually enough to verify this setup.

v2rayNG: Use VPN mode and choose a split-tunneling preset

In v2rayNG settings, make sure VPN mode is enabled rather than a mode that only provides a local proxy port. VPN mode uses Android’s VPN interface to capture eligible app traffic, so you don’t need to enter a local proxy address in the browser. Open “Routing Settings” and start with a preset such as “Bypass LAN and mainland China addresses.” If per-app proxying is enabled, temporarily disable custom app filtering or make sure the browser you’re testing is included.

To prevent settings from conflicting, run only one proxy or VPN client during testing. Other desktop proxy apps may change the same system proxy settings; another VPN service on Android may disconnect the current one. Leave DNS, sniffing, and the local listening port at their defaults. Change a setting only when the test results point to it; changing several things at once makes it hard to identify the cause.

Ready to continue: On desktop, the system proxy option and routing preset are selected; on Android, VPN mode and the apps to test are confirmed. The traffic path is ready, but you still need to choose a server and start the service.

03 Select a server and connect

Choose a server from the group you just updated. For your first test, try an entry recommended by your provider and suited to your needs; there’s no need to benchmark every entry first. Names and location labels in the list are for identification and don’t prove a server is working. Check the actual connection and runtime log in the next step. For testing metrics and selection tips, see How to choose a server and test latency.

v2rayN: Set the active server and check the runtime log

Right-click the server you want in the list and choose “Set as active server.” Some versions also let you double-click to switch; check the active indicator in the interface to confirm. A highlighted row may only be selected, not active, so don’t confuse the selection highlight with the active status. The client usually reloads the configuration after a switch. Wait for startup messages to stop, then check for configuration parsing errors, listener failures, or messages that the core has stopped.

In the v2rayN desktop client, selecting an active server usually starts or reloads the service; you don’t need to look for the same Connect button used on Android. If the service is shown as stopped, use the start or restart option in your version. Make sure “System Proxy” is still set to “Auto Configure System Proxy”—don’t switch it to “Clear System Proxy” after starting the service. If a local port is already in use, close other proxy clients and restart the service. Don’t run multiple instances while changing ports at random.

v2rayNG: Select a server and approve the system request

On the v2rayNG main screen, tap the server you want and confirm the active indicator moves to it, then tap the Connect button in the bottom-right corner. The first time the VPN service starts, Android displays a connection request. Confirm it after checking that v2rayNG is the requesting app. Once approved, the connection status on the main screen should change, and a VPN icon may appear in the status bar. This indicates that the VPN interface is active; it doesn’t prove the remote server can forward requests successfully.

If the connection drops immediately, check the client log for errors at that time. For a configuration parsing error, first check the subscription content and client compatibility. For a connection timeout, confirm the device itself has internet access, then try another server in the same group. Repeat the connection and browsing test after switching servers. Don’t change the transport, port, and security settings all at once. Use the provider’s original configuration as the reference for subscription settings.

If v2rayNG disconnects when sent to the background, keep it in the foreground for this test. Once you’ve confirmed the connection works, adjust background activity and battery restrictions in system settings as needed. Settings locations vary by device; see Android installation and background operation. You don’t need to change every system option before your first connection.

Ready to continue: The client service is still running, the correct server is active, and the desktop system proxy or Android VPN is enabled. Next, verify traffic with an actual request instead of relying on the connection icon.

04 Verify the connection

Open a new browser tab and visit a site you normally use, then visit one you expect to connect to directly. A new tab helps avoid misleading results from cached pages, though existing connections may still be reused; if the result looks wrong, fully quit and reopen the browser. Don’t judge by whether the page looks different. Check that the request completes and that the client records it.

Check the page and client log together

Return to the client log and look for the domain or connection entry at the time you visited the site. The default log level may not record every request. If needed, temporarily switch to a level that shows connection details, then restore it after testing. If the log shows direct, routing sent the request directly. If it shows a proxy outbound, check whether the page loaded successfully to confirm the remote connection. Outbound labels vary by configuration; they don’t have to use the same name.

If you browse in the browser but see no related entries in the client log, first check whether traffic is reaching the client. On desktop, confirm the system proxy setting and disable browser extensions or custom proxy settings that override it. On Android, make sure the VPN is still connected and check that per-app proxy settings haven’t excluded the browser. Don’t switch servers yet; the request may not have reached the client at all.

If the log shows the target connection but it keeps timing out, try another server in the same group and revisit the same site. If only one site fails while other proxied requests work, check the site, its routing rules, and DNS rather than assuming the entire client is broken. To distinguish a routing issue from a traffic-capture issue, briefly switch to “Global” routing and test again. Here, global means traffic that enters the client uses the proxy outbound; it does not guarantee that every app on the device is captured. Restore the original routing preset after testing.

Confirm network access is restored after disconnecting

After verifying the connection, test what happens when you stop it. In v2rayN, choose “Clear System Proxy” before exiting, then confirm the browser can still reach sites that connect directly. If you end the process while the system proxy still points to a stopped local port, the browser may report a proxy connection error. If that happens, reopen the client and clear the system proxy, or check the system network proxy settings and remove any leftover configuration. You don’t need to reinstall the browser.

In v2rayNG, tap the Connect button to disconnect the VPN. Make sure the VPN icon disappears from the status bar, then test that the device can access the internet normally. If it still can’t connect, check whether the system has Always-on VPN or a setting that blocks connections outside the VPN enabled. Understand what these options do before deciding to keep them on; during your first test, don’t let them confuse the results of disconnecting.

For everyday use, follow the same order: update the subscription, choose a server, confirm the proxy mode, then test access. Set an automatic update interval only after a manual update succeeds; more frequent updates aren’t always better, so follow your provider’s guidance. When troubleshooting, note when the issue occurred, what you were doing, and the relevant error lines; hide credentials before sharing them. For installation requirements, TUN, DNS, and routing, see the installation and setup guide for all platforms. If you only need to check where an option is, follow the four steps on this page.

Back to subscription import ↑