DNS传播检测

Changed a DNS record? Compare live answers from six major public resolvers to see whether your update has propagated.

什么是DNS传播?

当您更改 DNS 记录时,例如把域名指向新的网站主机,这项更改在您的权威名称服务器上几乎立即生效。但是,世界各地的递归解析器(您的 ISP、Google、Cloudflare 等的解析器)会保留旧答案的缓存副本,直到其 TTL(生存时间)到期。“传播”指的就是这些缓存过期并获取新值所需的时间。通常需要几分钟到旧记录的 TTL 那么久;当名称服务器本身发生变化时,最长可达 48 小时,因为顶级域(TLD)的委派记录 TTL 很长。

这个检测工具如何工作?

我们在同一时刻,从六个大型公共解析器查询同一条记录:Cloudflare(1.1.1.1)、Google Public DNS(8.8.8.8)、AdGuard DNS、NextDNS、DNS.SB 和 AliDNS。然后我们会标出哪些与多数答案一致。这些服务运行着遍布多个地点的 anycast 网络,因此能反映大部分互联网用户看到的结果。如果它们都与新值一致,说明您的更改已经实际传播完成。

如何加快DNS传播?

  1. 提前降低 TTL。在计划更改的前一天,把记录的 TTL 降到 300 秒。旧 TTL 过去之后,所有缓存都会在您更改后五分钟内刷新。
  2. 进行更改,用DNS查询验证,然后观察此页面。
  3. 清除本地缓存。在 Windows 上运行 ipconfig /flushdns;在 macOS 上运行 sudo dscacheutil -flushcache; sudo killall -HUP mDNSResponder。浏览器也会短暂缓存 DNS。
  4. 一切稳定后,再把 TTL 调高,以减少查询负载。

想了解更多,请阅读什么是DNS?它是如何工作的?

常见问题

为什么DNS传播最长需要48小时?

在域名注册商处更改名称服务器(NS)后,会发布到顶级域(TLD)区域中,那里的委派记录 TTL 通常是一两天。普通记录的更改通常会快得多。

有一个解析器仍然显示旧IP,是出问题了吗?

多半不是。该解析器节点仍保留着缓存副本。请查看 TTL 列:它显示距离刷新还剩多少秒。

可以强制解析器更新吗?

有些可以:Cloudflare 和 Google 都为其解析器提供了公开的缓存清除页面。

更新于

已复制到剪贴板