域名|域名解析中的TTL值设置多少合适?

域名|域名解析中的TTL值设置多少合适?

域名解析是实现域名指向IP的重要机制 , 而TTL值的设置对于域名解析记录结果的准确性和安全性意义明显 。 那么在域名解析操作中 , TTL值设置多少合适呢?接下来 , 中科三方针对这个问题做下简单介绍 。
【域名|域名解析中的TTL值设置多少合适?】
一、什么是TTL值?TTL的全称是“Time To Live(生存时间)” , 表示的是DNS记录在DNS服务器上的缓存时间 。 TTL值与域名解析中DNS缓存机制有着直接关系 。
标准的域名解析过程是客户端发起解析请求 , 首先请求递归服务器 , 递归服务器代替客户端向根服务器、顶级服务器和权威服务器发起请求 , 这个环节要经过全球多级查询 , 如果每一次请求都按照这个流程操作 , 就会产生很大的延迟 。
为了节省解析时间 , 提升解析效率 , 递归服务器会将首次在权威服务器请求到的解析记录缓存到自身中 , 保存一段时间 。 在这段时间内如果有访客再次对同一域名发起请求 , 递归服务器就会直接将DNS缓存中的结果告知客户端 , 而不必每次都进行全球DNS查询 。 这个时间就是TTL值 。
二、TTL值对域名解析的影响TTL值的大小对于域名解析的影响是十分明显的 。 如果TTL值太大 , 那么DNS缓存时间存在就很长 , 虽然可以在较长时间内为访客提供更快速的解析记录 , 然而一旦域名解析记录发生变更 , DNS缓存并不能同步更新数据 , 就会导致在很长一段时间内 , DNS缓存返回给客户端的记录是错误的原记录 , 从而使得用户访问到错误的站点 , 而攻击者也可以利用长期存在的DNS缓存发起DNS劫持攻击 。
反之 , 如果TTL值越小 , DNS缓存存活的时间就越短 , 递归服务器就会频繁对权威服务器发起请求 , 这样就保证了递归服务器可以较快速地更新最新的解析记录 , 从而保证解析记录的真实可靠 , 但这样的问题是TTL值太小 , 就失去了DNS缓存的存在意义 , DNS解析又恢复成从根服务器到权威服务器的标准请求流程 , 解析时间提升 , 且频繁请求也对权威服务器造成较大的压力 。
三、如何设置合理的TTL值?不同的解析服务商在设置域名解析时的默认TTL值不太一样 , 大部分都是600秒 , 如果没有特殊的需求 , TTL值采用默认值即可 。
如果网站服务器比较稳定 , 很长时间都不会更换 , 这种情况下就可以把TTL值设置得更大些 , 可以让访客更快得到结果去访问 。
如果网站对解析安全性和准确性要求较高 , 则可以将TTL值设置得尽量小些 , 这样就可以更及时地同步权威解析数据 。
还有一种情况就是当域名DNS服务器发生变更时 , 可以提前24小时将TTL值调小 , 修改域名解析记录24小时之后 , 在保证解析记录全球生效后 , 再将TTL值按照自己的需求进行调整 。