V2Ray FAQ

Browse answers on choosing a client, downloads, subscriptions, and connection troubleshooting.

What’s the difference between v2rayN, v2rayNG, and v2flyNG?

v2rayN for desktop (Windows / macOS / Linux); v2rayNG for Android, with the Xray core by default; v2flyNG also for Android — UI close to v2rayNG, but the core is v2fly (v2ray-core). For a fuller comparison, see the version comparison page

Which client should I download?

Windows / macOS / Linux users should download v2rayN; most Android users should download v2rayNG; only when you clearly need the v2fly core should you download v2flyNG

Do v2rayNG and v2flyNG work the same way?

Mostly yes. Subscription import, QR scan, connect, and per-app proxy paths are very similar — the main difference is the core. If you know one, the other is quick to pick up.

Which client is faster or more stable?

Speed and stability mainly depend on node quality and your local network, not the client name. Picking a working node and keeping subscriptions updated usually matters more than which client you use.

Are these clients free? Are they safe?

All three are free and open source. Get packages from this site’s Download Center and avoid unknown modified builds.

Which APK architecture version should I download on Android?

On recent phones, prefer arm64-v8a; on older devices, choose armeabi-v7ax86 / x86_64 are mainly for emulators. The wrong architecture can cause install failures or crashes.

Android won’t install the APK (“Install unknown apps”) — what should I do?

In system settings, allow “Install unknown apps” for your file manager or browser, then tap the APK again to install.

How do I install v2rayN after downloading on Windows?

On Windows, ZIP is typical: extract to a non-system-drive folder, keep the full folder intact, and run v2rayN.exe. If antivirus blocks it, add the folder to trusted items, then open again. For detailed steps, see v2rayN tutorial

Which package should I download for v2rayN on macOS / Linux?

macOS: for Apple Silicon choose arm64.dmg; for Intel choose macos-64.dmg. Linux: Ubuntu/Debian commonly use .deb; Fedora/RHEL commonly use .rpm; or use the universal .zip. On the v2rayN download page use the OS filter to find the right package quickly.

Do I need to uninstall the old version before updating?

On Android, you can usually install over the existing app; uninstall and reinstall only if the update fails or acts up. For desktop v2rayN, overwrite the install or extract over the same folder — quit the running client first.

Which proxy protocols do the clients support?

Common support includes VMess, VLESS, Trojan, Shadowsocks, SOCKS, WireGuard, and more — import nodes in bulk via subscription links.

I only have a share link, not a subscription — can I still use it?

Yes. Copy vmess://vless://trojan:// or ss:// links, then import from the clipboard; you can also add by scanning a QR code. Subscriptions are better for managing many nodes over time.

What if subscription updates fail?

First confirm the subscription URL is complete and not truncated; retry on another network; check that system time is accurate. If it still fails, import a single node first to confirm the client can connect, then troubleshoot the subscription source.

What is per-app proxy? Should I enable it?

Per-app proxy lets you choose which apps use the proxy and which go direct. Turn it on if you only want browsers/messaging through the proxy; keep global mode if every app should use it. On Android, v2rayNG / v2flyNG use this feature most often.

What is the difference between system proxy and TUN mode?

System proxy is simple, works with most browsers and apps, and suits beginners; TUN mode takes over traffic more thoroughly for apps that ignore system proxy, but may trigger more security-software prompts. On Windows, v2rayN users can switch as needed.

What if I can’t connect or speeds are very slow?

Try this order: 1) Run a speed/latency test in the client and switch to a lower-latency node; 2) Update the subscription; 3) Confirm the proxy/VPN is actually on; 4) Check system time; 5) If it still fails, try another transport/route type or retry later.

It says connected, but pages still won’t load?

On Windows, confirm system proxy is enabled; on Android, confirm the VPN icon is still in the status bar and permission wasn’t revoked. Also check for conflicting browser proxy extensions, and try another node.

Why do all node latency tests time out?

The subscription may be expired, the current network may be heavily restricted, or the test method may not match real connectivity. Update the subscription, then test on another network; also try connecting a few nodes manually — don’t rely only on test colors.

On Android, the connection drops after a while by itself?

Often the system battery saver clears the background app. Allow the client to auto-start and turn off battery optimization for it; also confirm the notification-bar VPN wasn’t disconnected manually.

Connections fail more often on corporate / campus networks?

Those networks are usually more restrictive. Prefer nodes with common transports such as TLS / WebSocket, and avoid repeatedly retrying the same dead node on a harsh network. If needed, switch networks to verify the client itself works.

Still stuck?

Start with the fuller guides for your scenario: