原文: http://106.13.73.98/__/191/
网络通讯大部分是基于 TCP/IP 协议的,而 TCP/IP 是基于 IP 地址的,所以计算机在网络上进行通讯时只能识别如“202.96.134.133”这样的IP地址,而不能识别域名。我们无法记住很多个像这样的IP地址的网站,所以我们访问网站时,更希望的是在浏览器地址栏中输入域名便可看到需要的页面。因此,DNS服务器
便出世了,它能把我们的域名“翻译”成相应的IP地址。
所谓DNS服务器
DNS(Domain Name System)是 域名系统 的英文缩写,它用于 TCP/IP 网络,它所提供的服务是用来将主机名或域名转换为IP地址的。基本工作原理如下图:
DNS解析全过程
当用户在地址栏中输入如:www.baidu.com时,DNS解析大致有如下过程:
- 首先,浏览器先检查自身缓存中有没有这域名对应的IP地址(之前是否解析过),如果有,则解析结束。
- 如果浏览器缓存中没有(专业点叫做未命中),浏览器会检查操作系统缓存中有没有对应的已解析过的域名。
操纵系统也有一个域名解析的过程,在windows中可通过 hosts 文件来定义,如果你在这里指定了一个域名对应的IP地址,那么浏览器会首先使用这个IP地址。- 如果至此还未命中域名,才会真正的请求本地域名服务器——LDNS,来解析这个域名。这台服务器一般在你的城市某个角落,距离你不会很远,并且这台服务器的性能都很好,一般会缓存域名解析结果,大约80%的域名解析到这里就完成了。
- 如果 LDNS 仍未命中,将直接跳转到 Root Server(根域名服务器)请求解析。根域名服务器返回给 LDNS 一个所查询域的 gTLD Server(主域名服务器)地址,即国际顶尖域名服务器,如:.com .cn .org 等。此时,LDNS 再向 gTLD Server 发送查询请求。
- 接受请求的 gTLD Server 查询并返回这个域名对应的 Name Server 地址,就是网站注册的域名服务器。
- LDNS 再向 Name Server 发起请求,Name Server 根据映射关系表找到目标IP,并返回给 LDNS 。
- 此时,LDNS 把解析结果返回给用户,同时缓存这个域名对应的IP地址。
转载:
https://www.cnblogs.com/gopark/p/8430916.html
https://blog.csdn.net/m0_37812513/article/details/78775629