CLIENT SETUP / FOUR STEPS
v2rayN Setup Guide
Import a Subscription and Test Your Connection
Follow four steps in order: import a subscription, choose a proxy mode, connect to a server, and test access. Get one configuration working before adjusting routing or DNS.
BEFORE YOU START
Get the Client and a Valid Configuration Ready
Start by choosing the right installer for your device on the client download page. Install it and open the main screen. Use v2rayN on desktop and v2rayNG on Android. For your first setup, keep the client's default listening ports and core settings. Don't import extra routing files or change advanced options yet. This makes it easier to tell whether a problem lies with the subscription, server, or traffic routing.
Next, get the subscription URL or a complete share link from your service provider. A subscription is usually a web URL that returns multiple server configurations when updated. A share link usually starts with vmess://, vless://, trojan://, or ss:// and imports a single configuration. A provider's homepage, sign-in page, or subscription management page may not be the subscription URL. Use the provider's designated copy option.
A subscription URL may contain access credentials. Don't include it in public screenshots, group chats, or unfamiliar online conversion tools. Before setup, check that your device's date and time are correct, and temporarily quit other apps that manage the system proxy or VPN. Make sure your current network is working before following the import steps below.
STEP 01 / IMPORT
Import a Subscription and Check the Server List
In v2rayN, find the subscription group menu at the top and open subscription group settings. Add a group, give it a recognizable name such as “Everyday,” and paste the complete subscription URL into the address field. Check for extra spaces, line breaks, or other text at either end, then save and return to the main window. Saving the URL only sets the source for updates; it's normal for the server list to be empty at this point. The next step retrieves the configurations.
Return to the subscription menu and choose Update current group or Update all subscriptions. If this is your first setup and no proxy is working yet, prefer an update option labeled “without proxy.” If your current network can't reach the subscription URL, ask your provider for an accessible subscription link instead of repeatedly switching to a proxy that isn't set up yet. When the update finishes, select the group you created and check that the list contains server details such as remarks, protocol, and address.
For a single share link, you don't need to create a subscription URL. Copy the complete link, then in v2rayN open the Server menu and choose Import share link from clipboard or a similarly named option. Check the server list afterward. Don't paste a share link into the subscription field, which expects a web URL, or enter a subscription URL manually as a single VLESS node; they require different import methods.
v2rayNG: Save the Group, Then Update the Subscription
In v2rayNG, open the side menu and go to subscription group settings. Tap the add option, enter a name and subscription URL, then save. Return to the main screen and choose Update subscriptions from the top-right menu. Wait for the list to load. For a single share link, tap the add button on the main screen and choose Import from clipboard. The new server should appear in the list, not just as a URL in group settings.
If the update reports success but the list is still empty, first check whether you've selected an empty group or enabled a search filter. Then confirm that the subscription is valid and contains available configurations. If the import reports an unsupported protocol, check whether the client supports the link's transport parameters. Don't remove fields from the link just to force an import. See the glossary for terminology and the help center for common import errors.
This step is complete when the expected server configuration appears in the client list. Don't assume that seeing an entry means the connection works; next, choose how app traffic will reach the client.
STEP 02 / TRAFFIC MODE
Choose a Proxy Mode and Routing
In v2rayN, system proxy and routing are separate settings. The system proxy tells apps that follow system settings to send requests to the local client. Routing determines whether requests are sent through a proxy server, connected directly, or blocked after they reach the core. For your first setup, get browser traffic into the client without enabling every traffic-capture method at once.
In the v2rayN main window or tray menu, open System proxy and choose Set system proxy automatically. If TUN is enabled, turn it off first so you can test the system proxy route on its own. The client uses a local listening address and port; check the values shown in the client. You don't need to enter the remote server address in your system proxy settings. If a browser extension also manages proxy settings, temporarily disable it to prevent it from overriding the system settings.
Next, review the routing presets. For everyday use, a rule-based routing preset is a good starting point, though the name may differ by version. Split routing doesn't send every site through the same exit: sites that match direct-connection rules still connect directly. To check whether a routing rule affects a particular site, briefly switch to a global proxy preset for comparison, then restore your usual routing choice. Don't choose global direct and conclude the server is broken because your exit address stays the same.
v2rayNG: Use VPN Mode for Your First Test
In v2rayNG settings, make sure VPN mode is selected rather than “proxy only,” which just opens a local proxy port. VPN mode routes traffic through Android's virtual network interface and prompts for system permission the first time you start it. In proxy-only mode, other apps must be configured to use the proxy. The client showing as running doesn't mean that traffic from your phone's apps is being routed through it.
If you've set up per-app proxy before, turn it off for your first test or explicitly include the browser you're testing. Depending on the version, the options may mean either “proxy selected apps only” or “bypass selected apps”—opposite behaviors. Don't infer the behavior just from which apps are checked. Establish a basic connection first; then add app-level restrictions one at a time to make troubleshooting easier.
By the end of this step, desktop should be set to configure the system proxy automatically, and Android should be in VPN mode. Keep one clear routing preset selected. Next, choose a single server and test the connection.
STEP 03 / CONNECT
Set the Active Server and Start the Connection
In the v2rayN server list, find the server you want and right-click it. Choose Set as active server or the equivalent option in your version. Some versions let you switch servers with a double-click, but the explicit right-click action is easier to verify. Highlighting a row only selects it in the list; it may not change the active outbound server. After switching, check the current server indicator to confirm it matches your chosen configuration.
v2rayN usually loads the selected configuration and starts the core when you switch active servers; there may not be a separate Connect button. Open the log panel and check for errors such as configuration parsing failures, a port already in use, or the core failing to start. Then confirm that automatic system proxy configuration is still enabled. A successful core startup means the local forwarding service is ready, but you need to make a real request to confirm the remote server is reachable.
If the logs report a port conflict, first close duplicate client instances and other proxy apps using the same port. Don't immediately change it to an arbitrary number: if you change the port manually, update it in the system proxy settings, browser extensions, or other apps that use it. If the logs report an unsupported configuration field, check whether your client and core support the node's requirements. Don't change encryption, transport, or TLS settings without a reason.
v2rayNG: Select a Server and Approve the System Prompt
In the v2rayNG main list, tap a server and make sure the selection indicator is on the one you want. Then tap the start button in the lower-right corner. On first launch, Android displays a VPN connection request; approve it and wait for the status to show that it's running. If the system says another VPN connection is active, stop that connection before starting v2rayNG. Android typically allows only one app at a time to manage the device's VPN connection.
If the connection stops immediately after you tap Start, open the client logs and look for the first error, not just the final shutdown message. Check that the subscription hasn't expired, the configuration is complete, and the client has the required permissions. If the server might be unavailable, try another configuration from the same subscription. Don't change routing, DNS, and transport settings all at once, or you won't know which change made a difference.
Leave the client running and move on to the access test. The server list's latency test can help check whether a particular test request succeeds, but its method and destination may differ from those used by real apps. One test result doesn't prove that every app will work.
STEP 04 / VERIFY
Test Real-World Access and Check What Is Routed
Open a new browser tab and visit a site you normally use to check that it loads. Then visit a destination that should use the proxy under your current routing rules, while checking the client's connection list or logs. Start a new connection if possible; simply refreshing an already-loaded page may be misleading because of browser cache, connection reuse, or background preloading. Confirming that a site loads and that its traffic actually uses the proxy are two separate checks.
If you use an IP lookup page, interpret its result in light of your routing rules. If the page is set to connect directly, seeing your local network's exit address doesn't mean the client isn't running. Conversely, a proxy exit shown on one lookup page doesn't prove that every app is routed through the proxy. You can briefly switch to global proxy, open the same lookup page in a new connection, and compare the result. Restore your usual split-routing preset afterward.
If the desktop browser works but a particular app can't connect, first check whether that app follows the system proxy. Apps with their own proxy settings may need the client's local listening address and the correct HTTP or SOCKS port; don't assume the two are interchangeable based on their names. An app with no proxy option that ignores system settings may need TUN instead. That's a later setup step, not something you need to configure for your first browser test.
On Android, test another app you actually need to use. If the browser works but that app doesn't, review which apps are included in or excluded from per-app proxy. If it disconnects after the screen has been off for a while, check Android's battery optimization and background activity restrictions for v2rayNG. Don't reimport every subscription as soon as an app fails to load; checking traffic scope and background status can narrow down the cause faster.
If the Results Look Wrong, Check Each Step in Order
Check the import first: is there a valid server in the list, and can the subscription still be updated? Then check traffic routing into the client: is the desktop system proxy working, or is the Android VPN still running? Next, check the connection: is the right server active, and do the logs show connection or TLS errors? Finally, check routing: is the test destination going direct or being blocked? Change one setting at a time and retest the same destination to compare results.
For certificate or TLS handshake errors, first confirm that the device clock is set automatically and that you haven't changed the server name, SNI, or transport parameters in the subscription. Don't treat “skip certificate verification” as a general fix. If the cause is still unclear, search the help center by error type. For details on how VLESS, REALITY, and core support work together, see the technical reference. There's no need to explore every advanced option during your first setup.
After Testing, Learn How to Pause and Disconnect
When pausing v2rayN, first choose Clear system proxy from the system proxy menu, then exit the client. Otherwise, your system may keep sending requests to a local port that is no longer active. If you enabled TUN, turn it off too and wait for the network to recover. In v2rayNG, tap Stop and confirm that the system VPN has disconnected. To use the client again, select an existing server and start it; you don't need to reimport the subscription each time.
Your first setup is complete when real-world access works, the logs match the expected routing, and the network behaves as expected after the client stops. Update the subscription only when your provider announces a change or the server list changes. After an update, check the active server again; if an old entry was replaced, you may need to select a different one.
NEXT / SETTINGS REFERENCE
Fine-Tune Settings After Connecting
Keep the basic configuration you've verified as working, then adjust split routing, DNS, and app coverage as needed. Note the settings before changing them, and revert the most recent change first if something stops working.