Usage Guide · Getting Started

v2rayN Setup Guide

Import a subscription → Choose a proxy mode → Connect → Test access. Follow these four steps to get started.

Before you begin, make sure the client opens correctly and have a subscription URL you’re authorized to use, or a valid share link for a single configuration. The client reads configurations and forwards traffic; it does not create a connectable server. If you haven’t installed a client yet, visit the client downloads page and choose the right package. Once installed, return here. For your first setup, keep the default settings and change only the options mentioned below. This makes it easier to pinpoint any problems.

This guide focuses on subscription URLs. A subscription usually provides a set of configurations, while a share link usually contains just one; they use different import options. Copy the entire link, without including explanatory text, line breaks, or punctuation from a chat message. Subscription URLs may contain personal credentials. Don’t post them in public discussions or leave the full URL or its QR code visible in screenshots.

01 Import a Subscription and Update Configurations

v2rayN: Save a Group, Then Update the Subscription

Open v2rayN and go to “Subscription Group Settings” from the “Subscription Group” menu at the top. Add a group, enter a recognizable label, then paste the subscription URL into the address field. Enter the full subscription URL—not a server hostname or a password from a single configuration. Check for extra spaces at either end, save the group, and return to the main screen. Saving only records the URL, so an empty list at this point does not necessarily indicate a problem.

Next, open the “Subscription Group” menu and choose “Update Subscription.” Some versions offer separate options to update “without proxy” or “through proxy.” For your initial setup, before a connection is established, use the option without a proxy. If the subscription provider specifically requires another method, follow their instructions. Wait for the update to finish, then check the configuration list and bottom log area on the main screen. The group’s configurations should appear, and the logs should not show repeated download or parsing errors.

If the list is still empty, first check whether another group is selected or a search filter is active. Then return to subscription group settings and confirm the URL was saved. Being able to open the URL in a browser doesn’t mean the client can parse its contents: a login page, expiration notice, or regular webpage is not a valid subscription. Ask the provider to confirm that the subscription is active and supports your client. Don’t keep adding duplicate groups. Once the update finishes, select a configuration and note its label; you’ll use it in the next steps.

v2rayNG: Add a Subscription from the Sidebar, Then Update It

On the v2rayNG main screen, open the left sidebar and go to “Subscription Group Settings.” Tap the add option, enter a label and subscription URL, and save. Return to the main screen and choose “Update Subscription” from the top-right menu. Note the difference between “Add subscription group” and “Import from clipboard”: the first saves a subscription URL, while the second is mainly for importing a single configuration share link. Importing a subscription URL as a regular share link may not work as expected.

When configurations appear, tap one to select it. The selected marker means it will be used for the next connection; it does not mean traffic forwarding has started. If you have a share link for a single configuration, copy the entire link and use “Import from clipboard” on the main screen. You can also use the scan option to import a QR code. Importing a single configuration doesn’t create an updatable subscription group; to change it later, get a new configuration or edit it manually. Whichever method you use, make sure a selectable configuration appears in the list before moving on to proxy mode settings.

02 Choose a Proxy Mode and Routing Rules

Desktop: System Proxy vs. Routing

Two v2rayN settings are easy to confuse. “System proxy” determines whether apps that follow the operating system’s proxy settings send requests through the client. “Routing” determines whether requests that reach the core are proxied, sent directly, or blocked. Changing the routing rules won’t automatically make every program use the proxy, and enabling the system proxy won’t override network settings configured within individual programs. Keep these settings separate during your first setup; it will make testing easier.

Use the routing selector on the main screen to review the presets. For your first setup, start with “Bypass LAN” or a similarly named preset so local devices can connect directly. Preset names vary by version, so check what each rule does before choosing. Follow any specific instructions from your service provider or administrator. There’s no need to edit individual domain or IP rules yet, or enable extra options just to fill out the interface.

You’ll set the system proxy to “Automatically configure system proxy” during the connection step. This mainly applies to programs such as browsers that follow the system proxy; it doesn’t guarantee that apps with their own proxy settings or direct connections will use the client. This guide uses a regular browser to test the connection and doesn’t require TUN mode for the initial setup. For details on rule order, protocol types, and core differences, see the technical reference for protocols and cores. Fine-tune other behavior after you’ve confirmed the basic connection works.

Android: Start in VPN Mode with the Default App Scope

v2rayNG usually handles app traffic through VPN mode. Open “Settings” in the sidebar and check the options for running mode. If your version offers “VPN” and “Proxy only” modes, choose VPN for your first setup. Proxy-only mode is mainly for users who know how to configure a proxy manually in their apps; simply starting it won’t automatically route traffic from other apps. VPN mode also doesn’t mean every request goes through a remote server: routing rules determine where traffic goes after it reaches the client.

For your first connection, leave “Per-app proxy” disabled so you don’t accidentally exclude the browser you’ll use for testing. Start with the bypass-LAN routing preset or the existing default. Don’t change DNS, transport settings, and app filters at the same time. Change one setting at a time so you can tell what affected the results. Once you’ve confirmed the mode, return to the main screen and make sure the configuration selected is the one you imported in step one. Then connect.

03 Connect and Grant Permission

