减少域名dns解析时间 域名解析中的TTL值设置多少合适
什么是TTLTTL是IP协议包中的一个值,它告诉网络,数据包在网络中的时间是否太长而应被丢弃。有很多原因使包在一定时间内不能被传递到目的地。解决方法就是在一段时间后丢弃这个包,然后给发送者一个报文,由发送者决定是否要重发。TTL的初值通常是系统缺省值,是包头中的8位的域。TTL的最初设想是确定一个时间范围,超过此时间就把包丢弃。由于每个路由器都至少要把TTL域减一,TTL通常表示包在被丢弃前最多能经过的路由器个数。当记数到0时,路由器决定丢弃该包,并发送一个ICMP报文给最初的发送者。
其他不再赘述,发挥二的性格,我们直奔主题。
用户打开网站的整个流程中,DNS解析时第一环,当用户输入域名并敲回车后,windows系统调用DNS client,寻找到用户配置或者自动分配的DNS IP,之后就开始整个解析过程。
域名解析中的TTL值设置多少合适?
域名解析是实现域名指向IP的重要机制,而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值按照自己的需求进行调整。
DNS解析,变快有意义吗?
有,呵呵,很多小型网站,DNS解析时间都接近0.5s,甚至我见过一个网站,需要1.2s才可以解析出结果的。这是个非常令人吃惊的数据,因为对于一般网站打开时间超过8s用户即将放弃访问,而对于电子商务网站,4s就是用户忍耐极限。而一般经过优化的小型网站,DNS解析时间都可以控制在200MS左右,而带宽在100M左右的网站,经过优化,DNS解析时间可以控制在50-100ms。
如何优化呢?
首先利用好TTL,因为要尽量多的让用户直接从运营商的DNS缓存中拿到A记录,这样才能保证最快,但是也要保证,当你的服务器出问题时,需要尽快的切换,所以,这个TTL设置也是有一些情况需要综合研究的。
1、 你肯定清楚,自己的服务器有没有多台或者备份。如无备份,那服务器宕机时,你只能生抗,所以,TTL时间对于你来说是越长越好,因为TTL短的目的是服务器发生问题时,可以及时切换,这个对于没有备份的网站基本利用不上。所以,你的TTL设置就是越长越好,当然了,也不能无限长,一般设置TTL 3600即可。
2、 如有备份或者多台服务器,会发生由于服务器宕机需要及时做切换,TTL时间越短,切换越及时,但是TTL时间越短,也就意味着运营商DNS经常缓存不住,一般用户,设置为TTL 600即可,如果对及时切换,要求特别苛刻的网站,设置TTL 120即可。
其次寻找足够热的域名解析商。很多网站,都是自己做一个域名解析服务器,看着自己掌控方便了,但是大错特错,因为你的域名解析服务器,基本上都不被缓存,每次从根服务器询问一圈,绕了大半个地球,才给出最后的结果,那自然会效果很差。所以,要寻找足够热的域名解析商。什么叫热,就是被访问的次数特别多。足够热的话,域名解析服务器的A记录基本上会被各地运营商的DNS一直缓存着。如何判断域名解析商够不够热呢?其实,也很简单,看看这个域名解析商的客户够不够多,他们客户网站够不够热门,访问的人够不够多。
也给大家推荐一个更好的方法,就是找CDN厂商做域名解析。因为CDN厂商服务的客户,有很多是很热很大用户群很多的,所以,这些CDN厂商的域名解析服务器,服务效果那是岗岗的好。
最后是进阶技巧---巧用CNAME。不少网站拥有者,在同样的一个或多个服务器上运营很多小网站;或者自己运营一个网站,但是拆分了很多个二级域名。针对这些情况,严重需要善用CNAME,把所有的这些小网站的域名或者二级域名,cname到一个自己定义的统一域名。然后设置这个cname对应的TTL时间足够长。这样的话,保证网站的第一次解析,可以直接从运营商的DNS缓存中拿到,也就是直接拿到cname后的记录。然后,第二个cname记录,再设置一个相对合理的TTL值。通过这样,变相加热了第二级域名,通过加热的第二级和缓存时间足够长的第一级,最大化的优化DNS解析时间。该技巧,一定要确保,最后A记录得到的IP,可以服务这些原始域名。
例子:
www.abc.com. 7200 IN CNAME hot.abc.com.
hot.abc.com. 600 IN A 127.0.0.1
什么叫拆分域名?
很多网站,在搭建网站的时候,只是申请和购买了一个域名,然后所有内容:图片、js、css、html、php等等,都放在一个域名下。
而拆分域名,指的就是根据不同的应用,而将域名拆分出来。
拆分域名有什么好处?
使用IE6和IE7内核的浏览器,针对同个域名,只会同时发起2个连接。
使用IE8内核的浏览器,针对同个域名,可以同时发起6个连接。
很重要吗?
非常重要,请看图示。
使用IE6打开一个所有内容均在同个域名下的网站
使用IE8打开一个所有内容均在同个域名下的网站
我们看到的是,在IE6的情况下,请求第7个元素,需要0.7s,而在IE8的情况下,0.277就开始请求第7个元素。
由此可以看到,并发连接更多的时候,网页打开速度会更快。
由以上数据可以看到,多个域名,不管是在IE6和IE8的情况下,拆分域名,都会使网站的打开速度变快。
现实中也是如此,新浪、淘宝等大型网站,他们无一不是在拆分域名。
另外,要纠正一个IT人的误区。因为IT人一般都热衷技术,很多人的操作系统等版本都很新,用的都是IE8甚至以上的浏览器。但是整个中国,到目前为止,使用IE6和IE7的用户,仍然非常另IT人震惊的80%左右。所以,拆分域名,基本上可以缩减你20%以上的打开速度。
一个简单的操作,就能带来巨大的效果提升,何乐不为?
当然了,肯定会有人问,拆分域名,那不就会导致域名热度不够,DNS缓存不住的问题吗?这个问题,请看我上一篇博文,已经给出了答案。
按照什么原则拆分域名呢?
个数多少合适?
一般50M以下网页类网站,域名保持在4、5个即可,过多后范围会导致你的维护和使用变得复杂。
100-500M以下网页类网站,域名保持在8-10个左右。
1G以上的网页类网站,域名无所谓个数,保持10个以上,具体个数根据自己的业务和管理特点随心制定。
什么内容放到同个域名下?
页面类:html、htm等
样式类:js、css等
图片类:jpg、png、gif等
动态类:php、asp等
这样的分配方式,将来有利于你进一步优化你的网站,并且在你需要寻找加速工具时,也可以针对性的选择不同的加速方式。
作者:王康
文章来源:xmw2.blog.chinaunix.net
相关文章
- 我们有些站长业务范围是外贸网站或者其他网站,那注册域名不想在国内域名注册商注册域名,那就可以选择国外域名注册商,那类似我们需要外贸建站域名商选择哪个商家呢2023-10-08
- 这篇文章主要介绍了域名解析之CNAME 解析过程、限制和替代,需要的朋友可以参考下2023-07-01
- 这篇文章主要介绍了Namecheap 域名注册购买图文教程,需要的朋友可以参考下2023-06-14
Namesilo主机商2020最新优惠码及域名注册购买图文教程
本站给大家介绍2020最新的购买注册图文教程及 Namesilo 的最新优惠码,需要的朋友可以参考下2020-10-31- Namesilo因为没有中文版本,这里就将怎么将自己的域名过户(Push)到另外一个账户呢?这里虾皮路就介绍一下将NameSilo域名过户Push给另外一个账户图文教程2020-10-31
- 对于Namesilo域名注册商大家应该也有熟悉,虽然起步较晚但是因其比较稳定的注册和续费价格,以及赠送永久隐私保护的策略,还是深得用户喜欢的,这里就为大家介绍一下域名转2020-10-31
- 之前一直用Godaddy的平台管理域名,后来发现续费超级贵,godaddy果然是个坑,我们最近就把godaddy的域名转移到godaddy了, 后续把教程补上2020-10-31
- 网站安装SSL证书是为了保证数据传输的安全性,类似于购物网站等涉及到重要数据的网站都需要安装SSL证书。GoDaddy也推出自家的SSL证书,然而有些用户在GoDaddy购买SSL证书后2019-01-12
- 域名存在的时间是对SEO优化是有所影响的,具有产生了哪些影响,就如同先入行者与后入行者相比,谁积累的经验更多呢?答案肯定是:先入行的经验更丰富些,对此,本文就为大2017-07-27
- 如果负责转换的域名服务器遭受攻击,就会直接导致互联网用户无法使用互联网,因此保证DNS服务器的安全运行是网络安全与正常运行的关键,本文主要为大家介绍几点常见的域名2017-07-14
最新评论