美文网首页
DNS 域名解析

DNS 域名解析

作者: 涯无凌 | 来源:发表于2022-08-05 10:47 被阅读0次

    DNS 作用 :作 域名 与 IP 的映射关系,用户只需要记住域名,而不需要记住不便于记忆的 IP 地址;DNS 服务器就是记录这个映射关系。

    DNS 协议运行在 UDP 协议之上,使用的是 53 端口;DNS 是应用层协议。

    DNS 资源记录(RR) 记录一条 域名信息映射关系。

    image.png
    1. TTL,就是生存周期,是递归服务器会在缓存中保存该资源记录的时长。

    2. 网络/协议类型,它的代表的标识是IN,IN就是internet,目前DNS系统主要支持的协议是IN。

    3. type,就是资源记录类型,一般的网站都是A记录(IPv4的主机地址)。

    4. rdata是资源记录数据,就是域名关联的信息数据。

    DNS 解析过程

    解析的顺序,逐级向上查找:

    1. 如果浏览器有缓存,则使用浏览器的缓存( chrome 为 1 分钟缓存,最大存储 1000 条)

    2. 如果操作系统有缓存,则使用操作系统的缓存(会参考 TTL 值,但不完全是 TTL 值)

    3. 如果本机的 hosts 文件有该域名的设置,则使用 HOST 文件(是否为本机 127.0.0.1 也是在 HOST 文件中,每次修改 hosts 文件会清空操作系统缓存)

      chrome 中的缓存不清,等自行清除;如果在 chrome dns 缓存期间继续访问该域名,则缓存时间会重记,即延长当前缓存

    4. 如果路由器有缓存,则使用路由器的缓存

    5. 向本地 DNS 域名服务器发起 DNS 查询请求(一般由互联网服务提供商即 ISP 提供,在电脑接入网络时就分配)

    6. 向根服务器发起请求,进行递归查询

    实际上每层 DNS 域名服务器都有缓存。

    DNS 服务器递归请求

    如访问 www.baidu.com 域名,会进行如下查询:

    1. 首先本地 DNS 域名服务器向 根域名服务器 发起请求,获取 顶级域名服务器 ( .com )NS 记录和 A 记录( IP 地址 )

    2. 本地域名服务器拿到这个 顶级域名服务器(.com) 的地址后,就向其发起请求,获取 权威域名服务器(.baidu.com,在这里也叫二级域名服务器)NS 记录和 A 记录( IP 地址 )

    3. 本地域名服务器根据 权威域名服务器(.baidu.com) 的地址向其发起请求,最终得到该域名对应的 IP 地址

    实际上可能还有 三级、四级 DNS域名服务器,具体看域名服务商的划分。

    定义上的分级与口头上的分级:

    1)定义:com 为顶级域名,baidu 为二级域名(www.baidu.com 解析等同于 baidu.com,因此没有继续找三级域名服务器)

    2)口头:baidu.com 为一级域名,www.baidu.com 为二级域名,平时习惯按照这个来叫

    image.png

    参考资料

    1. https://www.zhihu.com/question/23042131

    2. https://zhuanlan.zhihu.com/p/107492241

    3. https://zhuanlan.zhihu.com/p/88260838

    4. https://segmentfault.com/a/1190000039039275?utm_source=tag-newest

    相关文章

      网友评论

          本文标题:DNS 域名解析

          本文链接:https://www.haomeiwen.com/subject/lknmwrtx.html