First-time setup · Four steps

v2rayN and v2rayNG
Subscription Setup Guide

Follow the steps to import a subscription, choose a mode, connect, and verify access. If the client is installed and your subscription URL is ready, setup takes about ten minutes. If something goes wrong, troubleshoot at the step where it happens.

Import a subscription

Open the client you installed. If you haven't installed it yet, go to the client downloads page and choose the installer for your platform. Once installation is complete, return here. Get the full subscription URL from your service provider and make sure it has not expired. The client reads configurations and connects to a service; installing it does not provide service by itself. Don't paste an ordinary webpage URL into the subscription field.

When copying the URL, select everything from the beginning to the end. Check whether your chat app split the link across lines or included extra spaces or explanatory text. If your provider gives you a QR code or a single share link, first check whether it represents a subscription or one server configuration. A single share link usually imports one configuration and is not the same as a subscription that can be updated regularly. For definitions, see the “Subscriptions and nodes” section in the Glossary.

Add a subscription group in v2rayN

Open the Subscription Group menu at the top and select Subscription Group Settings. Add a group, enter a recognizable name in the Remarks field, and paste the full URL into the Subscription URL field. For your first setup, leave the other options at their defaults. Save and close the settings window. This only saves the URL used to fetch configurations; no server will appear in the main list yet, which doesn't necessarily mean the import failed.

Next, reopen the Subscription Group menu and select Update All Subscriptions (without proxy). Before you have a connection, this option fetches the subscription over your current network. Wait for the update to finish, then check the server list under the relevant group. Make sure the list isn't empty and the configurations are in the expected group before moving on. If you have multiple groups, check the active filter so you don't mistake configurations from another group for the update results.

If the update fails, first check that the URL is complete, the subscription hasn't expired, and your current network can reach the subscription service. If your provider specifically requires updates through a proxy, first establish a working connection, then choose the update option that uses the proxy. Don't keep switching update options before connecting. Avoid posting subscription URLs containing personal access details in public screenshots while troubleshooting.

Add a subscription group in v2rayNG

Open the side menu in the top-left corner and select Subscription Group Settings, then tap the add button. Enter a name and the subscription URL, save, and return to the main screen. Open the top-right menu and select Update Subscription, then wait for the list to refresh. Some versions offer different update methods in the menu; if you're not connected yet, choose the option that doesn't use a proxy. If the interface groups configurations, switch to the group you just added and check that its configuration cards appear.

Once the update succeeds, don't keep tapping Connect or test every configuration right away. Just confirm that the configurations were imported, then choose how traffic should enter the client in the next section. If the update succeeds but no entries appear, check the group filter, whether the subscription is empty, and whether the client supports its format. For more help, see Troubleshooting. You don't need to edit subscription contents manually for initial setup.

Choose a proxy mode

Once the server configurations are available, distinguish between two settings: proxy mode determines how app traffic enters the client, while routing rules determine which outbound route it takes afterward. Set system proxy automatically doesn't mean every app will use the proxy; choosing Bypass mainland China doesn't mean the client is running. Check these settings separately to make connection testing easier.

Start with the system proxy in v2rayN

Find System Proxy in the bottom status bar or system tray menu, then select Set system proxy automatically. Apps that follow the system proxy settings will use the client's local proxy, making this a good starting point for testing in a browser. Leave Tun off for your first setup. Don't configure multiple proxies in your browser extension, system network settings, and client at the same time, as they may conflict.

If you see Do not change system proxy, it means the client won't modify the existing system proxy settings; it doesn't mean the client will capture traffic automatically. Clear system proxy removes the proxy settings from your system. For your first setup, choose Set system proxy automatically and decide whether to keep a manual configuration after testing the connection. If your organization or another app already configured a proxy, record its settings first so you can restore them if needed.

Next, find Routing or Routing Settings. If you want suitable destinations in mainland China to connect directly while other traffic follows the rules, start with Bypass mainland China. What this does depends on the selected rule set, so don't assume how every domain will be handled from the option name alone. Keep the rules unchanged during your first test. If a site behaves unexpectedly, check its matching rule rather than changing routing, DNS, and core settings all at once.

Use VPN mode in v2rayNG

Open Settings, find the mode options, and confirm VPN mode is selected; some versions enable it by default. This mode uses Android's VPN interface to handle traffic and doesn't require extra system permissions, but you'll need to approve the system connection prompt the first time you start it. If you've configured per-app proxying, check that your test browser is included. Apps on the exclusion list won't use the proxy just because the main screen says connected.

Check the routing settings and choose rules such as Bypass mainland China as needed. VPN mode doesn't mean every destination is routed through the remote server; traffic classified as direct by the routing rules may still connect directly. Start with one clear mode and rule set. Next, select a configuration and connect. If a desktop app doesn't follow the system proxy, first verify the basic connection, then see the System Guide for when to use TUN and what permissions it requires.

