• 1
  • 2
  • 3
  • 4
  • 5
域名解析 首 页  »  帮助中心  »  域名注册  »  域名解析
关于TTL值设置
发布日期:2015-10-25 15:10:2

  TTL(Time-To-Live),即一条域名解析记录在DNS服务器中的存留时间。当各地的DNS服务器接受到解析请求时,就会向域名指定的NS服务器发出解析请求,然后获得解析记录。获得记录之后,记录会在DNS服务器中保存一段时间,这段时间内如果再接到这个域名的解析请求,DNS服务器将不再向NS服务器发出请求,而是直接返回刚才获得的记录;而这个记录在DNS服务器上保留的时间,就是我们常见到的TTL值。那么TTL值有什么用处?有以下两种:

  1、减小TTL值,就可以减少更换空间时的不可访问时间。

  一般来说,更换空间99.9%时便会有DNS记录更改的问题,因为缓存的问题,新的域名记录在有的地方可能生效了,但在有的地方可能等上一两天甚至更久才生效。就会导致有人访问到新的服务器,有的人却访问到了旧服务器,这个倒是没有什么大的影响。但是如果是邮件发送,就有可能导致对方收不到邮件,原因是邮件发送到了旧的服务器上。

        2、增大TTL值,可以节约域名解析时间,从而给网站访问加速。

  我们都知道,域名的各种记录是极少更改的。增大域名记录的TTL值就可以让记录在各地DNS服务器中缓存的时间加长,这样的话,当我们在一定时期内访问这个网站时,本地ISP的DNS服务器就不需要向域名的NS服务器发出解析请求,直接从缓存中返回域名解析记录。

  3、返回结果PING命令,修改其TTL值来防护安全:

  在一般情况下我们通过ping对方让对方返回给您的TTL值大小,粗略的判断目标主机的系统类型是Windows系列还是UNIX/Linux系列,通常Windows系列的系统返回的TTL值在100-130之间,而UNIX/Linux系列的系统返回的TTL值在240-255之间,例如PING www.ieeye.com返回的TTL是240,对方的系统很可能是Linux,而另外一个目标的TTL是120,那么说明它使用的系统也许是Windows。因为国内和国际上很多平台的TTL值都是以秒为单位的,默认值大多都是3600,就是说默认缓存1小时,根据需要可以适量扩大这个数值。举例说明,要缓存一天就设置成86400。Godaddy的TTL设置比较直观,但总共只有5个值可以选定,即时切换到高级设置模式也是如此,。网站受赢利环境所迫,LifeTyper.com的TTL值是设置成了最大值1周,设置成更大的值可能会有写不必要的麻烦,例如当您要更换空间时,这些旧的记录要很久才过期并被更新。

       建议您:

  • 先查看域名当前的TTL值,我们假定是1天。
  • 修改TTL值为可设定的最小值,可能的话,建议为1分钟,就是60。
  • 等待一天,保证各地的DNS服务器缓存都过期并更新了记录。
  • 设置修改新记录,这个时候各地的DNS就能以最快的速度更新到新的记录。
  • 确认各地的DNS已经更新完成后,把TTL值设置成您想要的值,TTL=60还是太小了点。

  记住,这一切都能起作用的前提,是那些DNS服务器完全遵守这些标准和规范,否则NS服务器上怎么设置TTL都是白搭,但目前来看还没发现这么不讲规矩的DNS服务器。

  问题是,没有真正意义上的高速NS和DNS服务器。就像这里提到的,Dodaddy在国外评测拿到最高分,而在国内使用时速度比万网快不了多少;万网在国内速度表现突出,在国外的评测网站中得分却可能很低。如果您有钱像Google、微软那样在全世界部署大量的CDN加速服务器和NS服务器,那当然没问题,问题是这对绝大部分网站来说都不可能,国内国外不是不可兼得,而是很难。

  也许有人以为可以通过给域名指定两个NS记录(一个国内一个国外)来提高解析速度,但这也是不可能的,因为只有在DNS服务器从第一个NS服务器那里获取记录失败时才会向第二个NS服务器发送解析请求。我所知道的一个最廉价和有效的提速方法,就是修改刚才上面说的域名记录的TTL值。