Oct 19, 2026 · Getting Started · About 9 minutes

v2rayN Main Window Guide: Servers, Subscription Groups, Logs & Settings

Explore the v2rayN main window, from server lists and subscription groups to logs, system proxy controls, and settings. Find the essentials and learn where to look when something goes wrong.

At a glance

The server list lets you choose a configuration, subscription groups organize where configurations come from, and the log panel helps you troubleshoot. System proxy settings determine whether some apps send connections through the client. This guide is for new users who have opened v2rayN but aren't sure what each area does. Follow the steps to import a configuration, select it, route traffic through the client, and verify the result—then you'll know where to look if something fails.

Get to know the five areas of the main window

v2rayN is the interface for configuring and managing connections; the core it launches handles the actual network traffic. Seeing a server entry in the window only means its configuration has been saved. Setting it as the active server doesn't necessarily mean your browser is using the proxy. Keep these two distinctions in mind to make sense of the status indicators that follow.

This guide uses the common Chinese-language interface on Windows desktop as a reference. Menus and labels may vary between desktop and WPF editions and across releases. For example, logs might appear in a bottom panel or under a separate menu. If you can't find a button with the same name, look for the equivalent function rather than changing settings just to match the screenshots.

AreaWhat it doesWhat it doesn't mean
Top menu and toolbarImport configurations, update subscriptions, open settingsUpdating doesn't connect you to the proxy
Subscription groupsFilter and manage server entries by sourceChanging groups may not change the active server
Server listView and edit entries, set the active serverSelecting a row doesn't necessarily activate it
Log panelView core startup, connection, and error messagesOne error doesn't mean all connections have failed
Bottom status area or tray menuChange system proxy, routing, and other runtime optionsEnabling the system proxy doesn't route traffic from every app

Server list: selection vs. active server

Each row in the list is usually a server configuration, often called a node. The remark helps you identify it; the address and port specify the remote endpoint, and the protocol column may show VMess or VLESS. Protocol is only one part of the configuration. The transport, TLS, and security settings must also match the server—changing the protocol name alone won't make a connection work.

Before deleting an entry, check whether it was added manually or came from a subscription. Subscription entries may be recreated during the next update, and changes to their address or remark may be overwritten. Manage custom configurations separately if you need to keep them long term.

Subscription groups: manage sources and fetch entries

A subscription uses a URL to retrieve a set of configurations. Its group is where you manage those configurations in the client. Adding a subscription URL and updating the subscription are separate actions: the first saves the source; the second attempts to download, parse, and refresh its entries. Subscription URLs may contain access credentials, so don't include them in public screenshots or support posts.

  1. Open subscription groups

    Open the manager from the top menu: “Subscription Groups” → “Subscription Group Settings.” In some desktop layouts, use the “+” button in the group area to add a subscription. Check that the form includes fields for a remark and URL.

  2. Add a source

    Create a group, enter a recognizable remark, paste the full subscription URL into the address field, and save. Don't enter a single-server share link as a subscription URL.

  3. Update the subscription

    Open the “Subscription Groups” menu and choose “Update all subscriptions (without proxy)” or the equivalent direct-update option. If the source explicitly requires a proxy and you already have a working connection, choose the corresponding update-through-proxy option instead.

  4. Check the entries

    Switch to the group and check whether server entries appear; also read the update message. Then right-click the entry you want and set it as the active server. Updating a subscription alone doesn't route traffic through the proxy.

“Update through proxy” isn't a general-purpose fix. If there's no working active configuration, relying on a proxy for the update may still fail. Check separately that the URL is valid, your current network can reach the source, and the response contains a subscription the client can parse—not a login page or error page.

System proxy and routing: where traffic goes and how it gets there

The system proxy registers a local proxy address with the operating system for apps that honor that setting. Routing rules take effect after the client receives a connection, deciding whether to connect directly, use the proxy, or block it. These are separate controls: changing routing rules won't make an app that ignores the system proxy start using it.

To check browser access for the first time, select “Set system proxy” from the “System Proxy” menu at the bottom of the window or in the tray's right-click menu, then choose “Automatically configure system proxy.” The options below describe ways to route traffic, not a speed ranking. Use TUN only if your apps require it.

