QUICK STARTFirst connection setup

v2rayN Setup
Import a Subscription and Verify Your Connection

Complete your first setup in four steps: add servers to the list, decide how traffic is routed, then check whether your apps are actually using the proxy. If you already have a client and a working subscription, allow about 10 minutes to follow the steps in order.

Before you start: Get the client and subscription URL ready

Install the client version that matches your operating system and processor, then open it normally. See the download page to choose an installer. For your first setup, leave TUN, DNS, and custom routing settings alone. Defaults make it easier to pinpoint problems. If you have another proxy or VPN app running, close it first to avoid competing traffic routes.

A client manages settings and routes connections; installing it doesn’t provide servers automatically. Before you start, get a subscription URL you’re authorized to use, or a complete server share link. Subscription URLs usually start with https://; server share links often start with vmess://, vless://, or trojan://. They use different import options, so don’t identify them by URL length alone.

Subscription URLs may contain account credentials. Don’t post them in public comments, screenshots, or unfamiliar conversion sites. This guide covers the client’s graphical interface. If you’re unsure about the difference between subscriptions, servers, and native configuration, read the FAQ before continuing.

01 Import a subscription: From URL to server list

v2rayN: Add a group, then update it

Open v2rayN and find Subscription Group in the top menu, then open Subscription Group Settings. Add a group, enter a recognizable name in the Remarks field, paste the full subscription URL into the address field, and save. In some versions, add a group with the plus button next to the group list. To confirm you’re in the right place, look for fields for both the group name and subscription URL.

Saving the URL only registers where updates come from; it doesn’t load servers yet. Return to the main screen, select the new group, then choose Update Current Subscription from the Subscription Group menu. If the menu offers Update via proxy and Update without proxy, use the latter for your first update if you aren’t connected yet. Use the proxy option only after confirming that your current proxy works and the subscription URL requires it.

When the update finishes, check the status or log area at the bottom. A successful update should show server entries under the selected group, including names, addresses, ports, and protocols. If the list is still empty, check that you selected the right group and that the search box has no active filters. Don’t add the same URL as multiple groups; duplicates won’t fix an update failure.

v2rayNG: Save the subscription, then update it from the main screen

Open the v2rayNG side menu and go to Subscription Group Settings. Tap Add, enter a remark and subscription URL, then save. Return to the main screen and use the top-right menu to update the subscription. When the server list refreshes, check that the entries appear under the expected group. Depending on the version, the option may be called Update subscription or Update current group subscription. Choose the one for the group you just added.

If you only have a server share link, copy the entire link and use the main screen’s add option to import it from the clipboard. In v2rayN, use the import-from-clipboard option for share links instead of pasting a single server link into the subscription URL field. Importing a share link adds a configuration entry; it doesn’t necessarily support automatic updates.

Once servers appear in the list, don’t keep testing them or changing protocol fields. First configure the traffic entry point and routing. This helps avoid a situation where a server is selected but the browser’s traffic never reaches the client.

02 Choose a proxy mode: Understand entry points and routing

Desktop system proxy: Choose whether apps send traffic to the client

In v2rayN, find System Proxy in the bottom status bar, system tray menu, or relevant settings. Common options include Clear system proxy, Set system proxy automatically, and Do not change system proxy. Set system proxy automatically usually means the client writes the system proxy settings. It doesn’t automatically route traffic by website, and shouldn’t be confused with PAC mode. For your first setup, note where this setting is, then enable it after selecting a server and starting the core.

The system proxy mainly affects apps that follow the operating system’s proxy settings. Some apps use their own network settings, and some connections bypass this entry point. For your first connection test, use a browser that follows the system proxy. Don’t assume a server is broken just because a standalone app fails. Avoid enabling the system proxy alongside another transparent proxy setup to “improve reliability”; it makes the actual traffic path harder to diagnose.

Routing presets: Decide where connections go after entering the client

Next, find Routing Settings or the routing selector at the bottom of the window. For everyday use, choose a routing preset that fits your needs. Destinations matching direct rules connect directly; other traffic follows the preset. Some versions offer a Global preset for briefly testing the proxy route. Names vary by version, so check whether the rules send your test destination through the proxy outbound.

System proxy and routing are separate layers. The system proxy determines whether an app sends requests to the local port; routing determines which outbound handles requests after they enter the core. Even with global proxy routing selected, apps that aren’t using the system proxy won’t automatically send traffic to the client. For your first setup, choose an existing preset rather than editing rule order or geodata files. For more detail, see the Troubleshooting guide.

Android: Check routing and per-app settings

