Quick Start · Initial Setup
v2rayN Quick Start
Import a Subscription and Test the Connection
Follow this order: import a subscription → choose a proxy mode → connect → test the connection. Get one configuration working first, then adjust routing, DNS, or TUN.
If the client is installed and you have a valid subscription URL, allow about 10 minutes for the basic setup. Subscription service or device permission issues may need separate troubleshooting. Haven’t installed a client yet? Choose an installer on the client downloads page.
Before You Start: Check Your Subscription and Network
Have a valid subscription URL from a trusted source, and make sure your device can access ordinary websites. The client reads configurations and routes traffic; installing it does not provide a working server. If you only have the client, first obtain a valid subscription or an individual server configuration, then continue.
A subscription URL and an individual share link serve different purposes. A subscription URL usually updates a set of configurations, while a share link usually describes one server. Don’t paste them into the same field just because both can be copied. Subscription URLs may contain access credentials. Never post a full URL, QR code, or configuration screenshot in a public forum. When asking for help, redact tokens, account details, and server authentication fields.
Before getting started, quit any other proxy or VPN tool that is routing traffic. Keep your current network settings, and don’t change DNS, routing files, or the core yet. That makes it easier to identify what caused a problem. If terms like “subscription,” “outbound,” or “routing” are unfamiliar, check the glossary first. This guide covers only the settings needed to connect.
Step 1: Import a Subscription and Update Configurations
v2rayN: Add a Subscription Group
Open v2rayN and find Subscription Group at the top of the main window. Open Subscription Group Settings, or a similarly named management window, and choose Add. Enter a recognizable label, such as “Daily subscription,” then paste the full subscription URL. Check that it has no extra spaces, line breaks, or punctuation copied from a chat app, and save. This adds the subscription source; servers may not appear in the list until you update it.
Return to the main window, open the Subscription Group menu, and select Update subscription. If there are separate options for a regular update and an update through a proxy, try the regular update first—you don’t have a working proxy connection yet. Wait for the update to finish, then check the status message and server list. The list should show configurations from the subscription. A group name with an empty list does not mean the import is complete.
Once configurations appear, check their names and group to make sure they came from the subscription you just added. Don’t bulk-edit transport settings or test every configuration yet. If the update fails, check whether the subscription has expired, the URL was copied in full, and your current network can reach the subscription service. Repeatedly clicking Update won’t fix an invalid URL and may trigger access limits on the service.
v2rayNG: Add a Subscription, Then Update the List
In v2rayNG, open the menu on the main screen and select Subscription Settings. Tap Add, enter a label and subscription URL, then save. Return to the main screen, open the menu, and select Update subscription or Update current group subscription. Wait for the result; server entries should appear in the main list. If you’re still on the subscription edit screen, return to the main list instead of pasting the URL again.
For an individual share link that starts with vmess://, vless://, or a similar prefix, use the client’s Import from clipboard option—not the subscription URL field. The same distinction applies to QR codes: import the content according to its configuration type. Don’t enter a subscription URL as a server address in the manual configuration screen.
Step 2: Choose a Proxy Mode and Routing Rule
v2rayN: Start with the System Proxy
In v2rayN, find System Proxy at the bottom of the main window or in the tray context menu, then choose Automatically configure system proxy. This points the system proxy setting to the client’s local listening address, so apps that honor system proxy settings send their requests to v2rayN. Don’t choose Clear system proxy and assume the browser is now routed through the client. Also, don’t run another tool that changes system proxy settings during initial setup.
Next, find the routing selector. For a first setup, you can start with a preset such as Bypass mainland China, but note that it routes traffic according to rules—it does not send every connection through a remote server. To confirm that a particular destination uses the proxy, temporarily choose a global routing preset that sends traffic through the proxy outbound during testing, then switch back to your usual rules. Preset names vary by version; check what each rule does before choosing one.
System proxy and routing do different jobs: The system proxy determines whether an app sends requests to the client. Routing determines which outbound the client uses for those requests. Setting routing to global does not make every program honor the system proxy. Command-line tools, some games, and apps with their own network settings may connect directly, so don’t assume they’re proxied based on the mode name alone.
Leave TUN off for now. TUN involves a virtual network interface, permissions, and DNS routing; configure it after the basic connection works. Don’t enable the system proxy, TUN, and multiple browser proxy extensions at the same time “just to be safe”—overlapping traffic capture can make problems harder to diagnose. If you need to route apps that ignore system proxy settings, see the cross-platform setup guide for TUN instructions.
v2rayNG: Check VPN Mode and App Coverage
v2rayNG typically routes traffic through Android’s VPN interface, so there’s no need to look for “Automatically configure system proxy” as you would on desktop. In Settings, make sure it’s using VPN mode, not a mode that only provides a local proxy port. If you’ve changed per-app proxy settings, turn them off for the first test so the test app is included. After confirming the connection works, select apps as needed.
Next, check the routing settings and keep a preset you understand. If per-app proxy is enabled, check whether it means “proxy only selected apps” or “bypass proxy for selected apps”—the two behave oppositely. Don’t change remote DNS or custom routing rules yet. Once the mode is set, choose a server and connect.
Step 3: Choose a Server and Connect
v2rayN: Set an Active Server and Check the Logs
Choose a configuration from a known source that’s still usable in the server list, then set it as the active server from the context menu. Some versions also let you double-click an entry. Check the active indicator to confirm that this configuration is in use; highlighting a row only selects it. Then start or reload the core as prompted. Some versions do this automatically when you change the active server.
Open the log panel in the main window and wait for the core to start. You shouldn’t see repeated errors such as core startup failures, configuration parsing errors, or port conflicts. An open window or visible tray icon only shows that the graphical interface is running; it doesn’t prove the core is working. If the logs show a startup error, fix it before trying the browser.
If a local port is already in use, first check whether a second client process is open or another proxy tool is still running. Close the conflicting app and try again. If you need to change the port, also check any proxy port entered manually in other apps. Don’t assume the local listening port is the same across versions or devices; use the value shown in the client’s current settings.
v2rayNG: Connect and Allow the Android VPN Request
In the v2rayNG server list, tap the server you want to use and confirm it’s selected, then tap the Start button in the lower-right corner. The first time you connect, Android usually displays a VPN connection request. Check that it comes from v2rayNG and allow it. Denying permission prevents the VPN from being established; switching servers repeatedly won’t grant it.
After connecting, check the status in the app and the connection indicator in the system status bar or VPN settings. Icons vary by device, so check what Android actually shows. If another VPN app is active, stop it before restarting v2rayNG. Even if Android shows an active VPN, test a remote server and a web request: successful local traffic capture does not guarantee the remote connection works.
For either client, start by testing one configuration. If it times out, note the error and compare with another known-working configuration. If every configuration shows the same error, check the subscription’s validity, automatic date and time, network status, and core logs. Change one thing at a time and record the result; this makes issues easier to isolate than changing the protocol, DNS, and routing all at once.
Step 4: Test the Connection in Your Browser and Apps
Check the Status, Then Make a Real Request
Keep the client running, open a new browser tab, and visit an available HTTPS site that should use the selected proxy rules. Don’t keep reopening a page you’ve already visited: cached content can look normal even when no new connection was made. Then visit a regular site that should connect directly, to make sure your basic access still works.
Check the client logs or connection records at the same time. Some versions show destination requests only at certain log levels, so an empty log does not by itself mean the connection failed. However, errors such as DNS lookup failures, connection timeouts, or authentication failures can help narrow down the issue. For authentication errors, check the server configuration and subscription status; for DNS errors, check DNS settings. Not every problem is a speed issue.
To check your public IP, use the same trusted IP lookup site before and after connecting. Make sure the lookup destination matches your proxy rules; with split routing, seeing your regular network’s IP may be expected. A changed IP also doesn’t prove that every app is routed through the proxy. It only shows that this lookup request took a different path, so test the apps you actually need.
Once the Browser Works, Test the Apps You Need
On the v2rayN desktop client, if the browser works but the command line or another app doesn’t, first check whether that app honors system proxy settings. If you use a browser proxy extension, make sure it isn’t overriding the system settings. Terminal proxy environment variables and system proxy settings are usually configured separately; browser access doesn’t mean every app is working. For more help, see how to troubleshoot browser and command-line proxy issues separately.
On v2rayNG for Android, if only certain apps fail, review the per-app proxy settings and check that no other app has replaced the active VPN connection. If it works in the foreground but disconnects after the screen has been locked, check Android’s background activity and battery restrictions for v2rayNG. Don’t change every battery setting before the first connection works. First determine whether it never connects or only disconnects in the background.
Test How to Disconnect and Keep a Reproducible Setup
After confirming the connection works, test the stop procedure. When v2rayN uses the system proxy, choose Clear system proxy before closing the client. This prevents the browser from sending requests to a local port that’s no longer active. If the client has an option to restore system proxy settings on exit, test it instead of relying on the checkbox alone. In v2rayNG, tap Stop and confirm that the Android VPN connection has ended.
After disconnecting, open a regular website to confirm normal network access has returned, then reconnect and test again. If it works when started, restores access when stopped, and works again after restarting, the basic setup is complete. Keep the current subscription group, active configuration, and routing rules. Add per-app proxy or custom routing one setting at a time, repeating the same tests after each change. If something breaks, you can return to the last working setup.
Next: Find the Guide for Your Issue
If everything works, you can stop here—there’s no need to enable every advanced option. To learn how system proxy and TUN differ or how routing and DNS work, check the glossary. For installation permissions, platform-specific settings, and a complete troubleshooting workflow, see the cross-platform installation and setup guide.
If the client shows as running but websites still won’t load, keep the current configuration and check, one at a time: server availability, system time, DNS, routing, and local ports. Follow the troubleshooting checklist for when you’re connected but can’t open websites. When asking for help, share only redacted error details—never your full subscription URL or server credentials.