DNS域名解析介绍 DNS域名解析介绍

DNS域名解析介绍

一、域名解析的过程

当我们在浏览器的地址栏输入一个地址链接时,其实发生了很多事情。其中最初的一步就是目标主机地址的解析。这个过程是比较复杂的,下面主要讲解域名解析的主要过程。例如,我们在地址栏输入www.baidu.com,那么在解析这个域名的过程中主要发生了如下的动作:

  1. 浏览器会检查缓存中有没有这个域名对应的解析过的IP地址,如果缓存中有,这个解析过程就将结束。浏览器对域名的缓存是有时间限制,一般情况下是几十秒,不同的浏览器TTL不同。谷歌浏览器可以通过这个地址来查看域名过期情况。chrome://net-internals/#dns
  2. 如果用户的浏览器缓存中没有,浏览器会查找操作系统缓存中是否有这个域名对应的DNS解析结果。本机操作系统缓存的DNS域名结果存在的时间长短不一致。可以通过ipconfig/displaydns来查看本机操作对各个域名的缓存结果。
  3. 如果在本机操作系统缓存中还是无法获取到对应的DNS,那么就会读取操作系统中的静态DNS即hosts文件。文件的存放地址如下: 
    C:\Windows\System32\drivers\etc\hosts
  4. 如果在hosts文件中还是无法找到对应的DNS,那么就会到ISP中的DNS服务器中取查找。这个ISP就是你连接网络的供应商,如电信、联通。至此,绝大多数的DNS都会在这里被解析到。ISP中的DNS也有缓存,我们可以通过nslookup -d www.zhihu.com来查看。
  5. 如果在ISP的DNS服务器中还是无法找到,就会到国际顶级域名服务器gTLD,如.com、.cn、.org等。
  6. 找到对应DNS的对应关系之后会返回一个TTL值和IP,ISP的DNS服务器就会根据这个TTL值来进行缓存,并继续返回给客户端,本地操作系统得到这个值之后也会进行缓存。 
    至此,一个完整的域名解析过程就完了。

二、域名访问常见问题

在我们开发web项目的过程中时常会碰到这样的问题:修改了host文件之后,在浏览输入地址时总访问不到想要的结果。这里如果你对DNS域名解析的过程有所了解的话应该会明白,那就是当你前一步访问这个域名时已经在浏览器和本地操作系统中存在了该域名的缓存。此时的做法有两个: 
1.清除浏览器缓存或者等待1分钟浏览器域名缓存自动过期。 
2.清楚操作系统缓存。ipconfig/flushdns


一、域名解析的过程

当我们在浏览器的地址栏输入一个地址链接时,其实发生了很多事情。其中最初的一步就是目标主机地址的解析。这个过程是比较复杂的,下面主要讲解域名解析的主要过程。例如,我们在地址栏输入www.baidu.com,那么在解析这个域名的过程中主要发生了如下的动作:

  1. 浏览器会检查缓存中有没有这个域名对应的解析过的IP地址,如果缓存中有,这个解析过程就将结束。浏览器对域名的缓存是有时间限制,一般情况下是几十秒,不同的浏览器TTL不同。谷歌浏览器可以通过这个地址来查看域名过期情况。chrome://net-internals/#dns
  2. 如果用户的浏览器缓存中没有,浏览器会查找操作系统缓存中是否有这个域名对应的DNS解析结果。本机操作系统缓存的DNS域名结果存在的时间长短不一致。可以通过ipconfig/displaydns来查看本机操作对各个域名的缓存结果。
  3. 如果在本机操作系统缓存中还是无法获取到对应的DNS,那么就会读取操作系统中的静态DNS即hosts文件。文件的存放地址如下: 
    C:\Windows\System32\drivers\etc\hosts
  4. 如果在hosts文件中还是无法找到对应的DNS,那么就会到ISP中的DNS服务器中取查找。这个ISP就是你连接网络的供应商,如电信、联通。至此,绝大多数的DNS都会在这里被解析到。ISP中的DNS也有缓存,我们可以通过nslookup -d www.zhihu.com来查看。
  5. 如果在ISP的DNS服务器中还是无法找到,就会到国际顶级域名服务器gTLD,如.com、.cn、.org等。
  6. 找到对应DNS的对应关系之后会返回一个TTL值和IP,ISP的DNS服务器就会根据这个TTL值来进行缓存,并继续返回给客户端,本地操作系统得到这个值之后也会进行缓存。 
    至此,一个完整的域名解析过程就完了。

二、域名访问常见问题

在我们开发web项目的过程中时常会碰到这样的问题:修改了host文件之后,在浏览输入地址时总访问不到想要的结果。这里如果你对DNS域名解析的过程有所了解的话应该会明白,那就是当你前一步访问这个域名时已经在浏览器和本地操作系统中存在了该域名的缓存。此时的做法有两个: 
1.清除浏览器缓存或者等待1分钟浏览器域名缓存自动过期。 
2.清楚操作系统缓存。ipconfig/flushdns


猜你喜欢

转载自blog.csdn.net/weixin_41909810/article/details/82261514