什么是WebRTC?
WebRTC是让浏览器无需插件就能进行视频通话和屏幕共享的技术。为了让两个浏览器直接连接,它必须发现它们的网络地址——而任何网页都可以触发这一发现过程,这就是它成为网站在VPN之后看到您真实IP地址的一种途径的原因。
本文内容
WebRTC的用途
浏览器之间的实时音频、视频和数据:会议服务、浏览器内通话、屏幕共享、部分文件传输和游戏网站。它内置于每个浏览器,不需要插件,并对它承载的一切进行加密。为了让连接穿过家用路由器,浏览器会收集ICE候选地址——它的本地地址,以及通过STUN服务器从外部看到的公网地址——然后双方交换这些地址。
立即测试
检测中正在针对我们自己的测试服务器运行。不保存任何内容。
打开WebRTC泄露测试IP泄露问题
泄露的正是候选地址的收集过程。网页可以创建一个连接对象、触发收集并读取候选地址,全程没有权限提示,也不需要真的进行任何通话。STUN请求会通过操作系统选择的任意路径发出,这条路径可能是物理接口而不是VPN隧道——而代理根本不承载它,因为STUN使用UDP。结果就是一个不属于VPN的公网地址,对网页可见。本地地址过去也以同样的方式泄露;现代浏览器现在用随机的mDNS名称替代它们。WebRTC泄露测试针对我们自己的STUN服务器执行的正是这样的收集,并把结果与网站看到的地址进行比较。
如何禁用或限制WebRTC
优先选择限制而不是禁用,这样通话仍能正常进行。Chrome、Edge和Brave支持WebRTC IP处理策略;把它设为禁用非代理UDP(Brave在其设置中,Chrome和Edge通过扩展或企业策略),WebRTC就只会使用默认路由——连接VPN时即VPN。Firefox:在about:config中把media.peerconnection.ice.default_address_only设为true,要彻底禁用WebRTC则把media.peerconnection.enabled设为false。Safari没有开关,但它会隐藏本地地址,并且只有在网页真正建立连接时才收集公网候选地址。许多VPN应用和扩展会替您应用同样的策略。无论改了什么,都请重新运行测试,确认状态为无泄露或已阻止。
常见问题
WebRTC有安全风险吗?
协议本身是安全的;它的媒体和数据都经过加密。隐私方面的顾虑在于无需提示的地址发现,这在您依赖VPN或代理隐藏地址时才构成问题。
如何禁用WebRTC?
Firefox:在about:config中把media.peerconnection.enabled设为false。Chrome、Edge、Brave:把IP处理策略设为禁用非代理UDP(Brave在“设置 › 隐私”中;Chrome/Edge通过扩展)。Safari:没有开关;iOS的锁定模式会禁用它。
阻止WebRTC好吗?
如果您使用VPN或代理,限制它(只使用默认路由)是好事,而且没有任何代价。彻底阻止它会让基于浏览器的通话失效;只有在您从不使用这类通话时才这样做。
WebRTC扩展是做什么的?
它设置浏览器的IP处理策略,让候选地址只通过默认路由收集,或者完全不收集,有时还会剔除本地地址。它无法加密或转发流量。
检测到WebRTC IP泄露意味着什么?
网站可以读取一个不属于您VPN的公网地址——通常是您的家庭或移动地址——并记录或定位它。我们的测试不会把任何内容发送到任何地方;请采用其中一种修复方法,然后重新测试。