WebRTC 泄露真实 IP 的原理与防护:开了代理为什么还是被看到真 IP
网络安全|
WebRTC(Web Real-Time Communication)是浏览器原生的实时音视频通信能力,网页版视频会议、语音通话、浏览器内的文件共享与联机游戏都依赖它。它有个很少被提起的副作用:为了建立点对点连接,浏览器需要先知道自己的真实地址,而这个探测过程可能绕过你正在使用的代理通道。
为什么代理挡不住 WebRTC
正常流程是浏览器向 STUN 服务器发一个探测请求,服务器把「它看到的你的地址」回给你,浏览器据此生成连接候选。这条链路独立于网页的 HTTP 流量,所以只接管了网页流量的代理,管不到这条探测。
- 本地 IP 泄露:暴露形如 192.168.x.x、10.x.x.x 的内网地址,风险较低,仅能据此推断局域网结构
- 公网 IP 泄露:暴露运营商分配给你的真实公网地址,风险高,等于代理白开
- 无泄露:浏览器返回的地址与出口 IP 一致,防护是有效的
怎么自查
- 在线检测:用任意 IP 检测站点,对比它显示的「公网 IP」与「浏览器探测到的 IP」是否一致
- 控制台自查:在浏览器控制台创建一个不配置 STUN 的 RTCPeerConnection,打印 ICE 候选里的地址即可看到探测结果
- 扩展辅助:部分广告与隐私拦截扩展会顺带提示或阻断这类探测
四种防护办法(从彻底到温和)
- 直接禁用 WebRTC:Firefox 在 about:config 把 media.peerconnection.enabled 设为 false 即可;Chromium 系浏览器没有原生开关,需要借助扩展
- 让客户端处理:部分网络客户端内置了 WebRTC 阻断,开启后生效
- 换用隐私更强的浏览器:Tor Browser 默认完全禁用,Brave 默认阻断
- 网络层拦截:在路由器防火墙阻断 STUN 常用端口 3478(UDP)与 5349(TLS)
代价与取舍
- 禁用后,网页版视频会议、网页语音通话和部分联机游戏会受影响
- 建议只在需要匿名时关闭,日常办公保持开启
- 每次更换或升级代理客户端后,都建议重新测一次
常见疑问
- 比 DNS 泄露更严重吗:是。DNS 泄露暴露的是你访问了哪些域名,WebRTC 泄露的是能定位到你的真实 IP
- 用了代理就高枕无忧吗:不是。很多客户端默认不处理 WebRTC,需要单独配置或配合扩展






