推荐的DNS TTL


Answers:


20

我倾向于将其保留为Slicehost的默认值86,400秒(1天)。当我有待执行的动作并等待一两天时,我将其降至10分钟。

编辑:这些天(2016年),我倾向于保持低位-〜5分钟。


完全不同!如果答案中包含更改为低得多的TTL的原因,这将很有用。
安东尼G-莫妮卡的正义

3
@AnthonyGeoghegan现代服务器可以处理更频繁的请求,并且由于我使用的是高度可靠的名称服务器(AWS Route 53),所以我希望能够灵活地立即更改DNS。
ceejayoz

12

该标准(很久以前于1987年制定)建议将86,400秒(1天)作为最小默认TTL。

将TTL设置为适当的值很重要。TTL是解析器在再次询问服务器之前将使用从服务器获取的数据的时间(以秒为单位)。如果将该值设置得太低,服务器将被加载很多重复请求。如果将其设置得太高,那么您更改的信息将不会在合理的时间内分配。如果将TTL字段保留为空白,则默认为该区域的SOA记录中指定的值。

大多数主机信息在很长一段时间内变化不大。设置TTL的一种好方法是将它们设置为较高的值,如果您知道即将更改,则将其降低。您可以将大多数TTL设置为一天(86400)至一周(604800)之间的任何时间。然后,如果您知道某些数据在不久的将来会发生变化,请将该RR的TTL设置为一个较低的值(一小时到一天),直到发生更改为止,然后将其恢复为先前的值。

另外,所有具有相同名称,类别和类型的RR都应具有相同的TTL值。

请参阅RFC 1033:http//tools.ietf.org/html/rfc1033

RFC 1912(从1996年开始)建议,三天可能更适合SOA记录。

http://www.ietf.org/rfc/rfc1912.txt


4
我以为来自低TTL的DNS流量在1987年和1996年比在2011/2012年要严重得多。
ceejayoz

6
您引用的两个标准都仅引用SOA记录的“最小”字段,无论如何,该字段不再用于确定默认或最小TTL,正如编写这些标准时所打算的那样。DNS最佳做法是在27和18年前编写的,当时DNS(实际上是互联网)是另一回事。如今,对于主要的A / AAAA记录来说,300秒(5分钟)是相当普遍的TTL,尽管仅在需要快速故障转移时才有用,否则6小时以上更为合适。NS记录以及NS地址的A / AAAA记录通常为1天或更长时间。
thomasrutter 2014年

6
关于这一点,我来晚了,但是应该注意,将这两个RFC中的任何一个称为“标准”都是不合适的。(RFC 1796)我要注意这一点,以便使今天的读者不要误解本问答。
安德鲁·B

7

我已经注意到,具有较短的TTL以便在紧急情况下(尤其是在HA DNS环境中)能够更快地响应的情况正在变得越来越流行。


1
是。CloudFlare将其所有客户的TTL默认设置为300秒(5分钟),这简直太短了,但显然他们看到了好处。
西蒙东

3

我只是将其保留为您的主机设置的默认值,除非出于某种原因它太高或太低。然后,如果您确实想将其降低到20分钟左右,然后再计划移动。


2

4小时就可以了,可以提供一个可以接受的平衡。这就是我在大多数区域中使用的。


4
那可能太短了。
dmourati 2011年

5
@dmourati:那是2011年。对于绝大多数的小型(即1000个以下区域)DNS服务器以及任何和所有客户端,额外的CPU负载和带宽需求是绝对可以忽略的。当然,如果您的DNS服务器宕机超过4个小时,那么您就是SOL,但是如果这很重要,并且您无法提供可靠的DNS服务,那么您根本就无法在如此摇摇欲坠的基础上托管DNS服务。 ..
MihaiLimbăşan2011年

3
当用户提出在RFC中直接回答的问题时,无论其年份是多少,您都将他们定向到RFC。
dmourati 2011年

@dmourati这是RFC中规定的吗?
JOO亚当

是的,请参阅上面的答案。
dmourati


2

(注意:此帖子适用于个人A / AAAA记录上的TTL,其他一些记录类型可以具有更长的TTL,因为它们不能以相同的方式表示单个故障点)。

您确实需要根据灾难恢复计划来考虑这一点。这与您打算何时移动站点无关(对于有意移动,您可以在移动前减少TTL)。这是关于您的主机消失在互联网上或因违反TOS令您被踢出或因他们无法处理DDOS而被踢出的情况。

如果您在那种情况下不担心网站停顿一天左右,请继续进行操作,并将TTL保留为默认一天。如果您有多个供应商的多个位置中的PI地址空间和BGP传输,并打算在BGP级别上进行灾难恢复,则继续进行,并将其保留为默认值一天。另一方面,如果您将DNS用作将业务量转移到故障转移站点的机制,则您希望使用更短的TTL,5分钟是很常见的值。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.