Sep 28, 2026 · Getting Started · About 12 min

v2rayN First-Time Installation and Setup for Windows and macOS

Set up v2rayN on Windows or macOS: choose the right package, install required runtimes, select a core, configure local ports and system proxy, and fix common startup issues.

At a Glance

For first-time v2rayN users on Windows or macOS. Set things up in order: choose the right package and architecture, check runtime requirements, select a core, import a subscription, configure local ports and system proxy. First, get one server connected; then adjust routing and startup options. Ports 10808 and 10809 are examples, not universal defaults. Check the client settings and startup logs for the actual values.

1. Choose the Right Package: Check Your OS, Architecture, and App Type

v2rayN is a desktop client for managing servers, running proxy cores, and configuring local proxy endpoints. Seeing the main window only confirms that the app has launched; check the core files, server settings, and system proxy separately. For a first-time installation, choose the right platform on the client download page. Keep the package type and architecture details handy to make troubleshooting easier.

What to CheckWindowsmacOS
Operating System and ArchitectureGo to Settings → System → About and check “System type.” Don’t confuse x64 with ARM64.Open the Apple menu → About This Mac. Choose arm64 for Apple silicon and x64 for an Intel processor.
App TypeUse the download page to distinguish the desktop version from the classic WPF version. The WPF interface is for Windows only.Choose the macOS desktop version; Windows executables won’t run on macOS.
Runtime RequirementsPackages that depend on a framework need a compatible .NET runtime. Self-contained packages usually include the required runtime.Check the package notes to see whether an additional runtime is needed. Don’t follow Windows Desktop Runtime installation steps on macOS.
Version DetailsRecord the client version, package type, and architecture—not just the core version shown in the interface.Also note the OS version and processor type to help distinguish compatibility issues from architecture problems.

Don’t install multiple runtime versions just because you see “.NET.” A missing-runtime prompt usually names the framework, required version, and architecture. For example, if it reports that Microsoft.WindowsDesktop.App is missing, check for the matching .NET Desktop Runtime—not just the base Runtime or the developer SDK. The required major version depends on the client package; follow its notes and the error message.

2. First Launch: Choose a Folder, App Location, and Permissions

On Windows, fully extract the archive before launching the app. Opening the executable inside an archive may extract only a temporary file, preventing the core, resources, or configuration from loading correctly. You can place the extracted app in a permanent, user-writable folder such as D:\Tools\v2rayN. The path is just an example; the important thing is that the folder remains in place and your account can save settings there.

  1. Check the Package

    On the download page, confirm the OS, processor architecture, and package type. On Windows, use the built-in “Extract all” option to unpack the full archive. If you have an installer, follow its setup wizard instead of applying the extracted-package folder instructions.

  2. Choose a Permanent Location

    Keep the full folder structure for the extracted Windows version. On macOS, if the download includes a disk image, open it and copy the app to Applications. Don’t run it long-term from the temporarily mounted image.

  3. Complete the First Launch

    On Windows, start the app as a standard user first. On macOS, if a warning says the developer can’t be verified, confirm the download source, then follow the system prompts in System Settings → Privacy & Security to review the option to open it. Don’t disable system security checks entirely.

  4. Check the Startup Logs

    Open the log pane in the main window and confirm that settings can be saved and the core starts. If you see missing files, permission errors, or an architecture mismatch, fix that issue before importing a subscription.

3. Choose a Core: Match Xray or V2Fly to Your Server

The client and core are separate programs. v2rayN manages the interface and settings; the core handles the proxy connection. It’s normal for their version numbers to differ, so don’t replace files just to make the numbers match. For a first-time setup, keep the core configuration provided with the package. If you need a specific protocol, check Settings → Parameter Settings and the Core type options available in your version.

Xray Core

Recommended

A good first choice when your server requires Xray features. Configurations such as VLESS + REALITY need a compatible core; the protocol name alone doesn’t guarantee that every core can run them. Supported fields also depend on the core version.

Best for: servers that specifically require Xray or use REALITY.

V2Fly Core

Use this for configurations supported by V2Fly, such as VMess servers that meet its requirements. Base the choice on the options included with your v2rayN package and the server’s requirements; V2Fly isn’t a drop-in replacement for every Xray feature.

Best for: setups where the server explicitly provides a V2Fly-compatible configuration.

Core type settings may be organized differently across versions, with some versions assigning cores by protocol. Confirm which core the selected server actually uses; seeing a core name in the settings window isn’t enough. If the logs report an unsupported field or a configuration parsing error, check the server requirements and core version. Don’t randomly change encryption, transport, or TLS settings.

4. Import a Subscription: Select a Server and Test the Connection

Installing the client doesn’t give you a server automatically. Your service provider supplies the subscription URL, which usually contains access credentials. An account login page, plan details page, or individual server share link is not a subscription URL. When copying it, make sure the entire address is intact, with no line breaks, curly quotes, or extra spaces.

  1. In the v2rayN main window, open Subscription Group → Subscription Group Settings. Add a group, enter a recognizable name and the subscription URL, then save.
  2. Return to the Subscription Group menu and select Update All Subscriptions (without proxy). If you don’t have a working server yet, try updating directly first.
  3. Check that servers appear in the list. If the subscription URL is only accessible through a proxy, you’ll need another working connection first; then select Update All Subscriptions (through proxy). This option can’t create your first connection from scratch.
  4. Select a server in the list, then choose Set as Active Server from the right-click menu. Confirm that the active server has changed and check the logs for startup errors.
  5. Use the client’s connection test as an initial check, then configure the system proxy. A successful latency test doesn’t mean your browser is using that server.

