前言
今天方木就带大家八分钟了解DNS域名解析流程,在讲解DNS域名解析流程之前,我们先来了解一下什么是DNS。
什么是 DNS
DNS( Name)是域名系统的缩写,是一种按域层次组织起来的计算机和网络服务命名系统,用于TCP/IP网络。
当我们在浏览器中输入一个URL地址时,浏览器需要知道服务器的IP地址,才能向该URL的主机名对应的服务器发送请求。对于浏览器来说,DNS的作用就是将主机名转换成IP地址。
DNS域名解析过程
DNS域名解析,简单来说就是将域名翻译成IP地址。比如这个域名翻译成对应的IP是220.181.38.251。这只是举个例子。
域名解析流程
上图分8步介绍了域名解析的流程,不过在此之前会先检查本地缓存配置+hosts解析,然后才会真正执行上图中的流程:
浏览器缓存检查
浏览器会先搜索自己的DNS缓存,这个缓存时间比较短,只有1分钟左右,而且只能容纳1000个缓存,它会检查自己的缓存中是否有对应的条目,并且没有过期,如果有,并且没有过期,那么解析就到此结束。
操作系统缓存检查 + 主机解析
如果在浏览器的缓存中没有找到对应的条目,那么操作系统也会有一个域名解析的过程,浏览器会先去操作系统的DNS缓存中查找是否有这个域名对应的解析结果,如果找到了并且没有过期,那么就停止查找,解析到此结束。
在Linux中,可以使用/etc/hosts文件将任意域名设置到任意可访问的IP地址。如果在这里指定了某个域名对应的IP地址,那么浏览器会优先使用这个IP地址。当解析到这个配置文件中的某个域名时,操作系统会将解析结果缓存到缓存中。而缓存时间也是由域名的过期时间和缓存空间大小控制的。
第一步
客户端通过浏览器访问域名()的网站,并发起DNS请求,查询该域名的IP地址,请求被发送到本地DNS服务器,本地DNS服务器会先查询自己的缓存记录,如果缓存中有这样的记录,则直接返回结果,如果没有,本地DNS服务器还会查询DNS根服务器。
第2步
本地DNS服务器向根服务器发送DNS请求,请求域名对应的IP地址()。
第三步
根服务器查询完之后,并不记录域名和IP地址的对应关系,但是会告诉本地DNS服务器可以继续查询域名服务器,并给出域名服务器(.com服务器)的地址。
第四步
本地DNS服务器向.com服务器发送DNS请求,请求域名的IP地址()。
第五步
com服务器收到请求之后,不会直接返回域名与IP地址的对应关系,而是会告诉本地DNS服务器,该域名可以在域名服务器上解析得到IP地址,并告诉域名服务器的地址。
第 6 步
本地DNS服务器向域名服务器发送DNS请求,请求域名的IP地址()。
步骤7
服务器收到请求后,在自己的缓存表中找到域名与IP地址的对应关系,并将IP地址返回给本地DNS服务器。
步骤8
本地DNS服务器将域名对应的IP地址返回给客户端,同时将域名与IP地址的对应关系保存在缓存中,以供其他用户下次查询时使用。
总结
最后引用一下老大的一张图来总结一下:
DNS域名解析过程
扫一扫在手机端查看
-
Tags : DNS 域名解析流程 浏览器缓存检查 域名服务器查询
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。