Before you start: Client and subscription link
Install the client that matches your device. Open v2rayN on desktop or v2rayNG on Android. On the first launch, the system may ask for permission to access the network; allow the client to establish a network connection, or imported configurations will not be able to connect. If the v2rayN window does not appear after launch, check the system tray; it may still be running in the background.
Next, prepare a working subscription link. The configuration provider supplies this link, usually as a URL beginning with https://. Copy the entire URL without selecting any explanatory text around it. A subscription link is a configuration entry point, so do not paste it into public pages, chat groups, or screenshots. This guide only requires entering it in the client's subscription URL field.
If you only have a single share link, you can use an option such as “Import from clipboard” in the client, but a single link will not sync later changes automatically. For a quick setup, a subscription group is preferable: when the provider updates the servers, run “Update subscription” once instead of importing entries one by one.
Open the v2rayN main window
Confirm that the top menu, server list, and bottom status area are visible. After the window closes, v2rayN may remain in the system tray.
Open the v2rayNG main screen
Confirm that the side menu expands, and be ready to grant permission to establish a network connection when the system prompt appears.
Once these preparations are complete, do not change DNS, TUN, port, or core parameters yet. The defaults are sufficient for a first connection. When you need to understand different cores, protocols, and advanced routing rules, continue chapter by chapter in the complete beginner-to-advanced guide.
Import a subscription: Add a group and update the configuration
v2rayN desktop
In the v2rayN main window, open “Subscription groups” and enter the subscription group settings. Choose “Add,” enter an easy-to-recognize name such as “Daily configuration” in the remarks field, and paste the complete subscription link into the URL field. The remark is only for local identification and does not affect connections. When you add multiple subscriptions later, clear group names make it easier to tell where servers came from.
Save the group, return to the main window, open the subscription menu, and choose “Update all subscriptions.” The client will read the saved URL and parse the configuration. When the update finishes, the server list should contain one or more selectable entries. First confirm that new content actually appeared; do not guess the protocol from the name or manually change the address, port, transport, or security settings. These fields are already included in the subscription result.
If the list is still empty after saving, return to the subscription group settings and check for extra spaces at the beginning, end, or middle of the URL. Then update that group separately and check the message at the bottom of the window or the log. If you see an error such as “Unable to connect” or “Timed out,” do not keep clicking Update rapidly. Confirm that the device can access the network normally, wait a moment, and try again.
v2rayNG for Android
Open the v2rayNG side menu, go to “Subscription group settings,” and tap the Add button. Enter the group name and subscription URL, save, return to the main screen, and choose “Update subscription” from the menu. Some versions require you to select the newly created group before refreshing. If no configuration appears on the main screen, return to the group list and confirm that the group is enabled.
After the update finishes, the main screen will list the configurations parsed from the subscription. Tap one entry to make it the current selection. The selected entry usually has a checkmark or a different background. This only specifies which configuration to connect to next; the network connection has not started yet.
If the subscription contains many entries, choose one clearly named configuration for the first attempt. Latency tests can help with later selection, but results depend on the current network, test target, and time, so there is no need to refresh repeatedly for a particular number. Establish one stable connection first, then organize servers and subscription groups. For multi-subscription filtering, remarks, and update strategies, see the subscription and server management section.
Choose a proxy mode: Start with the system proxy and rule-based routing
After importing the subscription, decide which programs and requests the client should handle. For first-time use, desktop users should choose “Automatically configure system proxy” and set the routing mode to “Bypass mainland China”; Android users should start with rule mode. This combination is easy to observe and makes it easier to tell whether a problem comes from the server, an application's proxy settings, or a routing rule.
v2rayN: Automatically configure the system proxy
In the v2rayN tray menu or at the bottom of the main window, find “System proxy” and choose “Automatically configure system proxy.” Once enabled, browsers and desktop programs that follow the system proxy will send eligible requests through v2rayN. If the status still says “Clear system proxy” or “Not enabled,” the client core may be running, but other programs do not yet have a proxy entry point.
Then open “Routing settings” and choose the preset “Bypass mainland China” rules. This keeps common local and intranet addresses direct while sending other matches through the proxy outbound. Do not add custom domains, process rules, or complex DNS entries during the first connection; otherwise, it will be difficult to identify which rule affected a failed verification.
v2rayNG: Rule mode
In the v2rayNG settings or main-screen configuration options, find the routing mode and choose rule mode. Preset rule names may vary slightly between versions. The key is to use the client's rule-based routing instead of sending every request through the same outbound from the start. Return to the main screen and confirm that the server you selected earlier is still active.
The system proxy mainly covers programs that read the system proxy settings. Some games, command-line tools, and standalone network programs may bypass them, so “the browser connects but an app does not” does not necessarily indicate a server failure. TUN mode can handle more types of network requests, but it involves a virtual network adapter, permissions, DNS, and routing conflicts. Leave it off during the quick start; when you need to handle programs that ignore the system proxy, read the TUN mode section.
Connect to a server: Set the active configuration and start
After configuring the mode, return to the server list and choose a configuration. In v2rayN, double-click the target entry or use its context menu to set it as the active server. Confirm the active entry and start the service. If the client is already running, switching the active server usually reloads the core configuration. The bottom status area should show the current server and system proxy status, while the log records core startup and configuration loading.
In v2rayNG, tap a configuration first, then tap the circular start button on the main screen. On the first launch, the system displays a network connection confirmation; accept it to establish the connection. When the start button changes state and a connection indicator appears in the system status area, the client has begun handling network requests. Do not exit it immediately or force-close it from the recent apps screen.
Normal startup logs usually include the listening port, configuration loading, and core runtime information. A single closed connection does not necessarily mean overall failure. Focus on persistent repeated configuration parsing errors, unreachable addresses, handshake failures, or permission errors. If the log stops immediately after startup, keep the current view and note the earliest error line; later repeated messages are often consequences of that first error.
Change only one variable while troubleshooting a connection. For example, if the current configuration fails, try another entry from the same subscription while leaving the proxy mode and other settings unchanged. If every entry fails, update the subscription and check the local network. Changing the server, mode, DNS, and core parameters all at once removes a clear troubleshooting order.
Verify that it works: Check the browser, routing, and logs in order
Open a new browser window or tab and visit a page that normally works through a direct connection. Then open a target page that should use the current configuration. If both types of pages load, the client connection, system proxy, and basic routing form a complete path. Use familiar, stable sites for verification rather than a temporarily unavailable or slow page as the sole test.
If the target page works but local pages are noticeably slower, return to the routing settings and confirm that rule-based routing, not global mode, is active. If no page works, check that the client is still running, an active configuration exists, and the system proxy points to the current client. On desktop, you can temporarily choose “Clear system proxy,” confirm that direct local access returns, and then select “Automatically configure system proxy” again. This distinguishes a basic network problem from a proxy-path problem.
Next, check the logs. Entries generated during verification are the most useful: domain resolution errors usually point to DNS settings or the local network; connection timeouts may involve the current server, network path, or destination; configuration parsing errors require updating the subscription instead of continuing to use an incomplete old entry. Do not capture only the last log line. Start at the current launch point and find the first clear error.
You can also stop the client connection, revisit the same target page, and reconnect for comparison. The result should match expectations: direct access after stopping, and rule-based handling after starting. If the browser still tries to use the old proxy port after the client stops, the system proxy was not cleared correctly. In v2rayN, choose “Clear system proxy” from the tray menu, quit and reopen the browser, then start the client again.
Some programs do not read the system proxy, so they may keep their original connection method even after browser verification succeeds. First check whether the program has its own proxy settings; if so, enter the local listening address and port used by v2rayN. To route more programs through the client, follow the TUN steps in the complete guide and check permissions, the virtual network adapter, and DNS. Do not copy a full configuration from an unknown source.
Everyday use: Update subscriptions, switch servers, and exit
After the first verification, everyday use can stay simple. When the configuration provider announces an update, run “Update subscription” in the client, wait for the list to refresh, and choose the active server you want to use. Do not delete and recreate the subscription group during an update unless the URL itself has changed; keeping the group preserves its remarks and organization.
To switch servers, select another entry in the list and set it as active, then reopen the target page to verify. The client usually reloads the configuration automatically, but existing programs may keep their earlier connections. If switching produces no visible change, close the program's old page or connection and make a new request before changing routing rules.
When you are done for now, desktop users should first clear the system proxy from the tray menu and then exit v2rayN. Closing the main window may only minimize the program to the tray, leaving the system proxy enabled. On Android, tap Stop, confirm that the connection has ended, and then exit. This prevents the next browser session from pointing to a stopped local proxy port.
After completing the quick start, add settings only as needed. Configure DNS when mainland and overseas domains need separate resolution; configure TUN for programs that ignore the system proxy; add custom routes when specific destinations must always go direct or through the proxy. Protocol differences, core selection, routing priority, DNS split routing, and maintenance are covered in the complete guide from beginner to advanced; you do not need to configure everything at once.
Quick troubleshooting: Check import, startup, proxy, and resolution in order
If the server list is empty, the problem usually occurred during subscription import. Check that the subscription group is enabled and the URL is complete, then update it separately once more. If the update reports a format error, copy the original URL again. If it reports a network timeout, use a regular webpage to confirm that the underlying network works. Do not adjust the system proxy while the list is empty; the client has no valid configuration to start yet.
If the list contains entries but the core will not start, first try another entry from the subscription. If every entry reports a configuration error at the same point, update the subscription and restart the client. If only one entry fails, use another temporarily. An outdated client may also fail to recognize newer configuration fields; visit the client download page and choose the version for your platform.
If the client says it is connected but the browser does not change, check that v2rayN is set to “Automatically configure system proxy,” or confirm that v2rayNG still shows an enabled connection. On desktop, also check whether the browser uses a separate proxy extension or manual proxy address. Multiple proxy entry points can prevent the browser from using the system setting. Temporarily disable extra proxy configurations and verify with only the client's system proxy enabled.
If domains fail to open but a known direct address responds, focus on DNS. Restore the client's default DNS settings, restart the connection, and test again. If the problem began only after enabling TUN, disable TUN first and return to this guide's basic mode to confirm that the connection works. Then configure DNS outbounds, query rules, and the virtual network adapter step by step using the complete guide. For DNS request paths and leak troubleshooting, read v2rayN DNS testing and fixes.
If these checks still do not identify the cause, record the client name, operating system, proxy mode, time of occurrence, and earliest clear error. A useful report should say whether the subscription updates, whether the core starts, whether the browser follows the system proxy, and which pages are affected. This is far easier to diagnose than simply writing “connection failed.”