DNS域名解析及请求资源的过程

请求资源的过程

当在浏览器中输入url按下enter键后,直到拿到返回数据前,这段时间都发生了些什么?其实发生了很多事情。

大致分为三个过程

1.输入的url域名通过DNS解析成 IP地址返回

2.浏览器向返回的这个IP发送请求信息(包括请求头Request Headers和请求体Request Body)

3.服务器向浏览器返回一个响应信息(包括响应头Response Headers和响应体Response Body)

第2、3步都容易理解,可为什么要线经过第1步呢。我们先来了解一下DNS是什么?

DNS是什么

DNS全称Domain Name System(Domain Name Service),又称域名系统,是互联网的一项服务,

主要用来保存、管理、分配全球的IP地址的,在DNS服务器中保存着域名和IP地址的对应关系,为人们提供域名解析服务。

全球一共有13台根域名服务器,美国10台,英国、瑞典、日本各一台。

DNS架构

服务器的包含关系是:

  根DNS服务器 > 顶级DNS服务器 > 主DNS服务器 > 二级DNS服务器

DNS域名解析及请求资源的过程
图片源自:https://www.cnblogs.com/zengcongcong/p/10750387.html
  
根DNS服务器:掌握着所有顶级DNS的 IP和域名的对应关系

顶级DNS服务器:顶级域名包含.com、.cn、.org等,掌握着主DNS的 IP和域名的对应关系

主DNS服务器:掌握着二级域名DNS服务器的 IP和域名的对应关系

二级域名的DNS服务器 :掌握着你要访问的域名和 IP的对应关系

域名解析大致可以分为如下6步,具体看下图

1.先向DNS缓存(浏览器缓存-->操作系统缓存-->路由器缓存-->当地服务器缓存)查看有没有该域名对应的 IP地址,有直接返回,没有接着往下

2.向根DNS服务器询问域名对应的 IP地址(根DNS服务器会让他去查询顶级DNS服务器)

3.向顶级DNS服务器询问域名对应的 IP地址(顶级DNS服务器会让他去查询主DNS服务器)

4.向主DNS服务器询问域名对应的 IP地址(主服务器会让他去查询二级DNS服务器)

5.向二级DNS服务器询问域名对应的 IP地址(二级DNS服务器会返回对应的 IP地址)

6.接收到 IP地址后,会先把 IP和域名对应关系保存到本地DNS缓存,以便下次方便访问,一般保存在这个路径下C:\Windows\System32\drivers\etc\hosts

DNS域名解析及请求资源的过程

相关推荐