DNS 阅读 2095
DNS 第3章 查询过程

DNS 第3章 查询过程

2023-06-02 • lulubin

虽然只需要返回一个 IP 地址,但是 DNS 的查询过程非常复杂,分成多个步骤。

工具软件 dig 可以显示整个查询过程,dig 安装教程

dig math.stackexchange.com

上面的命令会输出六段信息

https://file.lulublog.cn/images/3/2023/06/H8888w8F8f6aH4GH2aH8HB9B98H49B.jpg?sign=446d575a83ccde021cd2b4a9cf713243&t=6af33f80

第一段是查询参数和统计

https://file.lulublog.cn/images/3/2023/06/EBQIkHIp55ipB0hbPqCYUmS5KhmS0h.jpg?sign=42cc753a4e0aa8a312c8253a2340120d&t=6af33f80

第二段是查询内容

https://file.lulublog.cn/images/3/2023/06/CG6WOAo842Lqk46A4aIL64888y4koq.jpg?sign=d4000dcbac072fda5bc2b880744ce544&t=6af33f80

上面结果表示,查询域名 math.stackexchange.com 的 A 记录,A 是 address 的缩写

第三段是 DNS 服务器的答复

https://file.lulublog.cn/images/3/2023/06/n7M7YJYRIuYM2MMEI1BE142GgRr8B9.jpg?sign=85b3e149c2dea08915a175314fad660f&t=6af33f80

上面结果显示,math.stackexchange.com 有四个 A 记录,即四个 IP 地址。

113 是 TTL 值(Time to live 的缩写),表示缓存时间,即 113 秒之内不用重新查询。 

第四段显示 stackexchange.com 的 NS 记录(Name Server 的缩写),即哪些服务器负责管理stackexchange.com 的 DNS 记录。

https://file.lulublog.cn/images/3/2023/06/ahtHWaZebtOt8qBHpD4hSQStDseEOa.jpg?sign=73a15819802a855a6a6ae18c3b5dfcb0&t=6af33f80

上面结果显示 stackexchange.com 共有四条 NS 记录,即四个域名服务器,向其中任一台查询就能知道 math.stackexchange.com 的IP地址是什么。

第五段是上面四个域名服务器的 IP 地址,这是随着前一段一起返回的。

https://file.lulublog.cn/images/3/2023/06/LHLoNumrRMXUwkxRkNlZ4rlMTilR4W.jpg?sign=d913841c939f2fe1ddf61a31c5b97d55&t=6af33f80

第六段是 DNS 服务器的一些传输信息。

https://file.lulublog.cn/images/3/2023/06/gFdZzMqFQbZGHl76zj8bdDk7MyfB6B.jpg?sign=f23494010be1e76b4d99e5cffb2d27bc&t=6af33f80

上面结果显示,本机的 DNS 服务器是 192.168.68.1,查询端口是 53(DNS服务器的默认端口),以及回应长度是 412 字节。

如果不想看到这么多内容,可以使用+short 参数。

dig +short math.stackexchange.com

https://file.lulublog.cn/images/3/2023/06/vYjl4HbYBqrb0mQmyr0YnHMbZ40ybB.jpg?sign=53b9812fbadbc163e56ac4838c6feede&t=6af33f80

上面命令只返回 math.stackexchange.com 对应的 4 个 IP 地址(即 A 记录)。