Connect

Once the mode is set, choose a configuration from the group you just updated. Prefer an entry your provider recommends for your current network, and change only one configuration at a time. Server names, speed test results, and real-world webpage access are different indicators. Even if a test returns a result, check that the core starts, the service is working, and the target app is using the proxy.

Set an active server in v2rayN

Return to the server list, select the entry you want, then use Set as active server in the right-click menu. In versions that support double-click activation, you can follow the on-screen instructions instead. Check that the active marker is on the intended entry. In v2rayN for desktop, connecting may not involve a separate Connect button. What matters is that the active server is selected, the core is running, and the system proxy is set to automatic configuration.

Check the information area at the bottom of the client or open the log window. If you see a missing runtime component, configuration load failure, or local port conflict, fix the startup issue before testing in a browser. Don't try to hide a local startup error by repeatedly changing servers. For example, switching remote configurations usually won't free a port that's already in use on your device. If you encounter an error, note its exact wording and look it up in Troubleshooting.

Start a connection in v2rayNG

On the main screen, tap the configuration card you want to use and confirm the selection marker changes, then tap the Connect button in the bottom-right corner. The first time you connect, Android will show a VPN connection request. Confirm that it comes from v2rayNG, then approve it. If you deny the request, the VPN interface can't start. Return to the main screen and connect again; there's no need to reimport the subscription.

Wait for the status to update and check the system VPN indicator. If the button quickly returns to the stopped state, open the logs and check for configuration or permission errors. If another VPN service is running, stop it before connecting v2rayNG; Android generally can't have two standard VPN services capture traffic for the same user at once. Repeatedly tapping Connect toggles the connection on and off, and can stop a connection that just started.

Once the client shows that it's running, leave it open. You can minimize the desktop window or switch to a browser on Android, but don't close the client process. Next, test real-world access to confirm the connection works; the Connect button's color or a system status icon alone isn't enough.

Verify that it works

Check the client status, target app, and routing results in that order. Confirm the selected configuration is still active and the client hasn't stopped or started reporting errors. Then use the target app to visit an HTTPS site that should use the proxy. Choose a site you normally need to access; there's no need to enter an unfamiliar URL for testing. Don't submit your subscription URL or account details on an untrusted test page.

Test access in a real app

Open a new browser tab, wait for the page content to load, then click a link on the site. If the browser was already open when you changed modes, close old tabs and try again. Restart the browser if needed to avoid reusing existing connections. Then visit a commonly used site that should connect directly and confirm both types of access match your needs. A page title, cached content, or connection test result alone doesn't confirm that the entire request is working.

To check the outbound route more closely, review the client's connection records or logs for newly sent requests. Identify the destination domain, then check whether it matched the expected rule and outbound route. The details shown vary by core and log level, and may not include the full matching process every time. An IP lookup can help identify the route for that request, but doesn't prove that every app and domain uses the same route.

Narrow down issues by their scope

If your browser works but a desktop app doesn't, first check whether it follows the system proxy or has its own network settings. Don't assume the subscription has stopped working. If only one Android app is affected, check the included and excluded apps in the per-app proxy settings. To capture traffic from more types of apps, see the TUN section in the System Guide after basic testing, rather than enabling every option during your first test.

If none of your destinations open, first check whether a regular direct connection works, then look in the client logs for startup failures, connection timeouts, or DNS errors. Change one thing at a time—for example, try another imported configuration before switching networks. If changing configurations fixes the issue, the original entry or route is more likely to be the cause; if changing networks fixes it, check your current network environment. Leave advanced DNS settings until you've confirmed the basic connection. Continue in the System Guide.

Test disconnecting and restoring normal access

After confirming everything works, practice disconnecting normally. In v2rayN, select Clear system proxy and confirm your browser has normal internet access again, then exit the client from the system tray menu. Closing the window alone doesn't necessarily stop the client in the background. If you had a manual proxy setup, restore the settings you recorded instead of clearing every proxy field. Check that Tun has stopped only if you enabled it.

In v2rayNG, tap the Connect button to stop the service. Confirm the system VPN indicator disappears, then test a regular webpage. If access is still affected, check for another VPN service, app-specific proxy settings, or network restrictions. If the connection often drops when the screen turns off, check Android's battery management and background activity restrictions. There's no need to change all battery settings during initial setup.

You've now completed the full setup: fetching a subscription, routing traffic through the client, starting the service, and testing real-world access. Keep track of the group, mode, and routing rules you used, and leave this verified baseline in place when updating the subscription. For help, find the issue by symptom in Troubleshooting. To learn how protocols, routing, and DNS work together, explore the Glossary or the System Guide.