WebRTC为什么泄露我的真实IP?

什么是WebRTC

WebRTC,全称 Web Real-Time Communication,翻译过来就是网络实时通信。WebRTC允许浏览器之间实时通信,无需借助任何插件或第三方应用程序就可以实现。这项技术应用的领域非常广泛:

  • 视频通话和音频通话:WebRTC可用于创建浏览器内的视频通话和音频通话应用程序,这对于远程工作、在线会议和在线医疗服务非常有用。
  • 文件共享:您可以使用WebRTC在浏览器之间共享文件,无需通过电子邮件或其他文件传输服务。
  • 实时聊天:WebRTC可用于创建实时聊天应用程序,使用户能够通过文字、声音和视频进行交流。
  • 在线协作:许多协作工具使用WebRTC来实现实时协作,如共享屏幕、白板绘图和协同编辑。
  • 在线游戏:在线游戏可以使用WebRTC来实现多人游戏和语音聊天功能。
  • 远程桌面访问:WebRTC可以用于远程桌面应用,允许用户访问和控制其他计算机。
  • 流媒体:WebRTC支持实时流媒体传输,可用于创建视频直播和流媒体服务。

 

Facebook Messenger、WhatsApp、Discord、Google Meeting、Zoom都使用了这项技术。

 

 

WebRTC是如何泄露IP的

WebRTC 技术允许浏览器直接在彼此之间传输音频和视频流,在大多数情况下无需中间的媒体服务器。但有时候因为NAT与防火墙的原因,就需要借助其他媒体服务器去获取真实的IP地址,已完成双方之间的通信。

NAT是什么

当您连接到互联网时,您的设备通常会被赋予一个本地IP地址,这个IP地址只在您的局域网中有效。然而,您可能需要与互联网上的其他计算机通信,这时就需要将您的本地IP地址映射到一个全局唯一的公共IP地址。这种映射的过程就是NAT(网络地址转换)。

想象一下,您的家庭是一个小村庄,每个人都有自己的门牌号(本地IP地址),但整个村庄只有一个邮政编码(公共IP地址)。当您寄信给外面的人时,信件上需要写明村庄的邮政编码,这样邮递员才知道信件要送到哪里。NAT就像邮局,负责把您的信(数据包)从村庄(局域网)送到外面的地方(互联网)。

所以,NAT允许多台设备共享同一个公共IP地址,并且负责将来自这些设备的数据包发送到正确的地方。这样,您的家庭中的多台设备可以通过一个公共IP地址访问互联网,就像整个小村庄共享一个邮政编码一样。

 

WebRTC为了直接建立浏览器之间的点对点连接进行通信,需要获取用户的真实IP地址。WebRTC是通过ICE架构来获取用户的真实IP地址,ICE包括两个主要组件:STUN(Session Traversal Utilities for NAT)和TURN(Traversal Using Relays around NAT)。

  • STUN服务器:STUN服务器用于获取用户的公共IP地址。浏览器通过与STUN服务器通信,了解自己的公共IP地址和端口。这是因为许多用户位于NAT(网络地址转换)后面,NAT会将用户的内部IP地址映射到公共IP地址。STUN服务器帮助浏览器发现自己的公共IP地址。
  • TURN服务器:有时,STUN服务器无法直接获得公共IP地址,因为某些网络配置可能会阻止它。在这种情况下,浏览器可以使用TURN服务器,它充当中继,帮助浏览器之间建立连接,绕过NAT。但是,TURN服务器通常会增加通信的延迟,因此STUN更常见,因为它更高效。

什么是WebRTC服务器

如果以上细节还不明白也没关系,您只需要了解:WebRTC通过STUN或TURN服务器获取用户的真实IP地址,以建立点对点连接。这是WebRTC实时通信的一部分,但也引发了隐私和安全方面的担忧,即您的真实IP地址会被泄露。

 

如何检查WebRTC泄露

您可以使用浏览器,并在连接VPN的情况下访问 BrowserScan,在IP地址部分可以看到通过代理获取的IP地址和通过WebRTC获取的真实IP地址。

一些VPN或代理可能没有解决WebRTC泄露问题,因此仍然可能存在隐私和安全方面的问题。

 

如何阻止WebRTC泄露IP

  • 完全禁用WebRTC: 在大多数现代浏览器中,你可以通过设置来禁用或限制WebRTC功能。通常,你可以在浏览器的设置或隐私选项中找到相关选项。禁用WebRTC是最简单的方法之一。
  • 浏览器扩展或插件:有一些浏览器扩展或插件专门设计用于保护用户的隐私,可以阻止WebRTC泄露。例如,WebRTC Network Limiter、WebRTC Control、WebRTC Leak Prevent等插件可以帮助你更好地控制WebRTC。
  • 选择更好的代理服务器或VPN:从上面我们可以知道,有些代理服务器或者VPN并不能阻止WebRTC的泄露,所以,再挑选这类服务的时候,请务必使用BrowserScan检查是否有WebRTC泄露的情况。
  • 使用指纹浏览器(最佳):指纹浏览器在保护隐私方面是绝佳利器,市面上几乎所有的指纹浏览器都支持对WebRTC功能进行修改。这可以让第三方网站完全获取不到您的IP地址,即使能获取IP地址也是代理IP地址,并不会是真正的IP地址。有时候,替换比禁用更加拟真,这回让网站认为您是一个普通的用户。

 

如果您想了解更多的浏览器指纹知识,可以阅读我们为您准备的指纹系列文章:

  1. 浏览器指纹入门指南
  2. IP地址
  3. UserAgent
  4. WebRTC
  5. Canvas指纹
  6. Do Not Track 不跟踪
  7. WebGL指纹
  8. 媒体设备指纹&音频指纹
  9. Client Rects指纹&字体指纹
  10. 地理位置
  11. 语言
  12. 端口扫描
  13. 自动化检测
上一个
Canvas指纹:一种隐秘且精准的跟踪技术
下一个
浏览器指纹入门指南
最近修改: 2024-07-01Powered by