antibrowser
Русский中文

technical

WebRTC Leak Test: How to Find and Stop IP Leaks

Run a WebRTC leak test in under 30 seconds, find out if your real IP is exposed behind a VPN, and fix the leak in Chrome, Firefox, or an antidetect browser.

Ivan14 min read
Browser developer tools showing a WebRTC STUN request revealing a real IP address alongside a VPN IP, illustrating an active WebRTC leak

To run a WebRTC leak test: open browserleaks.com/webrtc with your VPN or proxy active, then compare every IP shown under "WebRTC Detection" against your proxy IP. If they differ — or if a second IP appears alongside your proxy — your real address is exposed. The test takes under 30 seconds and works in any desktop browser without installing anything.

What Is a WebRTC Leak

A WebRTC leak happens when your browser reveals your real IP address through the WebRTC protocol, bypassing whatever IP your VPN or proxy is supposed to show. WebRTC (Web Real-Time Communication) is a browser API built for video calls, file transfers, and real-time data exchange without plugins. It ships enabled by default in Chrome, Firefox, Edge, and Opera.

The leak isn't a browser bug — it's the protocol working exactly as designed. WebRTC needs to enumerate all available network interfaces to find the best connection route between two endpoints, and it shares that list during connection setup. The problem is that any website can trigger this enumeration, not just one you've agreed to video-call. A small JavaScript snippet embedded in a page can read your real IP in under a second, regardless of what proxy or VPN you have active.

This is why browser leak checkers always include a WebRTC section alongside canvas fingerprints, fonts, and timezone checks. WebRTC is one of the most reliable ways to get a visitor's actual public address because it operates below the application layer — it bypasses the proxy settings that a regular HTTP request would follow. For a broader look at what sites collect about your browser beyond IP, see Browser Fingerprinting Explained: What Sites Read About You.

How WebRTC Leaks Expose Your Real IP

When two browsers connect via WebRTC, they exchange a list of "candidates" — possible network paths — through a process called ICE (Interactive Connectivity Establishment). To build that list, the browser sends requests to a STUN server (Session Traversal Utilities for NAT), which responds with your public IP as seen from the outside world.

!An amber network route between two nodes splitting into stray glowing branches that end in fingerprint marks, showing how WebRTC reveals hidden IP paths.

The candidate list includes your local network address (e.g., 192.168.1.10), your public ISP-assigned IP, and sometimes additional addresses from VPN or tunnel interfaces. All of them get collected before the actual connection is established and before you've clicked anything. A script that observes this exchange logs every candidate it sees.

WebRTC doesn't ask permission to gather your network interfaces. By the time you've decided whether to join a call, the candidate list is already built and potentially visible to the page.

Your VPN IP may appear in that list — but so does your real one. Anti-fraud systems use this to detect that two accounts come from the same physical machine, even when each account is assigned a different proxy. The real IP is the thread that connects them. This is one of the seven signals covered in Why Platforms Link Your Accounts — and one of the harder ones to disguise without browser-level controls.

How to Run a WebRTC Leak Test

The most accurate way to test is to use a dedicated browser leak checker with your proxy or VPN already active before you open the page. Three tools that work without registration and give consistent results:

ToolWhat it checksNotes
browserleaks.com/webrtcPublic IP, local IP, media device fingerprintMost detailed; shows all candidate types
ipleak.netIP + WebRTC + DNS in one viewGood for a combined check in a single tab
mullvad.net/checkWebRTC + DNS + HTTPS headersDesigned around VPN verification

The correct test procedure has a specific order:

  1. Enable your proxy or VPN first, confirm it's connected, then open the test URL.
  2. Wait for the page to load fully — some tests need a few seconds to trigger the STUN request.
  3. Locate the WebRTC section and write down every IP it displays.
  4. Compare those IPs against the IP shown as your current connection address at the top of the page.

If all IPs match your proxy, you're not leaking in this session. If you see a second IP — or your server-reflexive candidate differs from your proxy — your real address is exposed. Always retest after restarting the browser, since some WebRTC states cache between cold starts.

What the Test Results Mean

Leak test results group WebRTC findings into candidate types, and they carry very different levels of risk. Understanding which one matters stops you from chasing the wrong problem.

Host candidates show your local network IP — the address your router assigned to your device (typically 192.168.x.x or 10.x.x.x). This is not your public address and doesn't directly reveal your ISP or location. However, it can act as a stable device identifier: if your local IP stays the same across sessions, tracking systems can correlate it with other browser signals to link accounts running from the same machine.

Server-reflexive candidates are the critical data point. This is your public IP as seen by the STUN server — identical to the IP your ISP assigned to your internet connection. If this differs from your proxy or VPN address, your real identity is exposed and that's the leak you need to fix immediately.

