How to Use v2rayN
Import Subscriptions and Test Your Connection
Complete your first setup in four steps: import a subscription → choose a proxy mode → connect → verify traffic. First make sure your browser works, then fine-tune routing rules.
Before you start, install the client, get a subscription URL you’re authorized to use, and make sure your device has internet access. The client reads configuration and establishes a connection; it does not provide a server or subscription. If you already have a configuration, you can start at step 2, but first confirm which server is active.
Import a Subscription and Select a Server
First, distinguish a subscription URL from a single share link. A subscription URL is usually a full web address that returns a list of server configurations when updated. Content beginning with vmess://, vless://, or trojan:// is usually a single share link, which you can import from the clipboard. These use different import options: pasting a subscription URL into the share-link import dialog may not create a usable configuration. This guide uses subscription groups because they’re easier to refresh and manage.
v2rayN: Add a Group, Then Update It
From the main window, open Subscription Group at the top, then select Subscription Group Settings. Add a group, enter a recognizable label, paste the full URL into the subscription address field, and save. Don’t include extra spaces, line breaks, or text copied from a chat app. If the URL contains parameters, keep the entire address—don’t copy only the part before the question mark. The label is only for display on your device and does not change the server connection settings.
Return to the main window, select the group you just added, then open the subscription group menu and choose Update Subscription (without proxy). This is usually the simplest option when you haven’t established a proxy connection yet. After the update, check whether new servers appear in the list and whether the logs show a retrieval error. Saving a group only stores the URL locally; it doesn’t fetch configurations. This step is complete only when the list has actually updated. If a direct update fails but an existing proxy works, try updating through the proxy.
Once configurations appear in the list, right-click the server you want to use and select Set as Active Server. Check that the active marker changes; a highlighted row doesn’t necessarily mean that server is enabled. If you already have other groups, make sure the new group is selected so you don’t accidentally test an old configuration. You don’t need to test every entry now—use one server to complete the next three steps.
v2rayNG: Subscription Groups and Clipboard Imports
Open the menu on the v2rayNG main screen and select Subscription Group Settings. Add a label and subscription URL, then save. Return to the main screen and update the subscription from the menu; depending on the version, this may be called Update Current Group Subscription or something similar. Check that the intended group is selected first. When the update finishes, tap the server you want to use and confirm its selection marker. For a single share link, copy the complete link and choose Import from Clipboard from the add menu on the main screen. You don’t need to create a subscription URL for it.
Subscription URLs may contain personal access credentials. Don’t share the full URL in public screenshots or support posts. If an update fails, check whether the URL is incorrect, the request timed out, or the response couldn’t be recognized. Don’t repeatedly delete all your configurations. For details on subscription formats and import options, see the installation and setup FAQs. For step-by-step help with retrieval errors, see the subscription failures section of the troubleshooting guide.
Choose a Proxy Mode and Routing Rules
System proxy settings and routing modes control different things. The system proxy determines whether apps that support it send requests to the client. The routing mode determines whether the client sends those requests directly, through the proxy, or blocks them. So switching to global routing won’t make an app send traffic to the client if it isn’t using the proxy in the first place. For your first setup, test with a browser. Don’t enable additional traffic-capture features or run another proxy app at the same time.
v2rayN: Choose a Route, Then Enable the System Proxy
Find the routing selector at the bottom of the main window and choose Bypass Mainland China (Whitelist). This mode typically sends mainland China domains and corresponding addresses direct, while routing other requests through the proxy according to the rules. It’s a useful starting point for basic setup. The actual result depends on the active rule set, rule order, and domain resolution; the mode name alone can’t tell you how every site will be routed. If you don’t see this option, check whether you’re using custom routing. Don’t delete existing rules just to match this guide.
Next, set the system proxy to Automatically Configure System Proxy. This option may be in the status bar or the tray menu; confirm the final setting shown in the interface. Clear System Proxy removes the system proxy settings. Do Not Change System Proxy means the client won’t modify existing settings—it does not enable the connection. Browser extensions or manual proxy settings can override the system settings, so disable those rules while testing to avoid conflicts.
To check whether a problem is related to routing, temporarily switch the route to Global for comparison, then switch back to your usual routing mode. Global routing doesn’t mean every program will use the proxy, nor does it guarantee that the server is working. After changing the route, make a new web request and reload the client configuration if needed. Don’t use an already-open page or an existing connection to judge whether the new rules are working.
v2rayNG: Use Routing Settings, Not the Desktop System Proxy
On Android, you don’t need to look for the desktop option Automatically Configure System Proxy. Open Settings in v2rayNG, find the routing options, and choose a preset that bypasses mainland China addresses. Note that Bypass LAN and Bypass LAN and Mainland China Addresses cover different ranges; choose the one that suits your needs. Some versions display predefined and custom rules separately. For your first setup, stick to an existing preset rather than adding broad custom rules that may override it.
If you’ve configured per-app proxying, make sure the browser you’re testing is included in the apps that send traffic to the client. An excluded app may connect directly even when the client is connected. This guide doesn’t cover domain lists, IP lists, or DNS policies, as they add variables to the initial setup. If a particular site isn’t routed as expected, follow the symptoms in the troubleshooting guide. For an explanation of the concepts, see the usage tips FAQs.
Connect and Check the Logs
You’ve selected an active server and chosen how traffic reaches the client. First confirm that the client can load its configuration, then try visiting a website. Keep these three states separate: the graphical interface is open, the proxy core has started, and a remote connection has succeeded. An open window only means the interface is running. A running core only means the local service has started; it doesn’t prove the remote server is reachable.
v2rayN: Check the Active Server and Core Startup
Confirm the active server in the main window, then check the log area at the bottom. v2rayN usually starts the core after you select an active configuration. If you’ve just changed settings or the logs still refer to an old configuration, click Reload at the top to load it again. Look for new log entries, not just older lines still shown in the window. A startup message such as core: Xray started is an indication that the local core is running. The exact wording varies by version and core.
If you see a startup failure, port conflict, or configuration parsing error, stop here and resolve it first. For a port conflict, check whether the client is running more than once or another proxy program is still active. For a configuration error, check that the active server was imported completely. Don’t change the core, listening port, and other traffic-capture settings all at once; even if the connection recovers, you won’t know which change fixed it. For detailed log diagnostics, see the troubleshooting guide. This guide only asks you to resolve clear startup errors before continuing.
Once the core is running, leave v2rayN open and confirm that the system proxy is still set to Automatically Configure System Proxy. Closing the window may only minimize it to the tray, so check the tray status and running process to see whether it has actually exited. Don’t quit the client and then test in a browser: if the system proxy still points to a local listening address after the local service stops, the browser may report a proxy connection error.
v2rayNG: Confirm VPN Permission and Connection Status
Select a server on the main screen and tap Connect. The first time you connect, Android will usually ask for VPN permission. Check that the request is from v2rayNG, then allow it. This VPN is the system interface used to route app traffic; it doesn’t confirm that the selected server is working. After granting permission, check the Connect button and system notification, then return to the client and look for immediate errors. If you denied permission, tap Connect again and approve the request.
If another VPN connection is active on your device, disconnect it before starting v2rayNG. If the connection stops immediately, check the in-app error and system notification instead of repeatedly tapping the button. Only investigate battery optimization and background restrictions if the connection tends to drop after the screen locks. For the first test, keep the screen on to help distinguish background restrictions from connection settings. The client should now be running continuously, but you still need to test actual web access in the next step.
Test Web Access and Routing
Open the browser you’re using for the test. Visit a site that should use the proxy under your current rules, then one that should connect directly. Choose sites you know and that are currently available. Refresh the page or open a new one instead of relying on a cached tab. If you’ve just switched from another proxy app, close and reopen the browser to reduce the effect of existing connections. One inaccessible site doesn’t prove the entire setup is broken; cross-check with another site.
First, Check Whether Requests Reach the Client
In v2rayN, make a new browser request and check the logs for a related domain or connection entry. If nothing appears for a long time, first check the system proxy, browser-specific proxy settings, and whether the local listener is working. Don’t immediately change the remote server settings. The level of detail depends on the current log level. If access details aren’t shown, check whether the relevant logging is disabled and enable it temporarily if needed. No log entry doesn’t automatically mean no traffic was sent.
In v2rayNG, first confirm that the connection is still active, then check whether per-app rules exclude the browser. If other apps work but one browser doesn’t, check that browser’s own settings, cache, and network behavior first. If no apps can connect, check the connection status and active server. Narrowing down the issue by scope is more reliable than repeatedly changing every setting.
Next, Check Which Outbound Route Was Used
If the logs show outbound tags, check whether direct, proxy, or block matches what you expect. Custom configurations may use different tags, so check the actual settings. A default route entry often means the connection used the default route; it isn’t an error and doesn’t necessarily mean the proxy was used. Consider the selected mode, default outbound, and nearby log entries together. Don’t conclude that routing is correct based on a single keyword.
If a site loads but takes an unexpected route, note its domain, the current mode, and the outbound route shown. If needed, temporarily switch to Global and repeat the same request for comparison. If it works only after switching, continue troubleshooting how the rules match. If it fails in both modes, check the active server, connection logs, or name resolution. For DNS, protocol-specific settings, and rule priority, use the systematic troubleshooting guide rather than changing settings one by one during your first setup.
Once proxy and direct access both work as expected, restore any settings you changed temporarily during testing. Note the subscription group, active server, and routing mode you’re using. There’s no need to save screenshots containing full credentials. If the connection changes after a subscription update, first check that the active configuration is still available, then repeat these tests. A successful subscription update doesn’t necessarily mean web access is working.
Restore Network Settings Before You Exit
Before exiting v2rayN, select Clear System Proxy, quit the client, then check that your browser can connect directly as usual. Do Not Change System Proxy does not clear the settings. On Android, tap Disconnect in v2rayNG and confirm that the system connection notification goes away. To use the client again, select a configuration and connect. If access still fails after disconnecting, first check for leftover manual proxy settings or other traffic-capture tools.
More Setup Help and Troubleshooting
Start with this basic configuration for everyday use. For subscription formats and proxy modes, see the FAQs. If you can’t access the internet, a subscription update fails, DNS is acting up, or the system proxy isn’t working, follow the symptoms in the troubleshooting guide. To switch platforms or reinstall, visit the client downloads page.