On v2rayNG, traffic enters through the VPN interface started by the app, so there’s no desktop-style system proxy switch to find. Open Settings and check that the routing mode is what you expect. If per-app proxying is enabled, review which apps are included or excluded. If your test browser is excluded, it may connect directly even when the main screen shows that the service is running.

If you’re new to per-app rules, keep the default scope for your first test and avoid changing several switches at once. Note the current routing preset, then continue to the connection steps. If the result isn’t what you expect, you can return to the same settings and check them rather than switching modes from memory.

03 Connect: Select a server and confirm the core is running

Set the active server; a selected row doesn’t mean you’re connected

Return to the server list and choose a clearly sourced, fully configured entry. In v2rayN, right-click and choose Set as active server, or double-click the server. Then check that the active indicator and server details at the bottom update together. Clicking a row may only select it for another action; it doesn’t always switch the client to that server.

To compare servers, test a small number first. Tests such as TCPing mainly show whether the destination port is reachable; they don’t confirm that authentication, transport, or requests to websites will work. A real connection test checks more of the actual connection path and can help you choose a server for the first time. However, results still depend on the test address, timeout settings, and current network, so they don’t guarantee every app will work.

If a test times out, try the same test with another server while keeping the routing mode and test destination unchanged. If every server fails, check your local network or subscription status. Don’t change the server port, user ID, transport, or security options at random. These values must match the server, and arbitrary changes usually cause more errors.

Enable the system proxy on desktop or approve VPN access on Android

After you set an active server, v2rayN usually loads or restarts the core. Check the logs for startup failures, configuration parsing errors, or port conflicts, then set the system proxy to automatic configuration. Some desktop operating systems may ask you to approve changes to network settings; follow the system prompts. Keep v2rayN running, even if its window is minimized to the system tray.

In v2rayNG, tap a server to select it as the current configuration, then tap Start on the main screen. The first time you start it, Android will ask to authorize a VPN connection. Confirm that the request came from the client you just opened, then allow it. The button and system status area should reflect that the service is running. If another VPN is already connected, stop it before restarting v2rayNG.

Check the status area or logs as soon as the client starts. If a listening port is already in use, close other proxy apps and restart the current client; don’t keep tapping Start. If you see an unsupported configuration or transport warning, check whether the client and core support the settings instead of disabling certificate verification. For basic causes, see the FAQ.

Step complete when: The active server is clear, the core starts, and the desktop system proxy is configured or the Android VPN service is running. This only confirms that the local entry point is ready. Verify an actual request in the next step; a status icon alone doesn’t prove the connection works.

04 Verify it works: Cross-check access, logs, and exit IP

Confirm the request succeeds, then check how it was handled

Open the browser you’re using for the test and visit a stable HTTPS page you’re authorized to access. Use a new tab and refresh to avoid seeing a cached page. A successful load is only the first clue. If your routing rules send that destination directly, it doesn’t prove the proxy outbound is working.

Switch back to the client and check the logs for the time of your test. If the log level includes connection records, look for the destination domain and whether it was routed directly or through a proxy outbound. Outbound labels vary by configuration, so don’t expect a particular fixed term. Don’t leave verbose logging enabled just to find a record. If your current log level doesn’t show the full route, use the exit IP check below rather than assuming no traffic passed through.

Compare exit IPs under the same conditions

Use a public IP lookup site you trust. Note the result with the proxy off, then enable the proxy and check again. Keep the browser, lookup site, and network the same, and make sure routing sends the lookup request through the proxy. If you normally use a routing preset, temporarily choose one that explicitly proxies the request, then restore your usual settings after the test.

A different exit IP or network provider compared with a direct connection can help confirm that the proxy works, but the displayed location doesn’t have to match the server’s label exactly. Server names are just identifiers, and IP geolocation databases can be inaccurate. If the results never change, check that the browser follows the system proxy, that per-app rules don’t exclude the Android browser, and that routing doesn’t send the lookup request directly.

Once browser access works, test the app you actually plan to use. If only that app fails, check its own proxy settings, connection type, and whether it’s covered by the proxy. Don’t immediately discard a server you’ve already verified. For issues such as all pages failing, subscription updates failing, or only some domains having problems, use the Troubleshooting guide to narrow down the cause.

Save a working setup and disable proxying when you’re done

Once access, logs, and exit IP results agree, note the active server, subscription group, and routing preset as a baseline for future troubleshooting. Change one setting at a time and repeat the same tests. If something goes wrong, you can revert the last change instead of reinstalling the client.

When you’re done on desktop, clear the system proxy in v2rayN before closing the client. If you end the process directly, the system may keep pointing to the local port, leaving other apps unable to connect. On Android, tap Stop in v2rayNG and confirm that the system VPN has disconnected. To reconnect later, select a server, start the client, and run a quick access test.

Download the client