Relay candidates show the IP of a TURN server, used as a connection fallback when direct paths fail. These rarely surface in standard leak tests and are not generally useful for tracking.

If a server-reflexive candidate in your test doesn't match your proxy IP, your real address is exposed — regardless of what any other section of the test shows.

When the test shows nothing for server-reflexive candidates (blank field or "Not detected"), either WebRTC is blocked at the browser level or the STUN request couldn't complete. Both outcomes are acceptable. The absence of server-reflexive data means no real IP was shared.

How to Disable WebRTC in Your Browser

There's no universal setting that works across all browsers. Each one requires a different approach, and the options split into two categories: fully disabling WebRTC (which breaks video calls and other WebRTC-dependent apps) or only blocking the IP exposure while keeping the feature alive.

!A brushed-metal toggle switch flipped off, dimming a cyan glow inside frosted glass, representing disabling WebRTC in the browser.

Firefox has the cleanest native path. Type about:config in the address bar, accept the warning, and search for media.peerconnection.enabled. Set it to false to disable WebRTC entirely. If you need WebRTC to keep working — for example, for a browser profile you also use for legitimate calls — set media.peerconnection.ice.default_address_only to true instead. This tells Firefox to share only the IP tied to its default network interface, which will be your proxy IP when one is active.

Chrome and Chromium-based browsers (Edge, Opera) have no built-in toggle for this. Two reliable options exist: install the WebRTC Leak Prevent extension from the Chrome Web Store, which forces WebRTC to route through your proxy interface rather than the machine's real one; or use uBlock Origin and enable "Prevent WebRTC from leaking local IP addresses" in its Privacy settings tab. Both leave WebRTC functional for legitimate use.

Brave handles this by default via its fingerprinting protection layer. Navigate to Settings → Privacy and Security → WebRTC IP Handling Policy and select "Disable Non-Proxied UDP." This prevents leaks without removing WebRTC functionality for connections that go through the proxy.

Safari limits candidate sharing at the API level and doesn't expose a dedicated toggle for leak prevention. Restricting JavaScript per domain is the only workaround, which isn't practical in most workflows.

After any configuration change, run the leak test again before treating the problem as closed.

VPN and Proxies: Why They Don't Always Help

Many users assume that an active VPN makes WebRTC leaks impossible. It doesn't, and the reason is architectural: a VPN routes your internet traffic through a network tunnel at the OS or adapter level. WebRTC, however, creates its own UDP sockets that can establish a path outside that tunnel — especially on Windows, where the OS routing table may direct WebRTC traffic through the default interface rather than the VPN adapter.

This is sometimes called a "WebRTC leak through VPN," and it affects most consumer VPN clients unless the client explicitly advertises WebRTC leak protection and you've independently verified it with a test. The same limitation applies to SOCKS5 and HTTP proxies: a proxy changes where your browser's HTTP requests exit, but it doesn't touch how WebRTC performs its ICE candidate gathering. The STUN request goes directly from your machine's real interface.

A proxy changes where your traffic exits the network. It doesn't change how your browser discovers its own network interfaces.

The fix always comes from the browser side, not from the proxy or VPN side. You need either to disable WebRTC at the browser level, force it to use only the proxied interface via an extension, or use a browser that manages this per profile automatically. For a closer look at which proxy types integrate cleanly with browser-level anonymity tools, see Proxies for Antidetect Browsers: Which Type to Pick.

Antidetect Browsers and WebRTC Leaks

Antidetect browsers solve the WebRTC problem at the profile level, which is fundamentally different from patching a regular browser — and the difference matters at scale.

!A glossy black glass mask perfectly shielding a frosted browser panel with a warm amber rim of light, symbolizing antidetect browsers containing WebRTC leaks.

In a standard browser, any extension you install applies globally to every tab and every account session. If you manage 20 accounts with separate identities, a WebRTC-blocking extension affects all of them identically. It can't give each account a distinct WebRTC fingerprint that matches its assigned proxy. More critically, if the extension gets updated and its settings reset, every account is exposed simultaneously.

An antidetect browser assigns a separate, isolated browser context to each profile. Each profile gets its own WebRTC configuration: match the profile's proxy IP, disable the API entirely, or use a spoofed value. Profile A shows WebRTC IP = proxy A. Profile B shows WebRTC IP = proxy B. No profile leaks your real machine IP, because each one is sandboxed from the others and from the host system.

Each profile operates as if it were running on a different device. The real machine's IP never enters the picture, because the profile never uses the real machine's network interface for WebRTC.

