0%

dns

简介

为什么需要DNS解析域名为IP地址

网络通许是基于TCP/IP,IP不好记,域名可读性以及可记忆性更强,DNS就是将域名解析为实际IP

DNS

DNS( Domain Name System)是“域名系统”的英文缩写
用于TCP/IP网络,它所提供的服务是用来将主机名和域名转换为IP地址的工作;
64e9bda9af8a38340f2f9943b1f36945.jpeg

DNS 体系架构

通信方式

UDP,53端口

为什么域名根服务器只能有13台呢

工作过程

当 DNS 客户机需要查询程序中使用的名称时,它会查询本地DNS 服务器来解析该名称。客户机发送的每条查询消息都包括3条信息,以指定服务器应回答的问题

  1. 指定的 DNS 域名,表示为完全合格的域名 (FQDN)
  2. 指定的查询类型,它可根据类型指定资源记录,或作为查询操作的专门类型
  3. DNS域名的指定类别

解析顺序

  1. 浏览器缓存
    当用户通过浏览器访问某域名时,浏览器首先会在自己的缓存中查找是否有该域名对应的IP地址(若曾经访问过该域名且没有清空缓存便存在);
  2. 系统缓存
      当浏览器缓存中无域名对应IP则会自动检查用户计算机系统Hosts文件DNS缓存是否有该域名对应IP;
  3. 路由器缓存
      当浏览器及系统缓存中均无域名对应IP则进入路由器缓存中检查,以上三步均为客服端的DNS缓存;
  4. ISP(互联网服务提供商)DNS缓存
      当在用户客服端查找不到域名对应IP地址,则将进入ISP DNS缓存中进行查询。比如你用的是电信的网络,则会进入电信的DNS缓存服务器中进行查找;
  5. 根域名服务器
      当以上均未完成,则进入根服务器进行查询。全球仅有13台根域名服务器,1个主根域名服务器,其余12为辅根域名服务器。根域名收到请求后会查看区域文件记录,若无则将其管辖范围内顶级域名(如.com)服务器IP告诉本地DNS服务器;
  6. 顶级域名服务器
      顶级域名服务器收到请求后查看区域文件记录,若无则将其管辖范围内主域名服务器的IP地址告诉本地DNS服务器;
  7. 主域名服务器
      主域名服务器接受到请求后查询自己的缓存,如果没有则进入下一级域名服务器进行查找,并重复该步骤直至找到正确纪录;
  8. 保存结果至缓存
      本地域名服务器把返回的结果保存到缓存,以备下一次使用,同时将该结果反馈给客户端,客户端通过这个IP地址与web服务器建立链接。