译者按:本文原文:medium.com/nextdns/nextdns-added-cname-uncloaking-support-becomes-the-first-cross-platform-solution-to-the-problem-e3f437f84342,作者:Olivier Poitrey。原文著作权归原作者所有,译者未经原作者授权译制,翻译仅供参考。对于用户擅自使用未授权的译文造成的法律风险,译者概不负责。
译文格式与原文保持一致,标「译注」的注释为译者所加。
本文采用 CC BY-SA 4.0 许可协议授权。
NextDNS 自豪地宣布,除了域名查询之外,您的所有封锁列表现在都会被应用到 CNAME 查询中。
正如我们在 关于这个问题的深入文章 中所解释的,基于 DNS 的广告拦截器非常适合检测和阻止这种新型的跟踪器。作为一个 DNS 递归解析器,我们已经处理了这些 CNAME 记录,这使得在解析过程中执行额外的过滤变得很容易。
解决方法很简单,让我们以 https://eule1.pmu.fr/…
为例:
我们知道 *.eulerian.net
出现在大多数的追踪器屏蔽列表中,但 eul1.pmu.fr
和 *.pmu.fr
显然不存在于其中。传统的广告拦截器只对 URL 中可见的域名进行过滤,但因为我们是对域名执行递归解析的一方,所以我们可以看到所有 CNAME 查询结果,并对 eul1.pmu.fr
和 pmu.eulerian.net
应用过滤逻辑。
跟踪公司的下一步可能是使用 NS 记录而不是 CNAME 记录。但是我们已经为此做好了准备,并将实施同类型的解决方案。
NextDNS 是第一个为这个问题提供完整和明确解决方案的 DNS 广告拦截器。 AdGuard 决定 采用不同的方法,通过使用 DNS 检测这些域名来构建一个巨大的阻止列表。 我们不相信这种方法,因为随着越来越多的网站开始实施这种方法,这种方法将无法扩展。如果网站决定定期更换这些追踪器域名,它也可能会滞后。
在 Pi-Hole® 论坛上也有一个关于像我们一样实现 CNAME 阻断的 讨论,但遗憾的是,正如 一位开发人员所解释的那样,他们目前的设计阻止他们在短期内实现此功能。
对于基于浏览器 / 客户端的广告拦截解决方案,即使有可能有方案,这个问题也会很难处理。最好的情况是执行一个重复的 DNS 查询来访问 CNAME 记录,但这既增加了延迟,又浪费了电池电量,且目前只能在 Firefox 的桌面版本中使用。建立所有这些第一方域名的列表是另一种选择,但如前所述,这将扩大屏蔽列表的规模,而这对大多数浏览器的屏蔽规则 API 限制来说已经太大了,且如果网站定期更改这些域名,这个列表又可能会滞后。
在 HackerNews 上讨论这篇文章。
您可以在 https://nextdns.io 免费试用(不需要注册)。
评论加载中