权威 DNS 和递归 DNS

DNS

Posted by gomyck on May 8, 2020

DNS(Domain Name System)是一个全球化的分布式数据库,用于存储域名与互联网 IP 地址的映射关系。DNS 分为两大类:权威 DNS,递归 DNS。

原文链接: https://www.alibabacloud.com/help/zh/doc-detail/60303.htm

权威 DNS

权威 DNS 是特定域名记录(例如“example.com”)在域名注册商处所设置的 DNS 服务器,用于特定域名本身的管理(增加、删除、修改等)。

权威 DNS 服务器只对自己所拥有的域名进行域名解析,对于不是自己的域名则拒绝访问。比如,向“example.com”的权威 DNS 服务器查询“test.com”的域名肯定会查询失败。

递归 DNS

递归 DNS(也称本地 DNS 或者缓存 DNS)用于域名查询。递归 DNS 会迭代权威服务器返回的应答,直至最终查询到的 IP 地址,将其返回给客户端,并将请求结果缓存到本地。

对用户发出的域名解析请求,递归 DNS 必须给出一个最终的 IP 地址结果。完整的递归DNS 查询流程需要 DNS 服务器从根域名 “.” 服务器,顶级域名服务器(例如“.com”),一级域名服务器(例如“example.com”)等一级一级递归查询,直到最终找到权威服务器取得结果,并返回给客户。同时,递归服务器根据域名 TTL,缓存查询结果,便于相同域名重复查询。递归 DNS 的访问过程如下图所示(递归 DNS 在图中表示为 Local DNS):

转发DNS

可以理解为递归DNS和用户之间的一个中转站,它不提供直接解析域名的服务,它将请求转发给递归DNS,然后将递归DNS的结果转发一下,也提供缓存作用。比如,日常家用的路由器,它的DNS服务器一般都是192.168.1.1,只是转发给递归DNS。

根域名服务器

根域名服务器是将人类可读的主机名转换(解析)为 IP 地址的第一步。可将其视为指向不同书架的图书馆中的索引 - 一般其作为对其他更具体位置的引用。

TLD 名称服务器

顶级域名服务器(TLD)可看做是图书馆中一个特殊的书架。这个域名服务器是搜索特定 IP 地址的下一步,其上托管了主机名的最后一部分(例如,在 example.com 中,TLD 服务器为 “com”)。

解析过程

  • 用户在 Web 浏览器中键入 “example.com”,查询传输到 Internet 中,并被 DNS 递归解析器接收。
  • 接着,解析器查询 DNS 根域名服务器(.)。
  • 然后,根服务器使用存储其域信息的顶级域(TLD)DNS 服务器(例如 .com 或 .net)的地址响应该解析器。在搜索 example.com 时,我们的请求指向 .com TLD。
  • 然后,解析器向 .com TLD 发出请求。
  • TLD 服务器随后使用该域的域名服务器 example.com 的 IP 地址进行响应。
  • 最后,递归解析器将查询发送到域的域名服务器。
  • example.com 的 IP 地址而后从域名服务器返回解析器。
  • 然后 DNS 解析器使用最初请求的域的 IP 地址响应 Web 浏览器。
  • DNS 查找的这 8 个步骤返回 example.com 的 IP 地址后,浏览器便能发出对该网页的请求:
  • 浏览器向该 IP 地址发出 HTTP 请求。
  • 位于该 IP 的服务器返回将在浏览器中呈现的网页(第 10 步)。

image

综上

权威 DNS 由域名解析服务商建设,提供域名管理服务,维护域名解析记录。

递归 DNS 由网络运营商建设,提供域名查询解析服务。

如果不想使用域名商的权威 DNS, CLOUDFLARE也提供免费的权威 DNS 服务