This isolation is one of the core reasons multi-accounters use antidetect browsers for setups that avoid bans. WebRTC is one of the signals platforms use to link accounts — if two profiles share a real IP through WebRTC candidate data, the platform can connect them even when every other signal differs. You can verify what your profiles currently expose using the tools described here.

Common Mistakes That Leave WebRTC Open

Most WebRTC leaks go undetected until an account is flagged, banned, or linked to another. The patterns that lead there are consistent.

The most common mistake is relying on the VPN alone. A VPN client running in the system tray does not mean WebRTC is protected. Unless the VPN explicitly advertises WebRTC leak prevention — and you've confirmed it with an actual test — assume it doesn't handle this. Dozens of popular VPN services let WebRTC bypass their tunnel without any indication to the user.

Testing once and assuming it's permanent is the second failure. Browser updates regularly touch extension permissions, change how WebRTC handles candidates, or reset settings to defaults. A profile that passed the test when you created it may have been exposed by a silent update weeks later. Testing needs to be a recurring step, not a one-time checkbox.

Using browser extensions for multi-account setups introduces a third problem. Extensions are global, hard to audit across many profiles, and prone to silently reverting on update. A single misconfigured extension can expose every account you manage simultaneously. Profile-level controls inside an antidetect browser are more reliable precisely because each profile's settings are independent.

Switching proxies without retesting is another gap. When a proxy rotates or you assign a new one, WebRTC may briefly resolve to the old interface or the machine's real IP. Test immediately after every proxy change, before any account activity on that session.

Finally: treating all candidate types equally wastes time. A host candidate showing 192.168.x.x is worth addressing, but it's not your public IP. A server-reflexive candidate showing your real ISP IP is the actual emergency. Prioritize accordingly.

Checklist Before You Go Live

Before running any traffic through a new profile or setup, confirm each of these:

  • Run a WebRTC leak test at browserleaks.com/webrtc — the server-reflexive IP must match your proxy, or show nothing at all.
  • Check DNS leaks in the same session — a WebRTC-clean profile can still expose your real resolver, which is a separate and equally traceable signal.
  • Confirm that any WebRTC extension is active and not paused, disabled, or set to "default" for the current site.
  • Enable your proxy or VPN first, then open the leak test — running the test without the proxy gives a false clean baseline.
  • In antidetect browser profiles, check that the WebRTC setting is explicitly set to "match proxy IP" or "disabled" — never leave it at "real" unless you've assigned a specific proxy and verified the result.
  • Retest after every browser update that touches the profile, its extensions, or the antidetect browser's core.
  • For setups with many profiles, include the leak test as a step in your profile creation workflow — retroactively auditing dozens of profiles is slow and error-prone.

For a complete step-by-step setup walkthrough, see Antidetect Browser for Windows: Setup Without Mistakes. If you're still comparing tools and want to know how different antidetect browsers handle WebRTC at the profile level, Best Antidetect Browsers in 2026 covers the main options in detail.

If you need profiles that pass WebRTC leak tests reliably from the first session, consider trying an antidetect browser with per-profile WebRTC controls — most offer a free trial period before any commitment.

Frequently Asked Questions

Can WebRTC leak my IP even if my VPN is active?

Yes. WebRTC creates its own UDP sockets that can bypass the VPN tunnel, especially on Windows. Most consumer VPN clients don't handle this unless they explicitly advertise WebRTC leak protection. Verify with a leak test while the VPN is connected — don't assume protection you haven't confirmed.

Does disabling WebRTC break anything in my browser?

It disables in-browser video calls (Google Meet, Zoom in browser, browser-based voice chat) and any other app that relies on the WebRTC API. For profiles dedicated to account management or traffic arbitrage where you don't need video calls, fully disabling it is the safest configuration. For general-purpose use, the Firefox ice.default_address_only setting or a Chrome extension gives you leak protection without losing the feature.

Is a local IP (192.168.x.x) in the test results a serious problem?

It's not your public IP, so it doesn't directly reveal your ISP or location. But a consistent local IP can act as a device fingerprint component, especially when combined with other browser signals. Suppress host candidates when you can, but treat a server-reflexive leak (real public IP) as a higher priority.

Do antidetect browsers automatically fix WebRTC leaks without any setup?

They give you the controls, but correct configuration is required. Most antidetect browsers default to using the machine's real WebRTC behavior until you assign a proxy and explicitly set the WebRTC mode to match that proxy. Check each profile's fingerprint settings — don't assume protection without verifying.

How often should I retest for WebRTC leaks?

Retest after every browser update, every proxy switch, every new profile creation, and after installing or updating extensions. For active campaigns, a weekly spot-check on a sample of live profiles is a practical minimum.

Sources

Read next

Need advice?

Tell us what you're building and we'll help you pick the right antidetect browser and proxy setup.

Get in touch