DNS工作原理经典解释
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服务器哦!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
DNS解析也应该包含那个.