v2rayN: Set the Active Server and Enable the System Proxy

Select the configuration you want to use in the list, then choose “Set as active server” from the right-click menu, or use the equivalent option in your version. Some versions also let you double-click a configuration to activate it. Check the active configuration marker and logs, and wait for the core to start. v2rayN may not have a prominent “Connect” button like the Android app. What matters is that the active server has changed, the core is running, and app traffic has a route into the client.

Next, choose “Automatically configure system proxy” from the “System Proxy” option in the bottom status bar or system tray menu. If you previously chose “Clear system proxy” or “Do not change system proxy,” changing the active server alone usually won’t make your browser use the client. Leave v2rayN running after you’ve set this option; minimizing the window is fine, but don’t exit the process. Your desktop environment may ask you to confirm the system proxy change. If a permission prompt appears, make sure it matches the action you just took.

If the logs show that a port is in use or the core failed to start, stop any other running proxy clients and make sure you haven’t opened another copy of v2rayN. Starting multiple clients while repeatedly changing system proxy settings makes it hard to tell which process the browser is connecting to. Once the port conflict is resolved, activate the server again and check whether the logs return to normal. If the error points to an incompatible protocol or field, go back to step one and check the subscription format instead of changing authentication parameters at random.

v2rayNG: Connect and Approve the System VPN Request

Make sure the configuration you want is selected on the main screen, then tap the connect button in the bottom-right corner. The first time you connect, Android displays a VPN connection request explaining that the app will handle network traffic through a VPN interface. Check the app name and approve the request, then return to v2rayNG to check its running status. If you cancel the request, the configuration remains in the list, but traffic routing won’t start. Tap connect again and approve the request to continue.

After connection starts, Android usually displays a VPN status icon or an ongoing notification; its location varies by device. This only confirms that the local VPN interface is running, not that the remote service is reachable. If another VPN app is already running, disconnect it before starting v2rayNG. In typical personal-use setups, don’t assume two VPN clients can route traffic from the same apps at the same time.

For your first test, leave the client running in the foreground or background. Don’t force-stop it from the recent apps screen. If access works initially but often drops after the screen locks, check v2rayNG’s battery restrictions and background permissions in your system app settings. Menu names vary by device; look for “Battery” or “Battery usage” under the app details. First complete the access test in the next step, then troubleshoot background operation so you don’t confuse connection issues with power-saving behavior.

04 Test Access and Learn How to Disconnect

Cross-Check a Real Request Against the Logs

Leave the client running, open a regular browser that follows your system network settings, and visit a site you know is working. Make sure the page loads with a fresh request rather than showing previously saved content. If needed, open a new window or refresh a page that isn’t cached. “Connected” status, a VPN icon, or a test result in the configuration list isn’t enough on its own: the local interface running, the server accepting connections, and the browser completing a request are three separate steps.

Check the client logs at the same time for new connection entries from your test. The amount of detail depends on the logging level, so not seeing an entry for every domain doesn’t necessarily mean the request never reached the client. First, look for repeated connection failures, name resolution errors, or authentication errors. Before sharing logs for help, remove subscription URLs, server addresses, and personal credentials. The error type and sequence of events are usually enough.

To check the proxy route more closely, choose a request that your current routing rules actually send through the proxy. If appropriate, use a trusted network information page to check for a change in your public IP address. Don’t treat one result as proof that every app is using the proxy: rules may send some sites directly, and apps may have their own proxy settings. Instead of repeatedly switching every option, compare results using the same browser, configuration, and rules.

If Pages Won’t Load, Check Each Step in the Traffic Path

If a desktop browser won’t load pages, return to v2rayN and confirm that the active server is correct, the core is still running, and the system proxy is set to “Automatically configure system proxy.” If the browser has an extension that manages proxy settings or a manual proxy configured, switch it back to using the system proxy and try again. If other software works but one app doesn’t, check that app’s network settings first. Don’t immediately reinstall the client or reimport every subscription.

On Android, first make sure the VPN is still running, the test browser isn’t excluded by per-app rules, and another VPN app hasn’t taken over the connection. If the logs clearly show a server connection failure, try another configuration from the same subscription and repeat the exact same test. If only one domain fails, check routing and DNS. After each change, send a new request and check the logs to isolate the problem. For more on protocol compatibility and choosing a core, see the protocol reference. This guide doesn’t require you to write core configuration by hand.

Before You Disconnect, Restore the System Network Settings

After testing, you can compare access with the client stopped and running to confirm you know how to disconnect and reconnect. On Desktop, choose “Clear system proxy” in v2rayN before exiting. If you end the process while the system proxy still points to the local listening address, the browser may stop working when the client exits. To reconnect later, start the client, check the active server, and choose “Automatically configure system proxy.” You don’t need to import the subscription again each time.

On Android, tap the connect button to stop the client, then confirm the VPN status icon or ongoing notification disappears. Next time, select an existing configuration and connect again. To refresh a subscription, use “Update Subscription” for its existing group; there’s no need to paste the same URL again. Your initial setup is complete once a configuration is listed, traffic enters the client through the right path, the connection is authorized, and a real request succeeds. Before changing per-app proxy or routing rules later, note the settings that work and adjust one thing at a time, testing after each change.