【DNS】域名解析过程

  DNS (Domain Name System)是域名系统的简称,用于将 http://www.baidu.com/ 这样的主机名解析为 IP 地址。
  如果浏览器中输入的是 ip 地址,就不需要域名解析这一步了,如果输入的是 http://www.baidu.com/ 这样的域名,具体解析过程大致如下(肯定还有别的):

1、浏览器缓存
  用户通过浏览器浏览过某网站之后,浏览器就会自动缓存该网站域名对应的地址,当用户再次访问的时候,浏览器就会从缓存中查找该域名对应的IP地址,因为缓存不仅是有大小限制,而且还有时间限制,所以存在域名对应的找不到的情况。当浏览器从缓存中找到了该网站域名对应的地址,那么整个解析过程结束,如果没有找到,将进行下一步骤。对于的缓存时间问题,不宜设置太长的缓存时间,时间太长,如果域名对应的发生变化,那么用户将在一段时间内无法正常访问到网站,如果太短,会造成频繁解析域名
2、本地缓存(hosts 文件)
如果浏览器缓存中没有找到(缓存没有命中),则会在本地缓存中找,在 C:\Windows\System32\drivers\etc 下的 hosts 文件,中存储域名对应的 ip;这个过程是操作系统级别的域名解析,修改 hosts 里的内容就可以把特定域名解析到指定 ip 上,造成域名劫持,所以 windows 里 hosts 文件是 readonly
3、本地dns解析器缓存
  在命令行中输入 ipconfig /displaydns 可以查看本地dns解析器缓存
4、本地域名服务器 LDNS
  如果无法在本机上解析,那么需要请求 LDNS 进行解析,LDNS 一般是本地区服务器,比如校园网,由各自运营商提供
5、根域名服务器
  还是没有的话,LDNS 向根域名服务器发起解析请求,根域名服务器返回所查询的通用顶级域名地址(gTLD, Generic Top-Level Domain)如.com,.net这些,一定能查到,然后再往下查
6、顶级域名服务器
  然后,本地域名服务器向 gTLD 服务器发起请求,gTLD 根据需要解析的预警,找到该域名对应的域名服务器(Name Server 服务器)
7、Name Server 服务器返回 ip 地址
  对应的 Name Server 服务器查找到域名对应的地址,将 ip 地址返回给本地域名服务器
8、LDNS 混村解析结果
  本地域名服务器将解析结果缓存,缓存结果有生命周期 TTL(Time to live)
9、返回解析结果给用户
  LDNS 将结果反馈给 本地 DNS 客户机,客户机通过这个 ip 地址与 web 服务器建立连接,至此解析结束
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值