欢迎光临
我们一直在努力

域名服务器解析过程及原理

域名服务器解析过程及原理
第一步:客户机提出域名解析请求,并将该请求发送给本地的域名服务器。

第二步:当本地的域名服务器收到请求后,就先查询本地的缓存,如果有该纪录项,则本地的域名服务器就直接把查询的结果返回。

第三步:如果本地的缓存中没有该纪录,则本地域名服务器就直接把请求发给根域名服务器,然后根域名服务器再返回给本地域名服务器一个所查询域(根的子域)的主域名服务器的地址。

第四步:本地服务器再向上一步返回的域名服务器发送请求,然后接受请求的服务器查询自己的缓存,如果没有该纪录,则返回相关的下级的域名服务器的地址。

第五步:重复第四步,直到找到正确的纪录。

第六步:本地域名服务器把返回的结果保存到缓存,以备下一次使用,同时还将结果返回给客户机。

让我们举一个例子来详细说明解析域名的过程.假设我们的客户机如果想要访问站点:www.biaozhun.net,此客户本地的域名服务器是dns.company.com,一个根域名服务器是NS.INTER.NET,所要访问的网站的域名服务器是ns1.lovewebhost.com,域名解析的过程如下所示:

(1)客户机发出请求解析域名www.biaozhun.net的报文

(2)本地的域名服务器收到请求后, 查询本地缓存, 假设没有该纪录, 则本地域名服务器dns.company.com则向根域名服务器NS.INTER.NET发出请求解析域名www.biaozhun.net

(3)根域名服务器NS.INTER.NET收到请求后查询本地记录得到如下结果:biaozhun.net NS ns1.lovewebhost.com(表示biaozhun.net域中的域名服务器为:ns1.lovewebhost.com), 同时给出ns1.lovewebhost.com的地址,并将结果返回给域名服务器dns.company.com。

(4)域名服务器dns.company.com 收到回应后,再向ns1.lovewebhost.com发出请求解析域名。www.biaozhun.net的报文。

(5)域名服务器ns1.lovewebhost.com 收到请求后,开始查询本地的记录,找到如下一条记录www.biaozhun.net, A 1.1.1.1(表示biaozhun.net域中域名服务器ns1.lovewebhost.com的IP地址为:1.1.1.1),并将结果返回给客户本地域名服务器dns.company.com。

(6)客户本地域名服务器将返回的结果保存到本地缓存,同时将结果返回给客户机。

这样就完成了一次域名解析过程。

为了帮助理解,我画了一张图,并把空间、域名的一些关联也画了进去。(图只是本人的理解,如果有错误之处,烦请指出,谢谢。)
域名服务器解析过程及原理

理解域名服务器解析非常的关键,这可以帮助我们解决很多问题,比如:
域名biaozhun.net由服务器Ⅰ解析到服务器Ⅱ,并关闭服务器Ⅰ上biaozhun.net的帐户。
A是上海电信用户,短期内访问过域名biaozhun.net
B是上海电信用户,未访问过biaozhun.net
C是上海网通用户,未访问过biaozhun.net
D是北京网通用户,短期内访问过域名biaozhun.net
结果只有B能访问biaozhun.net是什么原因?
A、D都因为短期内访问过,所以他们使用的当地域名服务器缓存中保存的都是解析到服务器Ⅰ的数据,而服务器Ⅰ已经被关闭,所以无法访问。
B虽然自己没有访问过biaozhun.net,但是使用同域名服务器的顾客A访问过biaozhun.net,所以缓存中保存的也是解析到服务器Ⅰ的数据,所以无法访问。
C使用的域名服务器上的顾客没有访问过biaozhun.net,所以上海网通的域名服务器会向根域名服务器发出请求,…,然后得到的是修改后解析到服务器Ⅱ的数据,所以该顾客可以访问。

A、B、D顾客什么时候能访问网站?

1.取决于域名商服务器向根域名服务器发送信息频率,如果你修改了,而服务器没有发送,那也是白搭,国外一些域名商通常都是即时发送的。国内不是清楚,但从原理上来看这是前提。

2.在域名商服务即时发送的前提下,取决于TTL的设置,TTL全称Time-To-Live表示域名解析记录在DNS服务器中的存留时间(有些域名商不允许修改而采用某定值),比如设置3600,就是有效时间3600秒也是1小时,1小时后当地域名服务器会重新向根服务器发送请求,TTL是一把双刃剑如果设置的过短,影响网站的打开速度;如果设置的过大,搬空间时,就会造成有些顾客访问到的是旧服务器,而有些顾客访问到的是新服务器,但搬空间毕竟是少数,这里我建议大家设置成86400,也就是24小时,如果需要搬空间就提前修改TTL,可以把值设置的小一点,等解析好之后再修改回来。

我们知道在使用默认ISP域名服务器的前提下,域名解析的生效时间是由TTL决定的。从理论上说,如果我们换掉计算机使用的默认域名服务器,使用一个新的未打开过这个域名的域名服务器,那么我们就可以打开网站。opendns.com使这个理论变成了现实。大家可以用208.67.222.222、208.67.220.220这两个免费的域名服务器替换到自己默认的域名服务器。(操作方法见这里)

使用免费域名服务器,解决域名解析问题
域名修改了有关信息以后,服务器会把信息提供美国的根库,然后世界各地的DNS服务器开始刷新.由于不同ISP的DNS刷新间隔不同,就导致了打开网站不一样的结果。
比如,新注册域名,有的地方能打开,有的地方不能打开。
比如,换服务器后,有些人访问到的是新服务器,有的人访问到的是旧服务器。:
当地是否解析好,可以简单的Ping域名,通过返回的IP就可以知道。

如果遇到这样的情况,请最长等待48小时,让世界各地的DNS刷新获取新的信息。

当然如果你不想等的话,可以采用2种简单的方法更换你使用的DNS。

方法1:使用VPN。
这个很简单不做解释。

方法2:使用OpenDNS。他们的网站:http://www.opendns.com/
使用他们免费的DNS服务:
208.67.222.222
208.67.220.220
操作方法:
右击“网上邻居”选“属性”
右击你现在使用的网络连接方式,或直接ADSL或本地连接,选“属性”,
记得ADSL断开重新连接才能起效。

如果你现在使用已经是这个DNS了,那你可以更新OpenDNS的缓存
http://www.opendns.com/support/cache/_

如果你的网站打开慢,OpenDNS会把网页转到他们的广告页面,不喜欢的顾客,请在本地更新后,修改回原来的。

当然opendns的妙用还不仅在这里,你甚至可以在巨大的opendns缓存中删除域名的记录,.opendns.com/support/cache/,从而忽略TTL的设置。

赞(0) 打赏
未经允许不得转载:刘旭的人个博客 » 域名服务器解析过程及原理
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!

 

QQ :13945502电话:13913571631

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏

×
订阅图标按钮