DNS 服务器使用 Berkeley Internet 域名系统 (BIND),或名称守护程序,来提供名称解析,通常称为命名。 BIND 最初是由加州大学伯克利分校的四名学生在 20 世纪 80 年代初开发的。 如图所示,BIND 所使用的 DNS 消息格式是 Internet 中使用最广泛的 DNS 格式。

DNS 服务器中存储不同类型的资源记录,用来解析域名。 这些记录中包含域名、地址以及记录的类型。

这些记录有以下类型:

在客户端进行查询时,服务器的 BIND 进程首先会查看自己的记录以解析名称。 如果服务器不能通过自身存储的记录解析域名,它将连接其他服务器对该域名进行解析。

该解析请求将会发送到很多服务器,因此需要耗费额外的时间,而且耗费带宽。 在检索到匹配信息后,当前服务器将该信息返回至源请求服务器,并将匹配域名的数字地址临时保存在缓存存储器中。

因此,当再次请求解析相同的域名时,第一台服务器就可以直接调用域名缓存中的地址。 通过缓存机制,不但降低了 DNS 查询数据网络的流量,也减少了上层服务器工作的负载。 在安装了 Windows 系统的个人电脑中,DNS 客户端服务可以预先在内存中存储已解析的域名,从而优化 DNS 域名解析性能。 在 Windows 计算机系统中,输入 ipconfig /displaydns 命令可以显示所有 DNS 缓存条目。