Automatically configure system proxy

Recommended

v2rayN adds the current local proxy endpoint to your system settings. It's a good starting point for an initial check, but make sure your browser follows system settings and no extension overrides its proxy configuration.

Best for: Initial setup, browsers and desktop apps that support the system proxy

Configure a proxy in the app

Enter the local address and port in the app. Choose the right type, HTTP or SOCKS, and make sure the local inbound supports it. If you change the client's port, update the value in the app too.

Best for: Apps with their own proxy settings that need separate control

TUN mode

TUN receives traffic through a virtual network interface and involves permissions, routing, and DNS settings. Don't treat it as the mandatory next step when the system proxy fails. First confirm that a regular connection works, then troubleshoot any specific traffic-capture needs.

Best for: Apps that need traffic capture but don't follow the system proxy

The routing selector is usually in the status area; you can also find the rules under “Settings” → “Routing Settings.” With a profile that includes direct-connection rules, some traffic bypassing the remote server is expected. “Global” affects only connections that reach the client; it doesn't mean the client captures all traffic from the device.

Settings: distinguish local and remote ports

“Settings” → “Parameter Settings” is mainly for client-wide options such as local listening ports, log level, and some core options. To check a server entry's address, remote port, transport, and security settings, open that entry's editor. Some interfaces put core options on a separate tab. Don't confuse global settings with settings for an individual configuration.

The two numbers below illustrate different port roles; they're not default values to copy. Check Parameter Settings and the startup log for the actual local listening port, and use the server-provided configuration for the remote port.

10808
Example: local proxy listening port
443
Example: remote TLS server port

Note the original value before making changes, and change one setting at a time. After saving, check that the core reloads successfully, then test access from the app. If you change the port, core, and routing rules all at once, it'll be hard to tell which change fixed the connection.

Log panel: follow the timeline of an action

Logs help you match events to the actions that triggered them. Note what you did, then check the messages from that time. A failed subscription update, a core startup failure, and a timeout reaching a remote server happen at different stages. Don't reimport every configuration just because you see the word “error.”

Log messageWhat it likely meansWhere to check next
address already in useThe listening port is already in use by another processThe local port in Parameter Settings, and whether multiple client instances are running
connection refusedA connection attempt was refused by the destination endpointThe destination address and port in the log; first determine whether they're local or remote
timeoutThe operation didn't finish within the allowed timeWhether the destination is reachable, your current network, and the relevant server's status
Configuration parsing failedThe core couldn't load the generated configurationRecently changed fields, the active core, and configuration compatibility

Start by opening the log panel, then visit the target webpage once and check the new entries. A hidden log panel doesn't mean there were no errors. Conversely, the absence of a log entry for each visit doesn't mean no traffic passed—the current log level may not record those events. If you temporarily raise the log level, watch for increased output and restore your usual setting afterward.

Common questions and final checks

Why does clicking another row leave the same server active?

A click usually changes only the selected row. Right-click the target entry, set it as the active server, and check the active indicator and status area. If the core fails to reload, address the log error from that time. The selected row alone doesn't confirm that the server switched.

Why are there no entries after a successful subscription update?

Switch to the relevant group or “All,” then clear any list search. If the list is still empty, check the update message for parsing results and confirm that the URL returns configuration data rather than a web login page. Adding a group doesn't mean the client has retrieved any servers.

Why can't my browser connect after I set an active server?

First check that the system proxy is set to automatic, then check the browser's own proxy settings and extensions. Next, confirm that the local listener is running and the active configuration can connect. A test result is a useful clue, but it can't replace testing access in the browser itself.

The window disappeared when I clicked Close. Is the app still running?

Check the taskbar notification area for the v2rayN tray icon; closing the window may only hide it, depending on your settings. To exit, use the tray menu's exit option and check that the system proxy settings have been restored, so they don't point to a port that's no longer listening.

A complete check follows this sequence: “subscription entries are present → the right server is active → the core started successfully → the app uses the local proxy → routing behaves as expected.” Verify one step at a time. If a webpage still won't load, you'll know which stage to investigate instead of repeatedly changing settings across the client.

Download v2rayNChoose a client for your platform