跳到正文
赞助 AccsZone — ready-made accounts, instant delivery

术语表

mDNS

mDNS 是一种本地网络名称协议。浏览器用 xxxx.local 之类的 mDNS 名称在 WebRTC 候选地址中隐藏您的私有 IP。

什么是 mDNS

组播 DNS 让同一本地网络上的设备无需 DNS 服务器就能按名称找到彼此。打印机宣告自己为 printer.local,笔记本为 laptop.local,查询发往网络上每台设备都监听的组播地址。它是 Apple Bonjour 以及大多数“发现网络上的设备”功能背后的技术。

为什么它出现在浏览器测试中

2019 年之前,WebRTC 候选地址收集会把您的局域网私有地址(例如 192.168.1.20)暴露给任何网页。该地址从互联网不可路由,但它在家庭或办公室内是持久标识符,也是网络布局的线索。浏览器现在隐藏它:候选地址中不再是私有地址,而是随机生成的 mDNS 主机名,如 3f2a9c1e-7b4d-4e1a-9f0c-2d5b8a6e4c1f.local。同一网络上的对端可以用 mDNS 解析该名称;互联网上的网页不能,私有地址因此保持隐藏。

随机名称按来源和会话重新生成,所以它也不能用作跟踪标识符。

为什么重要

如果 WebRTC 泄露检测显示的是 .local 名称而非 192.168.x.x 或 10.x.x.x 地址,那是现代的预期行为,不是泄露。仍然重要的是通过 STUN 获得的公网候选地址:如果它暴露了与代理不同的地址,无论本地候选地址什么样,您都有真正的 WebRTC 泄露。

旧浏览器、某些嵌入式浏览器引擎以及关闭了 mDNS 混淆的浏览器仍会暴露原始私有地址。看到它说明浏览器过时或配置异常,这本身就是指纹信号。

如何检查

运行 WebRTC 泄露检测。本地候选地址与公网候选地址分开列出,mDNS 名称会被标明。浏览器指纹页面会注明 WebRTC 是否启用。

常见误解

候选地址中的 mDNS 名称不是地址,网站无法查询它。在那里看到它是安全的。要关注的是公网地址。

相关工具