5. Local Listening Ports: Match the Client and System Settings

The local listening address is the endpoint your apps connect to through v2rayN, not the remote server address. Check the local listener settings under Settings → Parameter Settings. If the client asks you to restart the core after saving, do so and verify the listening port in the logs. The examples below show two different configurations; don’t assume both are defaults in your version.

Example: Single Mixed Listener

Listen Address
127.0.0.1
Mixed Port
10808
Protocol Entry
HTTP and SOCKS, handled by a mixed inbound
System Proxy
Points to 127.0.0.1:10808

Use this only if your version explicitly supports a mixed inbound. Check the logs to confirm that it accepts the protocols you need.

Example: Separate Listeners

Listen Address
127.0.0.1
SOCKS Port
10808
HTTP Port
10809
System Proxy
HTTP proxy points to 127.0.0.1:10809

Use this setup when HTTP and SOCKS inbounds are configured separately. Don’t enter a SOCKS-only port in the HTTP proxy field.

For your first setup, keep the loopback address 127.0.0.1. Enabling “Allow connections from the LAN” changes who can access the proxy and involves firewall and access-control considerations; it isn’t a general fix for web pages that won’t load on your own device. The port in the system proxy, any manually configured app proxy, and the listening port in the core logs must all match.

How to Check for a Port Conflict

If the logs show address already in use, first check whether v2rayN is already running in another window. These examples show how to check from Windows Command Prompt and the macOS Terminal; replace the port number if you’re using a different one.

netstat -ano | findstr ":10808"
lsof -nP -iTCP:10808 -sTCP:LISTEN

On Windows, check the local address and listening state. You can look up the PID in the last column under Details in Task Manager. Confirm which app owns the process before closing a duplicate instance or changing the local port. Don’t terminate an unfamiliar process just because you recognize the number. If you change the port, update the system proxy and any manually configured proxy settings too.

6. System Proxy and Routing: Check Each Setting Separately

The system proxy tells apps that follow OS proxy settings where to send requests. Routing rules decide whether requests reaching the core go direct, through a proxy, or get blocked. Selecting Global proxy doesn’t make every app follow the system proxy, and choosing Auto-configure system proxy doesn’t mean every request handled by the core will go through a remote server.

Setting or CheckFirst-Time SetupWhat to Check
v2rayN System ProxySelect Auto-configure system proxy to have the client set the local proxy endpoint.The system proxy address and port should match the active HTTP or mixed listener.
Windows Settings → Network & internet → ProxyCheck the manual proxy settings and remove any outdated address left by another tool.When using a local endpoint, the address and port should match the actual local listener.
macOS System Settings → Network → Current network service → Details → ProxiesCheck the Wi-Fi or Ethernet service you’re currently using, not a disconnected service.The web proxy and secure web proxy settings should match the values set by the client.
v2rayN RoutingKeep the built-in routing rules for your first setup. For troubleshooting, temporarily select a clearly defined proxy rule to compare results.Use the logs to check the outbound route for the target request; don’t rely on the mode name in the toolbar alone.

Once the basic connection works, enable startup on boot, automatic subscription updates, or TUN only if needed. On macOS, check the proxy settings for the current network service if the proxy behaves differently after switching services. On Windows, if settings revert immediately after being applied, check for another proxy app, management policy, or security tool controlling them.

7. Common First-Install Issues: Troubleshoot by Where They Occur

Nothing happens after double-clicking, or the app immediately crashes. What should I check first?

First, check Task Manager or Activity Monitor to see whether the app is already running in the background. If there’s no process, check that the archive was fully extracted, the architecture is correct, and there are no runtime warnings. On Windows, you can launch the main app from a terminal to view its output. If a dependency is missing, match the framework and architecture named in the prompt. Don’t change server settings first.

macOS says the app can’t be opened. Can I bypass the warning?

First, distinguish a developer verification warning from an OS compatibility issue or a damaged app. Follow the system process under Privacy & Security for a developer warning. If the app is reported as damaged, download the package again for the right architecture and check the release notes for system requirements. Don’t copy bulk commands to bypass security from an untrusted source.

The server responds to a latency test, but web pages still won’t load. Why?

Check three things: whether the core started, whether the local port is listening, and whether the browser follows the system proxy. Compare the system proxy port with the startup logs character by character. If requests reach the core, check for server handshake, DNS, and routing errors. A single latency result doesn’t confirm that web browsing works.

I selected auto-configure, but the system proxy didn’t change. What now?

Reopen your OS proxy settings and check the current values. On macOS, make sure you’ve selected the network service you’re currently using. Temporarily quit other proxy management tools and try again. Organization-managed devices may restrict changes; follow your device management process instead of repeatedly elevating permissions or changing system policies.

After closing v2rayN, even pages that used to load won’t open. Why?

A common cause is that the system proxy still points to a local port that’s no longer listening. Restart the client and select Clear system proxy, or disable the corresponding manual proxy in your system network settings. Restore a direct connection before deciding whether to reopen the client; reinstalling the whole app shouldn’t be your first step.

What to Include When Asking for Help

Your first setup is complete when the client saves its settings, the core starts normally, the local endpoint matches the system proxy, and a web page loads successfully. Once all four checks pass, adjust routing and automation options one at a time. That way, if something breaks, you can return to the last working setup.

Download v2rayN