DNS的背景工作原理和作用

1.背景:

DNS的背景起源于20世纪60年代末的美国国防部高级研究计划局(ARPA)建立的试验性计算机网络ARPAnet。DNS,全称域名系统(Domain Name System),是为了解决互联网上主机名与IP地址对应关系而发展起来的服务。在早期互联网规模较小时,可以通过简单的文本文件来记录这种对应关系。但随着互联网的快速发展,这种方式不再适用,因此需要一种更为灵活、可扩展的解决方案,于是产生了DNS。

2.工作原理:

DNS的工作原理是将域名解析为IP地址。它是基于分布式数据库的,这个数据库中存储了域名结构信息,其结构是树状的。最顶端是根服务器,下一层是顶级域(如.com、.cn等通用域和国家域),再下面是二级域名,以及可能的三级或四级域名。当用户在浏览器中输入一个网址时,DNS会从根服务器开始逐步查询,最终找到对应的IP地址并将其返回给用户,这个过程称为域名解析。

3.详细过程

1.在浏览器中输入www.qq .com 域名,操作系统会先检查自己本地的hosts文件是否有这个网址映射关系,如果有,就先调用这个IP地址映射,完成域名解析。

2.如果hosts里没有这个域名的映射,则查找本地DNS解析器缓存,是否有这个网址映射关系,如果有,直接返回,完成域名解析。

3.本地DNS解析器缓存都没有相应的网址映射关系,首先会找TCP/IP参数中设置的首选DNS服务器,在此我们叫它本地DNS服务器,此服务器收到查询时,如果要查询的域名,包含在本地配置区域资源中,则返回解析结果给客户机,完成域名解析,此解析具有权威性。

4.如果要查询的域名,不由本地DNS服务器区域解析,但该服务器已缓存了此网址映射关系,则调用这个IP地址映射,完成域名解析,此解析不具有权威性。

5.如果本地DNS服务器本地区域文件与缓存解析都失效,则根据本地DNS服务器的设置(是否设置转发器)进行查询,如果未用转发模式,本地DNS就把请求发至13台根DNS,根DNS服务器收到请求后会判断这个域名(.com)是谁来授权管理,并会返回一个负责该顶级域名服务器的一个IP。本地DNS服务器收到IP信息后,将会联系负责.com域的这台服务器。这台负责.com域的服务器收到请求后,如果自己无法解析,它就会找一个管理qq.com的DNS服务器地址给本地DNS服务器。当本地DNS服务器收到这个地址后,

就会找qq.com域服务器,重复上面的动作,进行查询,直至找到www . qq .com主机。

6.如果用的是转发模式,本地DNS服务器就会把请求转发至上一级DNS服务器,由上一级服务器解

析,上一级服务器如果不能解析,或找根DNS或把请求转至上上级,以此循环。找到最后把结果返回给本地DNS服务器,由此DNS服务器再返回给客户机。

4.作用:

DNS的作用主要是将便于人类记忆的域名转换为机器能够识别的IP地址。这大大简化了人们访问互联网的方式。没有DNS,用户将不得不记住复杂的数字串即IP地址,这将极大地降低互联网的可用性和便捷性。通过使用DNS,用户只需要记住简单的域名就可以访问网站,而不需要关心背后的IP地址是什么。

总结来说,DNS作为因特网的核心服务之一,扮演着至关重要的角色。它不仅提供了将域名映射到IP地址的功能,还通过其分布式的特性确保了互联网的稳定性和可扩展性。

相关推荐
FeelTouch Labs2 小时前
Nginx核心架构设计
运维·前端·nginx
程序员zgh2 小时前
Linux系统常用命令集合
linux·运维·服务器·c语言·开发语言·c++
gwd2002 小时前
如何快速设置 Docker 代理设置
运维·人工智能·docker·容器
紫郢剑侠3 小时前
飞秋@Windows +iptux@Linux,打造内网跨平台IM环境
linux·运维·服务器·im·qq
保持低旋律节奏3 小时前
linux——调试
linux·运维·服务器
牛奶咖啡133 小时前
Linux系统故障排查思路实践教程(下)
linux·运维·服务器·su命令切换用户问题解决·文件打开过多问题解决·linux网络故障问题解决·linux故障排查思路
weixin_521431124 小时前
Docker容器技术
运维·docker·容器
Evan芙4 小时前
nginx+php部署walle,发布php站点
运维·nginx·php
xdxghy09214 小时前
mini centos7+k3s部署(镜像拉取解决版)
linux·运维·服务器·阿里云·运维开发