DNS域名解析

前面写过一篇关于一次完整的HTTP请求,文章内容相对浅显,又是一年跳槽季,为了各位攻城狮们来年可以找到满意的工作和心仪的对象,几经思考,还是准备进一步细化讲解,今天就聊一聊骚气的csdn域名解析

再具体介绍之前,先上图,然后看图说话,这样有图有真相有助于肠胃吸收,不至于枯燥乏味
DNS是一个递归查询的过程,请先允许头盗图一张哈:
在这里插入图片描述
如图所示,DNS域名解析是一个递归查询和迭代查询的过程,下面将对每一个步骤进行详细的说明:
以chroom浏览器为例:

1、 Chrome浏览器 会首先搜索浏览器自身的DNS缓存(缓存时间比较短,大概只有1分钟,且只能容纳1000条缓存),看自身的缓存中是否有www.google.com 对应的条目,而且没有过期,如果有且没有过期则解析到此结束。

2、如果浏览器自身的缓存里面没有找到对应的条目,那么Chrome会搜索操作系统自身的DNS缓存,如果找到且没有过期则停止搜索解析到此结束.

3、如果在系统的DNS缓存也没有找到,那么尝试读取hosts文件

4、如果在hosts文件中也没有找到对应的条目,浏览器就会发起一个DNS的系统调用,就会向本地配置的首选DNS服务器[上图中的根域名服务器](一般是电信运营商提供的,也可以使用像Google提供的DNS服务器)发起域名解析请求,运营商的DNS服务器首先查找自身的缓存,找到对应的条目,且没有过期,则解析成功。如果没有找到对应的条目,则有运营商的DNS代我们的浏览器发起迭代DNS解析请求,它首先是会找根域的DNS的IP地址,找到根域的DNS地址,就会向其发起请求(请问www.google.com这个域名的IP地址是多少?),根域发现这是一个顶级域com域的一个域名,于是就告诉运营商的DNS我不知道这个域名的IP地址,但是我知道com域的IP地址,你去找它去,于是运营商的DNS就得到了com域的IP地址,又向com域的IP地址发起了请求(请问www.google.com这个域名的IP地址是多少?),com域这台服务器告诉运营商的DNS我不知道www.google.com这个域名的IP地址,但是我知道www.google.com这个域的DNS地址,你去找它去,于是运营商的DNS又向www.google.com这个域名的DNS地址(这个一般就是由域名注册商提供的,像万网,新网等)发起请求(请问www.google.com这个域名的IP地址是多少?),这个时候www.google.com域的DNS服务器一查,诶,果真在我这里,于是就把找到的结果发送给运营商的DNS服务器,这个时候运营商的DNS服务器就拿到了www.google.com这个域名对应的IP地址,并返回给系统内核,内核又把结果返回给浏览器,终于浏览器拿到了www.google.com对应的IP地址,该进行一步的动作了。

5、如果上述操作还是失败了,那兄弟我就帮不了你了,自求多福吧!!!

结束语:

老实说,这种东西身为一个前端开发攻城狮,不需要太深入,但是基本的了解是很有必要的,即便实际生产项目中不太关心,但是鹅厂的面试多多少少都会提及,多一分了解就多一份可能性

其它前端性能优化:

前端技术架构体系(没有链接的后续跟进):

其它相关

欢迎各位看官的批评和指正,共同学习和成长
希望该文章对您有帮助,你的 支持和鼓励会是我持续的动力

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值