免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 766 | 回复: 0
打印 上一主题 下一主题

DNS工作原理的经典解释 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2009-05-24 19:30 |只看该作者 |倒序浏览
  DNS(Domain Name System),域名解析系统,是由美国伯克利大学开发。简单的说它的主要应用就是完成由域名到IP的解析。在互联网发展的早期,人们通过将IP写入/etc/hosts这个文件就可以完成相互之间的访问。但是后来互联网的快速发展使这种方式很快淘汰,因为谁都无法容忍把全世界的所有IP都写在一个文件并且放在自己的机器上所带来的后果。先来看看几个重要的概念吧!  FQDN(Fully Qualified Name):完整域名,又叫完全合格域名,见名知意,比如“http://www.xiyoulinux.cn.”,注意,末尾还有一个"."。  域:域是域名空间的一个子树。域的名字就是这个子树顶部节点的域名。一个域又可以划分为很多个子域。  区:一个服务器所负责的或者有权限的范围。当一个域没有子域的时候,域和区就是一样的了。  正解:由域名查IP,一般情况下都是这种方式。  反解:由IP查域名。    DNS的原理:比如客户机A:http://aerosol.ev.ncku.edu.cn.               服务器B:ev.ncku.edu.cn.               服务器C:ncku.edu.cn.                服务器D:edu.cn.               服务器E:.cn.               根服务器:F:.  从上到下,可以把下面的看作上面的域名服务器,且每个服务器只对自己区内的机器提供服务。比如edu.cn.为ncku.edu.cn.提供服务,也可能为xxx.edu.cn.提供服务,但是绝不会去管ev.ncku.edu.cn.,那是ncku.edu.cn.的事情了。  当机器G(不和A在一个区内,若在那就太简单了。)要访问A时,它把A的名字提供给自己的域名服务器H,若这个服务器H的缓存中直接有A的IP地址(一般缓存会存放24小时),它直接就把A的IP地址返回给请求者G,若没有它就会去请求别的服务器。这个过程也就是递归解析,域名解析的两种方式之一。假设缓存中没有A的IP,在这个例子中,H就会去访问F这个根服务器。但是F中依然没有H需要的信息,可它会告诉H,你可以去E处试试,并且把E的地址给H同理,E处依然没有啊,于是又以类似的方式处理。直到H找到B,这时候B发现A在自己的区内,所以它把A的IP地址返回给H。这种解析方式就叫做迭代解析,DNS的第二种解析方式。最后H再把A的IP给G,并且存入自己的缓存。G按照这个IP就找到了A,当然这是正解的情况。  在正解的情况下,DNS是分层的。但是每一层中的机器的IP可以是不同网段的。反解则不行,它每一层的IP必须是一个网段的。  DNS的这种工作方式是非常完美的。因为假如主机A要修改自己的名字,它只需要合法的在B中修改自己IP和名字的对应就OK了,其他人依然可以顺利的找到它。这种工作方式很高效,安全。当然安全的前提是有一个slave服务器哦!  

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u3/93994/showart_1943436.html
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP