Note: This checks if RTCPeerConnection is available in your browser.
WebRTC (Web Real-Time Communication) is an open-source project that enables real-time voice, video, and data sharing between browsers and mobile applications via simple APIs. Key characteristics:
WebRTC was initially developed by Google in 2011 and later became a W3C and IETF standard. Before WebRTC, real-time communication in browsers required plugins like Flash or proprietary software like Skype.
Manages peer-to-peer audio/video connections
Accesses camera and microphone (now part of MediaDevices API)
Enables peer-to-peer data transfer (files, messages, game state)
RTCPeerConnection is available (all modern browsers)
Very old browsers or WebRTC disabled by user/organization
function detectWebRTC() {
return typeof RTCPeerConnection !== 'undefined' ||
typeof webkitRTCPeerConnection !== 'undefined' ||
typeof mozRTCPeerConnection !== 'undefined';
}
| Browser | WebRTC Support | Notes |
|---|---|---|
| Chrome | Full support | Excellent, most complete implementation |
| Firefox | Full support | Good support, some codec differences |
| Safari | Full support (iOS 11+) | Later to adopt, some limitations remain |
| Edge | Full support | Same as Chrome (Chromium-based) |
| Internet Explorer | No support | Never supported WebRTC |
| Mobile browsers | Generally good | May have camera/microphone permission prompts |
WebRTC can expose your real IP address even when using a VPN, and requires camera/microphone permissions which pose privacy risks.
WebRTC uses STUN (Session Traversal Utilities for NAT) servers to discover your local and public IP addresses for peer-to-peer connections. This happens even if you're using a VPN.
When a website creates an RTCPeerConnection, WebRTC automatically contacts STUN servers to discover your IP. This reveals:
If you use a VPN to hide your IP address, WebRTC can leak your real IP to websites without your knowledge. This is one of the most significant privacy issues with WebRTC.
WebRTC allows websites to see how many cameras and microphones you have, creating a fingerprinting vector.
Your local network structure (router configuration, network interfaces) can be partially revealed.
The list of network interfaces and their configurations can be unique to your setup.
No native setting. Use extensions like "WebRTC Leak Prevent" or "uBlock Origin" (with WebRTC blocking enabled)
1. Type about:config in address bar
2. Search for media.peerconnection.enabled
3. Set to false (disables WebRTC completely)
Or for IP leak prevention only:
Set media.peerconnection.ice.default_address_only to true
Automatically restricts WebRTC to show only VPN IP when VPN is active (no manual setting needed)
Some VPNs include WebRTC leak protection:
Visit browserleaks.com/webrtc or ipleak.net to check if your real IP is leaking through WebRTC.
Benefits:
Drawbacks: