EgressLens

WebRTC leak test: is your real IP exposed?

Video calls in the browser ask STUN servers for your public address over UDP, and many proxies only carry TCP. Four STUN servers are asked at the same time as websites, along 51 probes in all, to see whether WebRTC gives away your own line.

Asking the probes…

  • Cloudflare
  • Google
  • Twilio
  • Xiaomi
  • Websites see
Your exits
  • Asking the probes…
Findings
  • Routing
  • Exceptions
  • AI region
  • WebRTC
  • IPv6
  • Time zone

Every probe

WebRTC (UDP)

  • Cloudflare–
  • Google–
  • Twilio–
  • Xiaomi–

Sites in mainland China

  • IPIP.NET–
  • iQIYI–
  • ipify.cn–
  • DNSPod v4–
  • DNSPod v6–

IP lookup services

  • IP.SB–
  • ipinfo.io–
  • ipapi.co–
  • ipwho.is–
  • GeoJS–
  • ipleak.net–
  • ident.me–
  • ip.guide–
  • icanhazip–
  • BigDataCloud–

AI services

  • ChatGPT–
  • OpenAI–
  • Sora–
  • Claude–
  • Anthropic–
  • Grok–
  • Perplexity–
  • Copilot–
  • Mistral–
  • Poe–
  • Character.AI–
  • DeepL–

Popular sites

  • Cloudflare–
  • 1.1.1.1–
  • GitLab–
  • npm–
  • Notion–
  • Linear–
  • Zoom–
  • Medium–
  • Coinbase–
  • Crunchyroll–
  • Patreon–
  • Shopify–

IPv4 only / IPv6 only

  • IP.SB v4–
  • IP.SB v6–
  • Cloudflare Radar v4–
  • Cloudflare Radar v6–
  • ipify v4–
  • ipify v6–
  • icanhazip v4–
  • icanhazip v6–

Questions

What does this WebRTC leak test check?

It asks four STUN servers (Cloudflare, Google, Twilio, Xiaomi) for your public address over UDP, the way video-call sites do, and compares the answer with the exit websites see over HTTPS. If STUN sees your local line while websites see the proxy, any page can read your real IP.

How do I fix a WebRTC leak?

Make the proxy carry UDP too: turn on TUN or enhanced mode in Clash, sing-box, Surge or Shadowrocket, or use the VPN's full-tunnel mode. Blocking WebRTC in the browser (uBlock Origin's setting "Prevent WebRTC from leaking local IP addresses", or media.peerconnection.enabled = false in Firefox) also works, but can break video calls.

The result says UDP is blocked. Is that safe?

For WebRTC, yes: no STUN server answered, so a page can't learn an address this way. Video calls may still work through a relay server.

Does every VPN stop WebRTC leaks?

A VPN that tunnels all traffic does. A proxy set only in the browser or the system (HTTP or SOCKS) usually carries TCP alone, so WebRTC's UDP leaves directly. Check again after every change to your setup.

Why do different sites see different IPs?

Proxy and VPN apps with rules (Clash, Surge, Shadowrocket, sing-box and the like) choose a route by destination: sites in China direct, AI services through one server, everything else through another. A check that asks one site only sees that site's route. This page asks dozens of destinations at the same time and groups the answers by network.

How does it know what ChatGPT or Claude sees?

Sites behind Cloudflare answer /cdn-cgi/trace on their own domain with the address that connected to them, and allow any page to read it. Your browser connects to chatgpt.com as usual, through whatever route your rules pick for it, and reads back the address chatgpt.com saw.

What is an IPv6 leak?

If the proxy only handles IPv4 but your line also has IPv6, connections over IPv6 can skip the proxy. The IPv6-only probes show which exit IPv6 traffic really takes.

How are local and proxy exits told apart?

By the network's owner: an address registered to a cloud or hosting company (Amazon, Google Cloud, Alibaba, DigitalOcean…) is labeled a proxy, the first one belonging to an ISP is your local line. A residential proxy or a VPN on an ISP network can't be told apart this way.

Is anything sent to this site?

No. Your browser talks to each probe directly; this site only serves static files and never sees your results. Hide IPs before taking a screenshot.

Share the result

The image and link are made in your browser and never contain IP addresses; city and network stay hidden unless you turn them on.