0Pricing
Network+ Academy · 课时

逐步了解 DNS 查询

跟踪查询如何从您的设备到达权威服务器

逐步了解 DNS 查询 是 CoddyKit 上的免费 Network+ Academy 课时。 这是第 2 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Network+ Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Network+ Academy 课程共包含 4 节课。

开始查询

当您输入域名时,设备必须先将其转换为 IP 地址,然后才能建立连接。这个过程称为DNS 查询,并按照清晰的步骤进行。

目标是尽快找到权威答案,并在途中利用缓存来减少工作量。

先检查本地缓存

设备首先检查自己的本地 DNS 缓存和 hosts 文件。如果该名称最近查询过且仍然有效,设备会立即使用缓存中的 IP。

这样可以避免网络查询。缓存也是为什么第二次访问网站通常会比第一次连接更快。

向解析器发出请求

如果本地缓存中没有答案,设备会将查询发送给配置的递归解析器,该解析器通常由 ISP 或公共提供商运行,例如 8.8.8.8。

解析器负责查找答案,按需查询其他服务器,并将最终 IP 返回给设备。

递归与迭代

设备向解析器发出的请求是递归请求:“请为我找到完整答案。”随后,解析器会向层次结构发出迭代查询,每台服务器都会将它指向更接近答案的位置。

递归意味着完成全部工作;迭代意味着提供下一步。解析器连接了这两种方式。

查询根服务器

如果解析器没有缓存任何内容,它会从根服务器开始。根服务器不知道最终答案,但知道哪个TLD 服务器负责处理域名的后缀,例如 .com。

根服务器会返回一条指引,将解析器指向正确的 TLD 服务器。

查询 TLD 服务器

接下来,解析器会询问TLD 服务器(例如负责 .com 的服务器)。TLD 服务器同样不保存最终记录,但它知道特定域名对应的权威名称服务器。

它会返回另一条指引,将搜索范围缩小到该域名自己的服务器。

查询权威服务器

最后,解析器会询问该域名的权威名称服务器,它保存着真实记录。服务器会返回请求名称对应的实际 IP 地址。

这就是最终确定的答案。解析器现在已经获得原始设备所需的信息。

device -> resolver -> root -> TLD -> authoritative -> IP

返回并缓存答案

解析器将 IP 返回给您的设备,设备现在就可以建立连接。解析器和您的设备都会将答案缓存一段时间。

之后对同一名称的查询会跳过完整流程并使用缓存,从而提高系统速度并减轻服务器负载。

查询使用 UDP 端口 53

大多数 DNS 查询通过 UDP 端口 53 传输,因为查询数据量小且频繁,UDP 的速度更快。这种轻量、无连接的传输方式适合快速问答。

对于较大的响应或服务器之间的区域传送,DNS 会切换到 TCP 端口 53。掌握 DNS 使用端口 53 是考试中的常见考点。

DNS query -> UDP 53 (TCP 53 for large transfers)

按顺序整理步骤

在没有任何缓存的情况下,完整路径是:本地缓存 → 递归解析器 → 根服务器 → TLD 服务器 → 权威服务器 → 答案。

请为考试记住这个顺序。每一层要么从缓存中回答,要么将解析器指向更深一层,直到找到权威记录。

路径为何重要

了解查询路径有助于排查故障。如果名称解析失败,您可以测试解析器是否响应、权威服务器是否可访问,以及链路在哪个环节中断。

使用 nslookup 等工具可以直接查询指定服务器,从而确定查询在哪个阶段失败。

快速检查

排列查询顺序。

回顾

您已经完整了解了 DNS 查询过程。

  • 顺序:本地缓存 → 解析器 → 根服务器 → TLD 服务器 → 权威服务器 → 答案。
  • 设备发出递归查询;解析器发出迭代查询。
  • 根服务器指向 TLD 服务器;TLD 服务器指向权威服务器。
  • 权威服务器保存真实记录,并提供最终 IP。
  • 答案会被缓存,以加快后续查询。

常见问题解答

「逐步了解 DNS 查询」课时是免费的吗?

是的 — 「逐步了解 DNS 查询」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Network+ Academy 课程的其余内容,请升级到 CoddyKit PRO。 Network+ Academy 课程共包含 4 节课。

「逐步了解 DNS 查询」这节课中我会学到什么?

跟踪查询如何从您的设备到达权威服务器 你通过在浏览器中直接运行的动手代码来练习 Network+ Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Network+ Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Network+ Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 4 节。

「逐步了解 DNS 查询」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Network+ Academy 课中编写并运行代码吗?

能。每节 Network+ Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. DNS 为何存在
  2. 逐步了解 DNS 查询
  3. 常见 DNS 记录类型
  4. 缓存、TTL 和 DNS 问题
← 返回 Network+ Academy