WebRTC 泄露检测

看看浏览器在网页连接之外,还暴露了哪些公网 IP。结果来自 6 个独立来源。

检测中…

WebRTC 泄露检测

检测中…
WebRTC 暴露的地址
检测中…
NAT 类型(推断)
检测中…

当前网络网页请求看到的公网 IP

当前公网 IPv4
检测中…
当前公网 IPv6
检测中…

WebRTC 检测来源6 个独立 STUN 来源

来源公网 IP协议网络对照
谷歌检测中…
Cloudflare检测中…
Twilio检测中…
FreeSWITCH检测中…
Nextcloud检测中…
BlackBerry检测中…

WebRTC 泄露检测怎么测

  1. 记录当前公网地址

    公共回显服务返回您当前的 IPv4、IPv6,作为比较基准。

  2. 向 6 个 STUN 来源收集地址

    WebRTC 建立连接前,STUN 服务从外部观察连接,返回服务器反射地址,也就是浏览器可能暴露的公网 IP。

  3. IPv4 与 IPv6 分别比较

    网页请求和 WebRTC 可以经过不同路径。VPN 或代理只接管网页流量、WebRTC 仍从其他接口出站时,就会出现额外公网地址。

结果怎么看

  • 当前网络 IPWebRTC 地址与当前同族公网地址一致,属于当前出口。
  • 额外公网 IP没有命中当前同族地址,页面直接报告泄露。
  • 锥形 NAT同一本地端口对不同服务器保持同一映射。
  • 对称 NAT每个目标得到不同的映射端口,点对点连接更难直接建立。
  • 无法判断应答来源不足,或存在多条网络路径。

常见问题

什么是 WebRTC?

WebRTC 是浏览器用于实时音视频和点对点数据传输的通信能力。建立连接前,浏览器需要找到双方能够互相访问的网络地址;STUN 服务会从外部观察连接,并返回一个服务器反射地址,也就是结果中显示的公网 IP。

为什么网页请求和 WebRTC 看到的地址不同?

普通网页请求和 WebRTC 连接可以经过不同的网络路径。VPN 或代理只接管网页流量、WebRTC 仍从其他接口出站时,网站就可能看到一个不属于当前预期出口的公网地址。检测会把这种额外地址找出来。

为什么同时检测到 IPv4 和 IPv6 仍然没有泄露?

双栈网络本来就可以同时使用一个公网 IPv4 和一个公网 IPv6。只要 WebRTC 地址分别匹配当前同族公网地址,它们都是当前网络的正常出口。

什么情况下会直接报告 WebRTC IP 泄露?

WebRTC 公网 IP 没有命中当前同族地址时,页面会把它列为额外出口并报告泄露。

检测到 WebRTC 泄露后应该改哪里?

在代理或 VPN 客户端中开启 WebRTC 防护,或改用接管全部流量的模式(如 TUN 或全局模式),让 WebRTC 也经过同一出口;也可以在浏览器设置或扩展中把 WebRTC 限制为只走代理。修改后重新检测,额外地址应当消失。

为什么 6 个来源都没有应答?

最常见的原因是代理软件工作在 TUN 或 fake-ip 模式:STUN 服务器的域名被解析成 198.18.0.0/15 内的假地址,浏览器报告地址解析失败;或者代理与防火墙没有放行 UDP,STUN 请求得不到应答。这时页面显示“未取得公网地址”,明细逐个写出原因。网站要通过 WebRTC 取得您的公网 IP,同样要经过 STUN;STUN 不通,网站也拿不到,所以这种情况不是泄露。改用全部放行 UDP 的网络或模式后重新检测,才能判断 WebRTC 是否会暴露额外地址。

NAT 类型是怎么推断的?

页面在检测 6 个独立来源的同时另开一个连接,让同一个本地端口同时询问前 3 个来源(谷歌、Cloudflare、Twilio)。同一公网地址只映射出一个端口,且这 3 个来源中至少两个在独立检测中应答,推断为锥形 NAT;映射出多个端口,推断为对称 NAT;证据不足时显示无法判断。设备同时连着多条网络时,多个端口不一定来自对称 NAT,此时也显示无法判断。

开始查询 IP

查看位置、网络归属、网络属性与多源风险结果。