分享

网站建设(2)

 隐者黑鹰88 2016-04-02
2016-03-30      0 个评论    来源:思维与睿智  
收藏    我要投稿

上一篇文章中已经讲了域名,及域名的分类、选择和购买,但有了域名之后,你的网站还不能被访问,因为因特网中主机与主机之间的通讯是通过唯一的IP标识(地址)进行访问的。要知道一个域名对应的IP地址,就需要进行DNS解析。

什么是DNS

DNS(Domain Name System,域名系统)是因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。

网络上计算机之间的通讯是通过IP地址来完成的,但IP地址并不便于记忆,我们需要一个方便记忆的名字来识别每一台计算机,这就是域名,而维护域名的系统就叫做域名系统,域名系统其实就是名字系统。域名是唯一的,IP也是唯一的,给你一个域名要知道它对应的IP地址,就需要有一个域名到IP的映射。 由域名去找IP地址的查找过程就是DNS的解析,进行DNS解析的服务器叫DNS服务器,而DNS服务器便充当了“翻译官”的角色,将域名翻译成IP地址。

DNS的解析原理

DNS的解析也就是通过域名查找主机的过程,其查找过程主要有三个步骤:

本地查询(客户机的DNS解析器) 客户机到服务器查询 服务器到服务器查询

 

DNS解析的主要过程DNS解析的主要过程

1.本地查询

浏览器中输入blog.csdn.net域名,操作系统会先检查自己本地的hosts文件是否有这个网址映射关系,如果有,就先调用这个IP地址映射,完成域名解析。
Win7系统下本地的hosts文件在C:\Windows\System32\drivers\etc\hosts,Linux系统下在:./etc/hosts。 如果hosts里没有这个域名的映射,则查找本地DNS解析器缓存,是否有这个网址映射关系,如果有,直接返回,完成域名解析。 如果hosts与本地DNS解析器缓存都没有相应的网址映射关系,首先会找TCP/IP参数中设置的首选DNS服务器,在此我们叫它本地DNS服务器(也就是上图中中间部分的DNS Server),在本地DNS服务器中查找 。
Win7系统下TCP/IP参数的设置在:控制面板\网络和 Internet\网络连接\本地链接\属性\网络\Internet协议版本4(TCP/IPv4)

DNS的设置
DNS的设置

2.客户机到服务器查询

本地DNS服务器收到查询时,如果要查询的域名,包含在本地配置区域资源中,则返回解析结果给客户机,完成域名解析,此解析具有权威性。 如果要查询的域名,不由本地DNS服务器区域解析,但该服务器已缓存了此网址映射关系,则调用这个IP地址映射,完成域名解析,此解析不具有权威性。 如果本地DNS服务器本地区域文件与缓存解析都失效,则根据本地DNS服务器的设置(是否设置转发器)进行查询。

3.服务器到服务器查询

如果未用转发模式,本地DNS就把请求发至13台根DNS,根DNS服务器收到请求后会判断这个域名(.com)是谁来授权管理,并会返回一个负责该顶级域名服务器的一个IP。本地DNS服务器收到IP信息后,将会联系负责.com域的这台服务器。这台负责.net域的服务器收到请求后,如果自己无法解析,它就会找一个管理.net域的下一级DNS服务器地址(csdn.net)给本地DNS服务器。当本地DNS服务器收到这个地址后,就会找csdn.net域服务器,重复上面的动作,进行查询,直至找到blog.csdn.net主机。
全球有386台根服务器,被编号为A到M共13个标号,编号相同的根服务器使用同一个IP,386台根服务器总共只使用13个IP,因此可以抵抗针对其所进 行的分布式拒绝服务攻击(DDoS)。中国大陆在北京有两台编号为L的根服务器镜像,编号为F、I、J的各一,共5台镜像,所以刚才提到的那个故障应该就 是国内的DNS根域镜像的故障。 因为只有13个IP地址,也经常被认为是仅有13台根域名服务器,1个主根域名服务器,其余12为辅根域名服务器。参考自http://www./server/dns/7763.html

如果用的是转发模式,本地DNS服务器就会把请求转发至上一级DNS服务器(csdn.net),由上一级服务器进行解析,上一级服务器如果不能解析,会把转请求转至上上级(.net)或找根DNS服务器,以此循环。不管是本地DNS服务器用是是转发模式,还是非转发模式,最后都是把结果返回给本地DNS服务器,由此DNS服务器再返回给客户机。

递归查询与迭代查询

递归查询

主机向本地域名服务器的查询一般都是采用递归查询。所谓递归查询就是:如果主机所询问的本地域名服务器不知道被查询的域名的IP地址,那么本地域名服务器就以DNS客户的身份,向其它根域名服务器继续发出查询请求报文(即替主机继续查询),而不是让主机自己进行下一步查询。因此,递归查询返回的查询结果或者是所要查询的IP地址,或者是报错,表示无法查询到所需的IP地址。

迭代查询

本地域名服务器向根域名服务器的查询的迭代查询。迭代查询的特点:当根域名服务器收到本地域名服务器发出的迭代查询请求报文时,要么给出所要查询的IP地址,要么告诉本地服务器:“你下一步应当向哪一个域名服务器进行查询”。然后让本地服务器进行后续的查询。根域名服务器通常是把自己知道的顶级域名服务器的IP地址告诉本地域名服务器,让本地域名服务器再向顶级域名服务器查询。顶级域名服务器在收到本地域名服务器的查询请求后,要么给出所要查询的IP地址,要么告诉本地服务器下一步应当向哪一个权限域名服务器进行查询。最后,知道了所要解析的IP地址或报错,然后把这个结果返回给发起查询的主机。

DNS的优化

DNS优化的主要思路

一般域名商或服务器商都会提供免费的DNS服务,然而,很多情况下这些免费的DNS服务器速度较慢,故可做一定优化,具体可从以下几方面:

(1)增加DNS服务器数量

减小服务器压力,当单位服务器需要处理的DNS请求数量较少时速度会更快;

(2)全国多地分布DNS服务器

用户网络访问速度跟用户计算机到服务器的距离有关,若可以让用户就近访问所在省份的服务器便可以加速DNS解析速度;

(3)识别用户线路反馈相应线路IP

当用户网络线路跟服务器网络线路一致时速度较快,而不一致时则较慢,如:用户使用电信的线路但服务器是联通的线路,这样就会造成用户访问网站速度下降,如果可以识别用户访问线路并反馈相应IP则会加速网站访问。

DNSPod提供的优化工具

在说说建站那些事一文中我们提到DNSPod是中国最大的第三方域名服务商,全球排名第四位,其基础业务就是DNS解析,它给我们免费提供了两个DNS优化的工具:用户本地DNS优化和域名健康诊断。

 


本地DNS优化
本地DNS优化
域名健康诊断
域名健康诊断

我们可以通过它的提示发现和解决部分问题

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多