Chinaunix首页 | 论坛 | 博客
  • 博客访问: 66394
  • 博文数量: 30
  • 博客积分: 1265
  • 博客等级: 中尉
  • 技术积分: 295
  • 用 户 组: 普通用户
  • 注册时间: 2008-12-04 15:24
文章分类

全部博文(30)

文章存档

2011年(1)

2010年(14)

2009年(11)

2008年(4)

我的朋友

分类: LINUX

2010-05-16 23:56:20

 DNS(Domain Name System),域名解析系统,是由美国伯克利大学开发。简单的说它的主要应用就是完成由域名到IP的解析。在互联网发展的早期,人们通过将IP写入/etc/hosts这个文件就可以完成相互之间的访问。但是后来互联网的快速发展使这种方式很快淘汰,因为谁都无法容忍把全世界的所有IP都写在一个文件并且放在自己的机器上所带来的后果。先来看看几个重要的概念吧!
  FQDN(Fully Qualified Name):完整域名,又叫完全合格域名,见名知意,比如“”,注意,末尾还有一个"."。
  域:域是域名空间的一个子树。域的名字就是这个子树顶部节点的域名。一个域又可以划分为很多个子域。
  区:一个服务器所负责的或者有权限的范围。当一个域没有子域的时候,域和区就是一样的了。
  正解:由域名查IP,一般情况下都是这种方式。
  反解:由IP查域名。
 
  DNS的原理:比如客户机A:
               服务器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服务器哦!
文章出处:飞诺网():http://dev.firnow.com/course/6_system/linux/Linuxjs/20090824/171069.html
阅读(332) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~