Learn the difference between clients, cores, and nodes, then import a subscription, choose a server, and enable the system proxy. This guide is for first-time Mac or Windows desktop users and also covers Android client choices. Follow the steps to test a browser connection and find out what to check if authorization fails, a subscription shows no nodes, or your internet stops working after you quit the app.
01 | What’s the difference between V2Ray, a core, and a client?
V2Ray is often used to refer to a proxy tool ecosystem, but it is also the name of a specific software project. The core handles connections; the client provides the interface for managing nodes, subscriptions, and proxy settings. Installing v2rayN does not give you working nodes—you’ll also need server connection details or a subscription.
- Client: Use v2rayN on desktop. On Android, choose v2rayNG or v2flyNG based on the configuration requirements.
- Core: Xray and V2Fly are different core families. Even when they support the same protocol, their transport, security, and extended settings may not be interchangeable.
- Node: Includes a server address, port, credentials, and transport settings. It’s the connection destination, not the client itself.
- Subscription: A URL used to retrieve and update a list of nodes, usually provided by a service provider.
Where to look: In v2rayN, open Settings → Parameter Settings to see the core-related options available in your version. Match the node’s requirements to the core’s capabilities; don’t switch cores just to try to get “more speed.” Menu labels below refer to commonly used names in the Chinese interface. If your version uses different wording, look for the equivalent option.
02 | Which client should you install on Mac or Android?
Check your operating system and processor before choosing an installer. On a Mac, open the Apple menu → About This Mac. Choose the Apple Silicon package if it lists an Apple chip, or the Intel package if it lists an Intel processor. On Windows, open Settings → System → About and check System type.
v2rayN
RecommendedFor macOS, Windows, and Linux desktops. Manage subscriptions, routing, and local proxy settings through a graphical interface. Available features vary by platform and version.
Best for: This guide’s desktop setup steps and Mac configuration
v2rayNG
An Android client powered by the Xray core. Before choosing it, check that your subscription’s protocols and security settings are supported by your version.
Best for: Android devices and configurations that require Xray features
v2flyNG
An Android client powered by the V2Fly core. Choose based on server settings and core support, not on how similar the names sound.
Best for: Android devices and configurations compatible with V2Fly
Core compatibility is not a ranking of which client is better. For configurations such as VLESS with REALITY and XTLS Vision, check Xray support and version requirements first. Don’t assume every client will work after importing the configuration.
03 | What is a subscription link, and can you share it?
A subscription link is usually an HTTPS URL containing an access token. The client fetches the URL and parses its list of nodes locally. A single-node share link describes one connection and serves a different purpose. Don’t confuse a provider’s sign-in page with its subscription URL.
- Where to find it: Provider account page → Subscription or Client Configuration → Copy the subscription link for your client.
- Before pasting: Make sure there are no spaces, line breaks, or punctuation before or after the URL, and that you haven’t copied the button instructions by mistake.
- Costs: Clients may be free and open source. Whether server resources or a subscription service cost money depends on the provider.
You don’t need to enter your provider password in the client to add a subscription. If the provider only gives you a QR code, first check whether it contains a subscription URL or a single-node configuration, then use the matching import option.
04 | How do you add a subscription and update your nodes?
For your first setup, use one subscription group to avoid losing track of where nodes came from after importing multiple times. In v2rayN, saving a group only saves its URL. You also need to update the subscription before nodes appear in the server list.
-
Create a group
Open Subscription Group → Subscription Group Settings, select Add, and give the group a name that identifies its source.
-
Save the URL
Paste the subscription URL into the URL field, make sure the group is enabled, and save. Don’t paste a single-node VMess or VLESS share link into the subscription URL field.
-
Update the subscription
Go back to Subscription Group. If you don’t have a working proxy yet, select Update all subscriptions (without proxy). If the URL can only be reached through a proxy, first establish another working connection, then use the update option that goes through a proxy.
-
Choose a server
Select a node in the server list, right-click and choose Set as active server, then check that the active server shown in the main window has changed.
On Android, open Subscription Group Settings from the v2rayNG or v2flyNG menu, add the URL, and update the subscription. If the update fails, read the error first: a connection timeout, expired credentials, and a parsing error are different problems. If the list is empty, also check the selected group filter and whether your service has expired.
05 | Why can’t I browse after selecting a node?
Selecting an active server tells the core where to send proxy traffic. Whether your browser sends traffic to the local proxy is a separate setting. For your first test, leave TUN off and find System Proxy → Set system proxy automatically in the v2rayN main window or tray menu.
These ports are not interchangeable. The local port is where apps connect to the client; the server port belongs to the remote node. Find the local listening settings in v2rayN under Settings → Parameter Settings. Don’t copy the example over the server port in your subscription.
- Check system settings: On macOS, open System Settings → Network → your current network service → Details → Proxies. Check that the HTTP, HTTPS, or automatic proxy settings match the client’s configuration.
- Check your browser: Temporarily disable extensions that manage proxy settings separately, so their rules don’t override the system settings.
- Check the connection: Open the client log, then visit the target page and look for a new connection entry. If none appears, check where the traffic is entering the proxy setup.
06 | Should you use the system proxy or TUN?
The system proxy provides a proxy endpoint to apps that follow the operating system’s proxy settings, but it won’t cover every app. TUN receives traffic through a virtual network interface and usually covers more, though results still depend on routing, exclusion rules, permissions, and implementation. It’s not a “speed boost” switch.
Choose a setup: Test the system proxy before trying TUN
Browsers and everyday browsing
- First enable System Proxy → Set system proxy automatically.
- Make sure your browser follows the system settings.
- Leave TUN off to keep initial troubleshooting simple.
Apps that don’t follow proxy settings
- First check whether the app supports manual proxy configuration.
- Enable the client’s TUN mode only if you need it.
- Check administrator permissions, routing, and conflicts with other network tools.
Get one traffic-capture method working before adding another. While troubleshooting, don’t change the system proxy, TUN, and DNS settings at the same time.
Where to find it: v2rayN main window → Enable TUN. If your platform asks you to install a service or grant permission, follow the instructions for your version. On Android, the system VPN permission prompt when starting a proxy is different from the desktop system proxy switch.
07 | Why does Mac ask for permission, and what if the app won’t open?
First, distinguish between two prompts. The first time you open a downloaded app, macOS runs a security check. Enabling TUN or changing protected network settings may require administrator authorization. Routine subscription updates usually don’t need an administrator password, and authorization won’t fix an expired subscription.
- Install the app: Open the DMG, drag the app to Applications, then launch it from Applications. Don’t keep running it from the disk image.
- Check why it was blocked: After confirming the download source is trustworthy, open System Settings → Privacy & Security and read the message for the app. If macOS offers an Open Anyway option, decide whether it’s safe to proceed.
- Review permission requests: Before enabling TUN, check who is requesting access and why. Enter administrator credentials only in the system authorization dialog.
- Handle damage warnings carefully: If macOS says the app is damaged or contains malware, don’t disable system protections. Download an installer that matches your processor, and check that your macOS version is supported.
If it still fails after authorization, quit other VPNs and tools that modify routing, then restart the client and check its logs. Don’t keep re-entering your password instead of troubleshooting, and never enter your administrator password in a node or subscription field.
08 | How do global proxy, routing, and DNS work together?
Once traffic enters the client, routing rules determine whether it goes through the proxy, connects directly, or gets blocked. “Global” usually describes a routing policy; it doesn’t force every app to send traffic through the client. When only the system proxy is enabled, apps that ignore system settings may still bypass it.
- Routing: Open the Routing option in the v2rayN main window to see the current setup. For everyday use, choose a split-tunneling setup that suits your network. For troubleshooting, temporarily switch to a setup with a clearly defined proxy scope, then switch back.
- DNS: DNS resolves domain names to IP addresses. Browser secure DNS, system DNS, and core DNS may each be active, so the number shown in one place won’t necessarily tell you which resolver is actually being used.
- Protocols: VMess, VLESS, and Trojan describe connection methods. They don’t determine whether a specific website connects directly or through a proxy; node settings and routing rules are separate layers.
If only some domains fail, check the matched rule and outbound shown in the client log, then check DNS. Don’t rewrite all your rules and DNS settings at once. Change one option at a time and retest the same destination to see what made a difference.
09 | Does a latency reading mean a node will work?
Not necessarily. A TCP connection test only confirms that a connection can be made to a particular address and port. A real-connection latency test is closer to browsing through the proxy, but still only reflects its test destination and time. Download speeds also depend on outbound bandwidth, the destination site, congestion, and your local network.
- In the v2rayN server list, select a node, right-click, and choose Test real connection latency to tell a failed test from a slow response.
- Set the node as the active server, confirm the system proxy is enabled, and open the website you actually need to visit.
- If it fails, check the logs for a connection timeout, authentication error, or TLS error. Don’t rely on the latency column alone to diagnose the problem.
- For certificate or time-related errors, on Mac open System Settings → General → Date & Time and check that time is set automatically. On Windows, check Settings → Time & language.
Don’t hide errors by disabling certificate verification. The server name, transport path, and security settings must match the provider’s configuration. For subscription nodes, update the subscription first, then check whether the provider has changed its server settings.
10 | How do you restore your internet after quitting the client?
A common cause is that the system still points to the local proxy even though the client has stopped listening. Your browser is trying to connect to a local endpoint that no longer exists; your Wi-Fi or broadband connection may be fine. In other cases, TUN, a service, or another network tool may have left routing changes behind. Check each separately.
-
Clear the system proxy
Reopen v2rayN, select Clear system proxy under System Proxy, and confirm before quitting. Note that Do not change system proxy preserves the current state; it does not clear it.
-
Turn off traffic capture
Turn off Enable TUN and wait for the connection to recover. If you installed a service, manage it using the client’s service controls. Don’t delete system network settings at random.
-
Check network settings
On Mac, open System Settings → Network → your current network service → Details → Proxies and check for leftover settings. On Windows, open Settings → Network & internet → Proxy and check there.
-
Test a direct connection
Open a website that normally works without a proxy, then reconnect to the network. Don’t delete a proxy configured by your workplace or school; record its settings and ask your network administrator first.