Domain IP Lookup

DNS TTL 查询:一次修改要多久才生效?

TTL(生存时间)是 DNS 答案在解析器重新询问之前可以被缓存的秒数,这也是为什么 DNS 修改对有些人几分钟就生效,对另一些人却要一天。请在下方查询域名 A 和 AAAA 记录的 TTL,动手修改之前再看看下面的操作计划。

试试:

您在这里看到的 TTL 是一个倒计时

TTL 由管理域名 DNS 的人附加在每条记录上。解析器获取记录后会保存一份副本,并对 TTL 进行倒数。本工具询问的是公共的缓存解析器,所以这个数字是那份副本的剩余时间。它可能比所有者设置的值更小,在缓存刷新后又会回到完整的值。

想估算配置的值,可以间隔几秒钟查询两次。如果数字在下降,说明您看到的就是倒计时,而您见到过的最大值最接近当初的设置。

常见的 TTL 值及适用场景

TTL秒数典型用途
1 分钟60预计会临时变更的记录,例如故障切换地址
5 分钟300准备迁移或切换时的理想设置
1 小时3600普通记录常见的默认值
4 小时14400稳定但偶尔会变更的记录
1 天86400几乎从不变更的记录,例如长期使用的邮件服务器

不让访问者受影响的变更计划

  • 查询您打算修改的记录当前的 TTL。
  • 在变更前一天或更早,把 TTL 降到 300 秒。至少等待与旧 TTL 一样长的时间,让所有缓存都换成这个较短的值。
  • 进行变更。几分钟之内,大多数解析器就会返回新的答案。
  • 一切正常后,再把 TTL 调回去。TTL 过短意味着更多的 DNS 流量,以及稍慢的首次访问。

TTL 过高或过低会出什么问题

  • 过高:错误或过时的地址会在 TTL 规定的时间内一直可见,而且切换到备用服务器的速度很慢,因为访问者会继续使用旧地址。
  • 过低:您的 DNS 服务商要应答多得多的查询,这可能产生费用,还会给来自每个网络的首次访问增加少许延迟。
  • 有些解析器会设置自己的下限或上限,并忽略超出范围的值,所以极低的 TTL 并不总是会被遵守。
  • 通过 CDN 或负载均衡器提供的记录常常有意使用较短的 TTL,因为服务商会频繁更换这些记录背后的地址。

常见问题

指南