客户端如何获取区域文件?

客户端如何获取区域文件?

我理解 NS 记录的作用,但我不明白的是如何客户端(例如我的电脑)首先会获取 NS 记录吗?请帮我填补这个空白:

  1. 我想abc.com
  2. 我问???区域文件
  3. 我获取了包含 NS 记录的区域文件信息abc.com,即ns1.xyz.comns2.xyz.com等等
  4. 我向权威域名服务器.com(可通过询问 13 个根服务器获得)询问以下 IP 地址:ns1.xyz.com
  5. 我询问的ns1.xyz.comIP 是什么abc.com。它返回1.2.3.4
  6. 我跟...说话1.2.3.4

在第 2 点中,我首先要查询谁来获取区域文件?我需要知道区域文件在哪里才能知道要向谁询问 IP。但是如何找到区域文件?或者数百万个区域文件中包含的信息存储在哪里?

答案1

如果您以客户端(即 DNS 的消费者)的身份运行,则不需要任何区域文件。通过 IXFR 或 AXFR 请求区域文件被视为不良行为,除非您实际上正在为相关域提供 DNS。

您的解析器将使用根提示来查找.com(gTLD) 名称服务器。然后,gTLD 名称服务器查询数据库以查看哪个名称服务器对该域具有权威性。当用户注册域名时,注册商会更新数据库,并且数据库也由注册商维护 - 因此每次名称服务器 (NS 记录) 发生变化时,注册商都负责将该更改推送到 gTLD 名称服务器。

然后,客户端利用此信息xyz.com向名称服务器查询 的 IP 地址abc.com

答案2

形式非常简单:

  1. 您的 DNS 客户端在其 DNS 客户端缓存中查找答案。如果未找到答案:

  2. DNS 客户端向其 DNS 服务器询问答案。

  3. 客户端的 DNS 服务器在其 DNS 服务器缓存中查找答案。如果未找到答案,则:

  4. 客户端的 DNS 服务器(如果不使用转发器)会向其中一个根提示服务器 (.) 询问答案。

  5. 根提示服务器使用负责相关 gTLD (.com) 的 gTLD 服务器的 NS 进行应答。

  6. 客户端的 DNS 服务器向其中一个 gTLD 服务器查询相关域 (abc.com) 的 NS。

  7. gTLD 服务器使用负责该域名 (abc.com) 的 DNS 服务器的 NS 来应答。

  8. 客户端的 DNS 服务器向 NS(ns1.abc.com)查询相关记录。

  9. 相关域的 NS 回答 DNS 客户端的 DNS 服务器。

  10. 客户端的 DNS 服务器向您的 DNS 客户端提供答案。

顺便提一下,您的 DNS 客户端及其 DNS 服务器均未获取区域文件。

相关内容