Why VPN Leak Testing Still Matters in 2026
Your VPN is active. The padlock icon is showing. You feel protected. But here's the uncomfortable truth: your ISP might still be watching every site you visit. A DNS leak means your device is sending DNS queries — the requests that translate domain names into IP addresses — outside the encrypted VPN tunnel, directly to your ISP's servers. You're connected to a VPN, and it's doing nothing to hide your browsing. Knowing how to test your VPN for DNS leaks is the only way to confirm your privacy tools are actually working.
This isn't a rare edge case. It happens with misconfigured apps, unsupported IPv6 traffic, and browser-level WebRTC vulnerabilities. And most users never check. This guide walks you through exactly how to run a VPN DNS leak test in 2026, check for IP leaks, and fix every common issue across NordVPN, Surfshark, ExpressVPN, and Proton VPN. If you're still shopping for a VPN, check our Best VPN Services of 2026 roundup first.
What Is a DNS Leak in Simple Terms?
Every time you type a URL into your browser, your device asks a DNS server: "What's the IP address for this website?" Normally, your VPN should handle that request through its own encrypted tunnel, using its own private DNS servers. A DNS leak happens when that request bypasses the tunnel entirely and goes to your ISP's DNS servers instead.
The result: your ISP sees exactly which sites you're visiting, even though you think you're protected. It's like sending a sealed letter through a private courier — but accidentally dropping the address slip on your doorstep for your neighbor to read.
Common Causes of DNS Leaks
- IPv6 traffic bypassing the VPN tunnel — Most VPNs handle IPv4 well but fail to route IPv6, which leaks directly to your ISP
- Transparent DNS proxies — Some ISPs intercept DNS queries and redirect them to their own servers regardless of your settings
- Split tunneling misconfigurations — Traffic excluded from the VPN tunnel can expose DNS queries
- OS-level DNS fallback — Windows and macOS sometimes fall back to system DNS if the VPN's DNS is slow to respond
- WebRTC in browsers — Chrome and Firefox use WebRTC for video and gaming features, which can expose your real IP independently of your VPN
Step 1: Connect to Your VPN and Choose a Server Location
Before running any tests, establish a clean baseline. Disconnect your VPN entirely and visit ipleak.net or dnsleaktest.com. Write down or screenshot your real IP address and the DNS servers shown — these will be your ISP's servers. This baseline is critical. Without it, you can't confirm whether a test result represents a leak or expected VPN behavior.
Now connect your VPN and pick a server in a different country from your actual location. If you're in Germany, connect to a US server. If you're in the UK, pick Japan. The geographic distance makes it immediately obvious if your real location is leaking — there's no ambiguity when a "US server" test still shows German DNS servers.
Before running tests, enable every privacy feature in your VPN app. Turn on the kill switch. Enable DNS leak protection if it's a separate toggle. Check that IPv6 leak protection is active. These settings exist precisely because leaks are a known problem — and they're often disabled by default.
One more thing: flush your DNS cache before testing. On Windows, open Command Prompt and run ipconfig /flushdns. On macOS, run sudo dscacheutil -flushcache. Stale cache entries can produce misleading results.
Step 2: How to Test Your VPN for DNS Leaks Using the Best Tools
With your VPN connected and baseline noted, head to your DNS leak test tool. Run at least two tools for confirmation. Here are the best options for a VPN DNS leak test in 2026:
- dnsleaktest.com — Standard test sends 6 DNS queries; extended test sends 36. Always run the extended test for high-privacy needs. Takes 10–30 seconds.
- ipleak.net — Tests DNS, IPv4, IPv6, and WebRTC simultaneously. Built by AirVPN, widely trusted. Takes 1–2 minutes.
- browserleaks.com/dns — Sends 50 random queries (25 IPv4, 25 IPv6) for thorough coverage. Excellent for catching intermittent leaks.
- Perfect Privacy DNS Leak Test — Focuses specifically on ISP detection and transparent DNS proxy identification.
Reading the results is straightforward. Pass: Only your VPN provider's DNS servers appear. NordVPN, for example, shows its own encrypted resolvers with no ISP servers visible. Fail: Your ISP's DNS servers appear in the results — even one entry is a leak. That single entry means your ISP can log that query.
For advanced verification, open a terminal and run dig google.com +short or nslookup google.com. These commands show which DNS resolver your system is actually using. If you want packet-level confirmation, Wireshark can capture DNS traffic on UDP port 53 — any queries going to non-VPN IP addresses are leaks. Overkill for most users, but worth it if you're chasing a persistent problem.
IPv6-Specific DNS Leak Testing
This is where most guides stop short. IPv6 leaks are increasingly common and often invisible in basic tests. Many VPNs tunnel IPv4 traffic correctly but leave IPv6 completely unhandled — your device sends IPv6 DNS queries directly to your ISP without touching the VPN tunnel at all.
Test specifically for this at test-ipv6.com and browserleaks.com/dns (which includes IPv6 queries in its 50-query test). If you see an IPv6 address that matches your ISP's range rather than your VPN provider's, you have an IPv6 DNS leak. The fix: either enable IPv6 leak protection in your VPN app, or disable IPv6 entirely at the OS level if your VPN doesn't support it.
Mobile DNS Leak Testing
Testing on mobile follows the same process — use your phone's browser to visit the same tools. But mobile introduces additional complexity. iOS and Android both have system-level DNS settings that can override VPN configurations. On Android, check Settings → Network → Private DNS and ensure it's set to "Off" or pointing to your VPN's resolver. On iOS, VPN profiles installed via configuration files sometimes fail to capture all DNS traffic from certain apps. If you suspect app-level leaks, test each app individually. For a broader look at mobile security risks, see our 2026 Android Security Survival Guide.
Step 3: Run a WebRTC Leak Test to Check VPN IP Leak Exposure
WebRTC is a browser technology built for real-time communication — video calls, gaming, file sharing. The problem: it uses STUN servers to discover your real IP address, and it does this independently of your VPN. Chrome and Firefox are both vulnerable. Even with a fully functional VPN, WebRTC can expose your real IP to any website that requests it — making it one of the most overlooked ways to check VPN IP leak status.
Testing is simple. Visit browserleaks.com/webrtc or ipleak.net with your VPN connected. Look for two things: your public IP address and your local IP address. Pass: The public IP shown matches your VPN server's IP, not your real one. Local IPs (192.168.x.x or 10.x.x.x) are normal and not a concern. Fail: Your real public IP appears alongside or instead of the VPN IP.
Run this test in every browser you use. A leak in Chrome doesn't necessarily mean Firefox leaks too, and vice versa. We've seen cases where a VPN's browser extension blocks WebRTC in Firefox but not in Chrome's incognito mode.
If you find a WebRTC leak, you have two options. First, check your VPN app — most modern VPNs include WebRTC leak protection as a setting. Second, disable WebRTC directly in the browser. In Firefox, type about:config in the address bar, search for media.peerconnection.enabled, and set it to false. Chrome requires an extension like WebRTC Leak Prevent since Google doesn't expose this setting natively.
Step 4: Verify Your Public IP Address Has Changed Correctly
This step confirms the most fundamental VPN function: hiding your real IP address. Visit whatismyipaddress.com, ipleak.net, or IPX.ac (which adds browser fingerprinting data). With your VPN connected, the IP address shown should match your VPN server's location — not your home location.
Check both IPv4 and IPv6. A VPN that correctly masks your IPv4 address but leaves your IPv6 address exposed is still leaking your real location. If you see two IP addresses and one of them is from your ISP's IPv6 range, that's a leak. Use test-ipv6.com to specifically verify IPv6 handling.
A clean result looks like this: NordVPN connected to a US server shows a US IPv4 address, NordVPN's own DNS servers, and either a VPN-assigned IPv6 or no IPv6 at all (blocked). Your real IP is nowhere in the results. That's what passing looks like.
If your real IP appears, the VPN tunnel has failed entirely — more serious than a DNS leak. Reconnect, try a different server, and check whether your kill switch is functioning. The kill switch should block all internet traffic if the VPN connection drops, preventing your real IP from ever being exposed. This is especially critical when using public Wi-Fi networks, where connection drops are more frequent.
Step 5: Fix Common Leak Issues — How to Test Your VPN for DNS Leaks After Changing Settings
Most leaks come down to settings that aren't enabled by default. Here's exactly what to check in each major VPN — and how to re-run your VPN DNS leak test to confirm each fix has worked.
NordVPN (Rated 9.5/5)
NordVPN is our top-rated VPN and passes all leak tests when configured correctly. In the app, go to Settings → General and enable the kill switch. Under Settings → Advanced, confirm "DNS leak protection" is active. NordVPN uses its own encrypted DNS resolvers and blocks IPv6 by default on most platforms.
If you're seeing leaks despite these settings, switch protocols. NordVPN's NordLynx (WireGuard-based) protocol is both the fastest and the most reliable for leak prevention. OpenVPN UDP can occasionally produce DNS fallback issues on Windows — switching to NordLynx resolves this in most cases. Run the extended test on dnsleaktest.com after switching to confirm. For more on protocol configuration, see our guide on how to configure WireGuard VPN across NordVPN, Surfshark, and ExpressVPN.
Surfshark (Rated 9.3/5)
Surfshark runs RAM-only servers and has an audited no-logs policy, but its leak protection settings need manual verification. Open the app, go to Settings → Connectivity, and enable the kill switch. Check that "DNS leak protection" is toggled on. Review your split tunneling configuration carefully — any app excluded from the VPN tunnel can generate DNS queries that bypass the encrypted connection.
Surfshark's unlimited simultaneous connections mean you might be running it across five or six devices. Test each device individually. A configuration that works on your laptop may not be correctly applied on your phone's Surfshark app.
ExpressVPN (Rated 9.0/5)
ExpressVPN routes all DNS queries through its own private DNS servers via the encrypted tunnel — there's no separate DNS setting to toggle because it's always on. If you're seeing DNS leaks with ExpressVPN, the most likely cause is a split tunneling configuration that's excluding too much traffic, or a protocol issue.
ExpressVPN's Lightway protocol is the equivalent of WireGuard — fast, modern, and reliable. If you're running IKEv2 or OpenVPN and seeing leaks, switch to Lightway first. Also check that the Network Lock (ExpressVPN's kill switch) is enabled under Preferences → General.
Proton VPN (Rated 9.0/5)
Proton VPN is Swiss-based and built with privacy as a core principle. Enable the kill switch under Settings → Connection. IPv6 leak protection should be enabled by default, but verify it under Settings → Advanced. Proton VPN's WireGuard implementation is fast and reliable — use it as your default protocol.
If you're on Proton VPN's free plan, free servers are more heavily loaded and may occasionally drop connections. A dropped connection without a kill switch means your real IP is exposed until you reconnect. The kill switch is non-negotiable.
Universal Fixes That Apply to Every VPN
- Disable OS location services — Windows and macOS location APIs can expose your approximate location independently of DNS
- Disable IPv6 at the OS level if your VPN doesn't explicitly support IPv6 routing
- Avoid public DNS resolvers (8.8.8.8, 1.1.1.1) in your OS network settings — these can override VPN DNS
- Test after every app update — VPN updates occasionally reset settings to defaults
- Check router-level DNS — If your router has custom DNS configured, it may intercept queries before they reach your VPN. Our guide to installing a VPN on your router covers router-level DNS configuration in detail
- Pair your VPN with strong endpoint protection — A VPN secures your traffic in transit, but malware on your device can still exfiltrate data. See our Best Antivirus Software of 2026 guide for top-rated options, or browse the antivirus category for detailed reviews
Our Recommendation
Run this full test sequence — including how to test your VPN for DNS leaks, WebRTC leaks, and IP leaks — every time you connect to a new VPN server, after any VPN app update, and whenever you're on an unfamiliar network. The whole process takes under 10 minutes and tells you definitively whether your VPN is actually protecting you.
Of the four VPNs covered here, NordVPN produces the cleanest results out of the box — zero leaks across DNS, WebRTC, IPv4, and IPv6 when the kill switch is enabled. Surfshark and ExpressVPN are close behind. Proton VPN is the right choice if Swiss privacy law and a free tier matter to you.
A VPN that leaks DNS queries is worse than no VPN at all — it creates a false sense of security while your ISP logs everything. Test it. Verify it. Don't assume it's working because the app says it is. If you're also using your VPN to access content while traveling, our guide on how to use a VPN for streaming abroad is worth reading alongside this one. And if you want to pair your VPN with solid endpoint protection, our Best Antivirus Software of 2026 roundup breaks down exactly what each tool protects you from — and why you likely need both.
FAQ
How do I know if my VPN has a DNS leak?
The most reliable way to check is to visit a dedicated test site such as dnsleaktest.com or ipleak.net while your VPN is connected. Run the extended test and examine the DNS servers listed in the results. If you see servers belonging to your ISP rather than your VPN provider, your VPN has a DNS leak. Always compare against a baseline you recorded before connecting to the VPN so you can clearly identify which servers are unexpected.
What is the difference between a DNS leak and an IP leak?
A DNS leak means your DNS queries — the requests that look up website addresses — are being sent to your ISP's servers instead of through the VPN tunnel. Your ISP can see which sites you're visiting, but your IP address may still appear masked. An IP leak (including WebRTC leaks) means your actual public IP address is being exposed directly to websites or services, revealing your real location. Both are serious privacy failures, which is why a thorough VPN DNS leak test should always include an IP and WebRTC check as well.
Can a VPN leak my IP address even when it's connected?
Yes. The most common cause is WebRTC, a browser technology that can reveal your real IP address to websites even when your VPN is active. IPv6 leaks are another frequent culprit — many VPNs route IPv4 traffic correctly but leave IPv6 unhandled, exposing your ISP-assigned IPv6 address. To check VPN IP leak status, visit browserleaks.com/webrtc and test-ipv6.com with your VPN connected and compare the results against your baseline.
Which VPN is best for avoiding DNS and IP leaks?
Based on our testing, NordVPN consistently produces the cleanest results — no DNS, WebRTC, IPv4, or IPv6 leaks when the kill switch is enabled. Surfshark and ExpressVPN perform nearly as well with correct settings applied. Proton VPN is the strongest choice if you prioritize Swiss privacy jurisdiction.
How often should I run a VPN leak test?
You should run a full leak test — covering DNS, WebRTC, IPv4, and IPv6 — every time you connect to a new VPN server, after any VPN app update, and whenever you join an unfamiliar network such as a hotel or airport Wi-Fi. VPN app updates can silently reset privacy settings to defaults, and new network environments can trigger DNS fallback behavior that wouldn't appear on your home connection. The entire process takes under 10 minutes and is the only reliable way to confirm your VPN is working as intended.



