Route Specific Android Apps Through a Proxy Using NetGuard
17 min read
Learn how to use NetGuard to send only chosen Android apps through a proxy without rooting your device. Step‑by‑step guide with testing and troubleshooting.
October 11, 2026 13:30
Why Use NetGuard for Per‑App Proxying?
Many Android users need a proxy for privacy, geo‑restriction bypass, or corporate policy compliance, but they don’t want every app on the device to route traffic through that proxy. Sending all traffic through a proxy can slow down the network, break apps that rely on local services, or expose sensitive data to an untrusted server. NetGuard solves this by acting as a local VPN‑style firewall that can apply a proxy on a per‑app basis – all without requiring root access.
NetGuard’s key advantages for this use‑case are:
- No root required: It works on Android 6.0+ by using the built‑in VPN permission.
- Per‑app control: You decide which apps get the proxy and which stay on the normal network.
- Multiple proxy types: HTTP, HTTPS, SOCKS5, and even PAC (Proxy Auto‑Config) files are supported.
- Integrated DNS‑over‑HTTPS (DoH): Prevent DNS leaks while the proxy is active.
This tutorial walks you through the entire workflow – from installing NetGuard to verifying that only the intended apps are using the proxy, and finally troubleshooting the most common hiccups.
Before You Start
Gather the following information and ensure your device meets these prerequisites. Skipping any of these steps can lead to confusing errors later on.
- Android version: 6.0 (Marshmallow) or newer. NetGuard works on most stock and custom ROMs that support the VPN API.
- Internet connection: A stable Wi‑Fi or mobile data connection is required for the initial download and for testing the proxy.
- Proxy details: Hostname or IP address, port number, and optionally a username/password if the proxy requires authentication. Make sure the proxy server allows connections from your device’s IP range.
- Test app (optional but recommended): Install a simple IP‑checking app such as “IP Info” from the Play Store, or use a web browser to visit
https://ifconfig.me for quick verification.
- Battery level: At least 50 % charged or connected to a charger, because NetGuard will temporarily act as a VPN and may consume a bit more power.
Tip: If you plan to use a SOCKS5 proxy for a messaging app, confirm that the app supports SOCKS5; otherwise, NetGuard will fall back to HTTP/HTTPS.
Step‑by‑Step: Configure NetGuard Proxy for an App
1. Install NetGuard
- Open the Google Play Store.
- Search for NetGuard – no‑root firewall (developer: Marcel Bokhorst).
- Tap
Install and wait for the download to finish.
- Once installed, launch the app.
NetGuard’s first screen shows a large toggle at the top. This toggle enables the local VPN firewall.
2. Grant the VPN Permission
- Tap the top‑right toggle to turn NetGuard on. Android will display a system dialog: “NetGuard wants to set up a VPN connection.”
- Select
OK. The VPN permission is stored in the system; you won’t see a traditional VPN UI because NetGuard runs in the background.
If you see a warning that the VPN may affect other VPN apps, acknowledge it – NetGuard cannot run alongside another active VPN.
3. Locate the Target App in NetGuard’s List
- On NetGuard’s main screen, you’ll see a scrollable list of all installed applications.
- Find the app you want to route through a proxy (e.g., Chrome, Telegram, or a corporate client).
- Each app has three icons:
Wi‑Fi, Mobile data, and Proxy (a small globe).
By default, both Wi‑Fi and Mobile icons are gray, meaning the app is blocked. We’ll enable the network first, then configure the proxy.
4. Allow Network Access for the App
- Tap the
Wi‑Fi icon next to the app. It will turn green, indicating the app can use Wi‑Fi.
- If you also want the app to work on mobile data, tap the
Mobile icon to turn it green as well.
Leaving an icon gray will block that interface, which is useful for data‑saving but not needed for proxy testing.
5. Configure the Proxy for the App
- Tap the
Proxy (globe) icon. A dialog titled “Proxy settings for <AppName>” appears.
- Select the proxy type:
- HTTP/HTTPS – most common for web traffic.
- SOCKS5 – useful for apps that support generic TCP tunnelling.
- PAC – if you have a Proxy Auto‑Config URL.
- Enter the proxy host (e.g.,
proxy.example.com) and port (e.g., 8080).
- If the proxy requires authentication, toggle Authentication and fill in the username and password.
- Tap
Save.
NetGuard now routes all TCP traffic from the selected app through the specified proxy. UDP traffic is not proxied – this is a limitation of the Android VPN API.
6. Verify the Proxy Is Active
- Open the test app you installed earlier (e.g., IP Info) **without** configuring a proxy for it.
- Note the displayed public IP address – this is your device’s direct IP.
- Now open the app you just configured (e.g., Chrome) and navigate to
https://ifconfig.me.
- The page should show the IP address of the proxy server, not your original IP.
If both IPs are identical, the proxy configuration didn’t take effect. Re‑check steps 4 and 5.
Testing the Proxy Configuration
Testing is crucial because a mis‑configured proxy can silently drop traffic, making the app appear to “hang.” Below are three practical ways to confirm that only the intended app uses the proxy.
- Web‑based IP check: As shown above, compare the IP shown by a browser (proxied) vs. a non‑proxied app.
- Network‑monitoring app: Install a lightweight packet‑capture tool like “NetCapture” (requires VPN permission) and filter for the target app’s UID. You should see traffic flowing to the proxy’s IP address.
- Command‑line verification (optional): If you have Termux installed, you can run
curl --proxy http://proxy.example.com:8080 https://ifconfig.me and compare the result with a plain curl https://ifconfig.me.
When the test confirms the proxy is active, you can safely use the app for its intended purpose – whether that’s browsing a geo‑restricted site or routing corporate traffic through a secure gateway.
Advanced Options
NetGuard offers a handful of features that can tighten security or broaden proxy applicability. They are optional but worth exploring once the basic setup works.
1. Using a PAC (Proxy Auto‑Config) File
- In the proxy dialog, select PAC as the proxy type.
- Enter the URL of the PAC file (e.g.,
https://example.com/proxy.pac).
- The PAC file contains JavaScript logic that decides which URLs go through the proxy. This is handy for corporate environments where only certain domains need tunnelling.
- Save and test as described earlier.
2. Enabling DNS‑over‑HTTPS (DoH) to Prevent DNS Leaks
- Open NetGuard’s main menu (three‑dot icon) → Settings → DNS over HTTPS.
- Toggle the switch on and choose a trusted DoH provider (e.g., Cloudflare
https://cloudflare-dns.com/dns-query).
- DoH encrypts DNS queries, ensuring that even if the proxy is compromised, your DNS lookups remain private.
3. Applying the Same Proxy to Multiple Apps
- Repeat steps 3‑5 for each additional app.
- If you have many apps that need the same proxy, consider creating a profile in NetGuard (Settings → Profiles) and assigning the apps to that profile. Switching the profile on/off toggles the proxy for all included apps at once.
4. Bypassing the Proxy for Local Network Resources
- Some corporate apps need to reach internal servers that are not reachable from the proxy.
- In the proxy dialog, enable the Bypass LAN option. NetGuard will send traffic destined for private IP ranges (e.g., 10.0.0.0/8) directly, without proxying.
Troubleshooting Common Issues
If the proxy doesn’t work as expected, follow these diagnostic steps before reinstalling NetGuard.
- Issue: The app shows a “Cannot connect” error.
- Check 1: Verify the proxy server is reachable from your network. Open a browser and navigate to
http://proxy.example.com:8080 – you should receive a connection timeout or a proxy authentication prompt.
- Check 2: Confirm the proxy port matches the server’s configuration (common ports: 8080 for HTTP, 1080 for SOCKS5).
- Check 3: If authentication is required, double‑check the username and password. NetGuard stores them in plain text within its private storage; a typo will cause immediate failure.
- Issue: DNS requests still resolve to your ISP’s DNS, revealing the real location.
- Enable DNS‑over‑HTTPS in NetGuard’s settings (see Advanced Options).
- Alternatively, set a custom DNS server (e.g.,
1.1.1.1) in the proxy dialog under “DNS server.”
- Issue: Other apps that should be blocked are still accessing the internet.
- Make sure the
Wi‑Fi and Mobile icons for those apps are gray. NetGuard’s default is “block all,” but a previous session may have left them enabled.
- Use the “Reset all rules” option in the main menu to start from a clean slate.
- Issue: NetGuard refuses to start, showing “VPN permission denied.”
- Go to Android Settings → Apps & notifications → Special app access → VPN. Revoke NetGuard’s permission, then restart the app and grant the permission again.
- If another VPN app is active, disable it first. Android only allows one VPN profile at a time.
- Issue: Battery drain appears higher than usual.
- NetGuard runs a lightweight VPN service, but keeping many apps constantly proxied can increase CPU usage.
- Disable the proxy for apps you only use occasionally, or switch NetGuard off when you don’t need the proxy.
Warning: Using an untrusted proxy can expose all of your app’s traffic – including passwords and personal data – to the proxy operator. Only use proxies you control or that come from a reputable provider.
When to Choose a Different Approach
NetGuard is excellent for most per‑app proxy needs, but there are scenarios where another solution may be preferable:
- UDP‑heavy apps: Games or VoIP services that rely on UDP cannot be proxied through NetGuard because Android’s VPN API only forwards TCP. In such cases, a full‑device VPN app that supports UDP (e.g., WireGuard) is required.
- System‑level proxy for all traffic: If you need every app, including background services, to use the same proxy, configuring the Wi‑Fi network’s built‑in proxy in Settings > Wi‑Fi > Long‑press network > Modify network > Advanced > Proxy may be simpler.
- Corporate MDM enforcement: Some enterprises enforce proxy settings via Mobile Device Management. NetGuard’s per‑app approach might conflict with those policies.
In those cases, evaluate the trade‑offs between flexibility, security, and compatibility before deciding.
With NetGuard correctly configured, you now have granular control over which Android apps tunnel through a proxy, preserving performance for the rest of your device while meeting privacy or corporate requirements. The steps above are repeatable, so you can add or remove apps from the proxy list whenever your needs change – all without ever rooting your phone.