ProxyPortals

Free network tool

WebRTC Leak Test

See whether your browser’s WebRTC stack exposes a public IP that differs from this page’s connection IP — especially useful when a VPN or proxy is on.

hourglass_empty

Running WebRTC leak test…

Collecting ICE candidates from public STUN servers

Your connection IP

216.73.217.32

Address our server saw for this page load (HTTPS). Compare this with WebRTC public addresses.

check_circle Page connection

WebRTC public IP

—

Public addresses found via STUN / ICE. Private and .local names are listed below separately.

pending Checking…

STUN servers tested

Google STUN

Local—
Public—
StatusWaiting

Cloudflare STUN

Local—
Public—
StatusWaiting

Mozilla STUN

Local—
Public—
StatusWaiting

Detailed results

Address Type Source Assessment
Waiting for candidates…
This test is most meaningful with your VPN connected. Run once with VPN off (baseline), then again with VPN on.

ICE gathering runs in your browser. We see your connection IP when the page loads (like any site). We do not store WebRTC candidates on an account. See Privacy.

Raw ICE candidates (0)
(none yet)

What is WebRTC?

WebRTC (Web Real-Time Communication) lets web pages create peer-to-peer audio, video and data channels without plugins. To punch through NAT, browsers collect ICE candidates — possible IP addresses — often with help from public STUN servers.

That is great for calls, but the same mechanism can reveal a public IP that differs from the address your VPN shows on normal HTTPS. This page compares both sides clearly.

How a WebRTC leak happens

JavaScript can create an RTCPeerConnection, open a data channel, and contact STUN. The reflexive (srflx) candidate is often your real public IP. If the VPN tunnels browsing but not WebRTC UDP, the page connection IP shows the VPN while WebRTC still shows your ISP.

mDNS and local addresses

Modern Chrome, Edge and Safari often hide LAN IPs behind .local mDNS names. That usually means the browser is protecting your local layout — it is not the same as a public IP leak. Private RFC1918 addresses are listed separately from public IPv4/IPv6.

How to test with VPN on and off

  1. VPN off → Start test. Connection IP and WebRTC public IP should usually match.
  2. VPN on → Start test again. Both should show the VPN exit. If WebRTC shows your home ISP IP, treat it as a possible leak.
  3. Change browser / VPN WebRTC settings, then re-test.

How to stop WebRTC leaks

Firefox

In about:config, set media.peerconnection.enabled to false. This disables WebRTC in that profile (breaks in-browser calls).

Chrome / Edge

No simple built-in off switch. Use a reputable WebRTC-limiting extension or your VPN client’s WebRTC protection, then re-run this test.

Brave

Settings → Shields → WebRTC IP handling policy. Prefer options that disable non-proxied UDP when using a proxy or Tor.

uBlock Origin

Enable “Prevent WebRTC from leaking local IP addresses” where available. It helps with local exposure; also verify public IPs with this page.

WebRTC leak vs DNS leak

DNS leaks send name lookups outside your VPN’s resolver. WebRTC leaks expose IPs via ICE/STUN. Fix them separately — use our DNS Lookup tool for resolver checks.

Limitations

We query a few public STUN servers for about five seconds. Firewalls, disabled WebRTC, or VPN UDP blocks can yield no public candidates — that is not absolute proof of safety. Re-test after browser or VPN updates.

Privacy note

Candidate gathering is client-side. Connection IP is visible on page load like any website. Details are in our Privacy Policy. Do not paste credentials into unknown third-party testers.

FAQ

What is a WebRTC leak?

A WebRTC leak happens when your browser’s real-time connection stack reveals a public IP address that differs from the IP your VPN or proxy is supposed to show. Sites can request STUN candidates and learn that address without your permission dialog.

Does a VPN stop WebRTC leaks?

Not always. Many VPNs tunnel normal HTTPS traffic but leave WebRTC able to contact STUN servers outside the tunnel. Test with your VPN on; if the WebRTC public IP differs from the page IP, your VPN is leaking or misconfigured.

Is it safe to disable WebRTC?

Yes for most browsing. Disabling WebRTC blocks browser-based video calls and some conferencing apps in that browser profile. Use a separate browser or profile if you need both privacy and WebRTC apps.

Why does it show a local IP or .local address?

Modern Chrome, Edge and Safari often hide LAN addresses behind mDNS hostnames ending in .local. That is usually good — it means the browser is not exposing your RFC1918 address to websites.

Which browsers leak by default?

Any browser with WebRTC enabled can gather ICE candidates. Whether a public IP appears depends on network path, VPN client, and browser policy. Always test your own combination rather than assuming a brand is safe.

WebRTC leak vs DNS leak?

A WebRTC leak exposes IP addresses via STUN/ICE. A DNS leak sends domain lookups outside your VPN’s DNS. They are different channels; fix them separately (browser/VPN WebRTC settings vs DNS settings).

Why is my WebRTC IP different from my IP?

If you use a VPN or proxy, a different WebRTC public IP usually means a leak of your real connection. If you are not using a VPN, matching IPs is normal and not a leak.

Does this test store my IP?

No. Candidate gathering runs in your browser. We may see your connection IP when the page loads, like any website, as described in our Privacy Policy. We do not create an account from this tool.

Can websites really use WebRTC to see my IP?

Yes. A page can create an RTCPeerConnection, collect candidates, and read IP-like strings from them. That is why VPN users should verify WebRTC behaviour.

How do I stop a leak in Chrome?

Chrome has no simple built-in “disable WebRTC” switch. Use a reputable WebRTC-limiting extension, enable your VPN client’s WebRTC protection if available, or use Brave’s WebRTC IP handling policy. Re-run this test after changing settings.

Last updated: October 2026