This article explains how to import nodes into v2rayNG. It covers three methods—using a link, a QR code, or a subscription—and how to check your IP, DNS, and browser settings if importing succeeds but you still can’t access the internet. It’s intended for Android users. Menu names may vary slightly between versions, so follow the labels shown in your app.
1. Install the client and check the node format
Download the installer from the official v2rayNG GitHub releases page, choosing the version that matches your phone’s architecture. If you’re not sure which version to use, check your device information or the release notes. On first install, you may need to allow your browser or file manager to “install unknown apps.” Once installation is complete, it’s a good idea to turn this permission off.
Get a node link, QR code, or subscription address from your provider. Individual node links commonly start with vless://, vmess://, or trojan://, while subscription addresses are usually HTTPS URLs. A subscription address is like an access credential. Don’t share it publicly or paste it into an unfamiliar parsing website. For free nodes on this site, follow the format and validity status stated on the page.
2. Choose an import method based on what you have
- Import a copied link: Copy the entire node link, open v2rayNG, tap “+” in the upper-right corner, and select “Import config from clipboard.” Check the list to confirm the new configuration appears. If you see a format error, make sure you haven’t copied any instructions or extra spaces, and that the link isn’t cut off.
- Scan a QR code: Tap the scan option under “+” and grant camera access, then scan the node QR code. If the code is on the same phone, check whether the scanner lets you import an image from your gallery. If not, use the link instead, or display the code on another device.
- Add a subscription: Open “Subscription group settings” or a similar option in the side menu. Add a group, enter a recognizable name, paste the subscription address into the URL field, and save. Return to the main screen, open the menu, and select “Update subscriptions” or “Update current group subscription.” Wait for the node list to load.
A subscription link may not work as a single node when imported directly from the clipboard. If an update fails, first check that the address is complete and hasn’t expired, and that your current network can reach the subscription server. Don’t repeatedly import the same address, as this can create duplicate groups.
3. Connect and confirm that it’s working
Select a node, then tap the connect button on the main screen. The first time you connect, Android will ask you to authorize a VPN connection. Confirm, then check for the VPN icon in the status bar. If another VPN app is already running on your phone, disconnect it first to avoid conflicts.
Once connected, you can use the client’s connection test, then try opening the website you want to visit. Test results are only a guide and don’t guarantee that every website will be accessible. To check your public IP, compare it before and after connecting using the same lookup service. A changed IP only shows that the exit point for that particular request has changed; it doesn’t prove that all apps are using the proxy.
4. If you still can’t access the internet after importing, troubleshoot in this order
- Try a different node, then switch between Wi-Fi and mobile data to determine whether the node or your local network is the problem. Check that your phone’s date and time are set to update automatically.
- Check the routing mode and per-app proxy settings to make sure your target browser isn’t excluded. If needed, temporarily adjust the routing settings for testing, then restore the original settings.
- If you can connect but websites won’t load by domain name, check the client’s DNS settings, Android’s “Private DNS” setting, and the browser’s secure DNS setting. Adjust and retest them one at a time rather than changing several at once.
- If the problem only affects your browser, try an incognito window, disable extensions, or switch browsers. Cache, sign-in status, and website security checks can also affect access, so don’t rely on a page’s language alone to determine your exit location.
If the problem persists, note the error message, client version, and network you’re using, then check the logs. Before sharing a screenshot for help, obscure your subscription address, node password, and any other personal information.