在前面的章节,这里,基于PCAP数据包和RFC文档详细介绍了DNS请求和响应的每个字段的含义。但是在现实的网络世界中,DNS请求和响应的数据包是怎么流动的,会经过哪些设备。本文将着重说明一下目前网络空间中DNS请求和响应的流动过程。
当前网络空间中比较常见DNS请求的流程如下:
图1
- 当一个域名需要解析的时候,会首先查看本机的DNS缓存,寻找对应的记录。
- 本机缓存没有记录的时候,会向本地DNS服务器发送请求。在企业级网络架构中,本地服务器往往在企业的内网中。在家庭宽带用户网络中,本地DNS服务器往往是在接入侧网络中。
- 本地DNS服务器没有记录的时候,会向本地DNS服务器中配置的首选DNS服务器发送请求。在企业级架构中,首选服务器往往是公开的DNS服务器或者一些DNS供应商提供的DNS服务器。在家庭用户网络中,首选服务器往往是不同省份运营商运营的DNS服务器。
- 当首选DNS服务器没有记录的时候,首选DNS服务器便会向根DNS服务器,顶级的DNS服务器,和权威的DNS服务器