在进行DNS解析过程之前,我们首先需要了解什么是DNS。
1、什么是dns
DNS(Domain Name System)是域名系统的英文缩写,是TCP/IP 网络中用于形成域层次结构的计算机和网络服务的命名系统。
简单来说,当你在浏览器中输入一个URL 地址时,浏览器会向该URL 主机对应的服务器发送请求,而DNS 的作用就是将该服务器的IP 转换为浏览器。将主机名转换为IP 地址。
2、dns解析流程
{DNS解析过程} 简单来说,就是将域名转换成IP地址。例如www.baidu.com将此域名翻译为对应的IP 192.168.18.255。这只是一个例子。
域名解析流程
在访问本地DNS 服务器之前,您必须首先按照上图所示的流程进行操作(通过检查本地DNS 缓存和主机文件的解析)。
浏览器缓存检查
浏览器首先搜索自己的DNS 缓存。缓存时间相对较短,仅可容纳1,000 个缓存条目。如果未过期,则对应于缓存条目。如果没有过期,则分析到此结束。
操作系统缓存检查+host解析
如果没有找到浏览器缓存解析,操作系统有一个域名解析进程,会自动在操作系统的DNS缓存中搜索匹配的域名解析。如果没有,决议到此结束。
在Linux上,可以通过/etc/hosts文件进行配置,将任何域名解析为可访问的IP地址。如果此处指定了域名对应的IP地址,则浏览器将优先使用该IP地址。当该配置文件中的域名被解析时,操作系统会缓存该解析。缓存时间还受域名过期日期和缓存空间大小的控制。
第一步
客户端通过浏览器使用域名(www.baidu.com)访问网站,发起请求查询IP地址。首先检查是否有DNS缓存+主机文件解析。如果返回结果。如果没有,请联系您本地的DNS 服务器。
第二部
客户端通过浏览器使用域名(www.baidu.com)访问网站,并发起IP地址请求。该请求将发送到您的本地DNS 服务器。本地服务器首先查询其缓存记录,如果缓存中有这样的记录,则可以直接返回结果。否则,服务器向根域发送请求进行查询。
第三部
本地DNS服务器向根服务器发送请求,请求域名(www.baidu.com)的网站。
第四部
查询完成后,根服务器并不记录该域名的IP地址的对应关系,而是告诉本地DNS服务器可以向顶级域名服务器进行查询,以提供该服务器的地理信息(.com)。
第五步
本地DNS服务器向.com服务器发送DNS请求,请求域名为www.baidu,com(baidu,com)的网站。
第六步
。 com服务器收到请求后,并不直接返回域名到IP地址的映射,而是告诉本地DNS服务器baidu.com可以解析域名并获取IP地址。然后告诉baidu.com你的域名服务器地址。
第七步
本地DNS服务器向baidu.com域名服务器发送DNS请求,请求域名www.baidu.com(http://www.baidu.com)的IP地址。
第八步
baidu.com服务器收到请求后,在其缓存表中查找域名与IP地址的对应关系,并将IP地址返回给本地DNS服务器。
第九步
本地DNS服务器检索域名对应的IP地址,返回给客户端,并缓存域名到IP地址的映射关系,以供其他用户后续查询。
总结
最后我将引用我老板的一张照片。
以上关于#DNS解析流程的相关内容(8分钟帮你理解)仅供大家参考。相关信息请参见官方公告。
原创文章,作者:CSDN,如若转载,请注明出处:https://www.sudun.com/ask/92279.html