作者
Camilo Quiroz-Vázquez
IBM Staff Writer
什么是 DNS 协议?
域名系统 (DNS) 协议是一种机制,允许互联网用户使用主机名而非数字 IP 地址来浏览互联网。DNS 就像是互联网的电话簿;它简化了用户通过网络浏览器查找特定网站的过程。
当 DNS 客户端使用主机名(例如 www.example.com)发出 DNS 请求时,一系列功能将该请求与相应的 IP 地址连接起来。这些功能提供 IP 地址(IPv4 和 IPv6)的身份验证,并通过将可定制的域名转换为复杂的数字地址来简化互联网使用。
为了实现这些功能,DNS 协议依赖于四种类型的 DNS 服务器。当这些服务器正常运行,便能确保这一过程快速且安全。 DNS 服务器使用 DNS 记录(例如包含解析引导信息的 A 记录和 CNAME 记录)来正确路由 DNS 请求。这些文本记录称为“区域文件”,以 DNS 语法编写。
DNS 资源记录存储在权威 DNS 服务器(也称为权威名称服务器)上。它们包含与域相关的信息,包括服务器将缓存 DNS 记录的时间,称为生存时间 (TTL)。这些记录支持域和子域的链接以及电子邮件的正确路由,有助于 DNS 安全等。
在云端保持清醒头脑
获取每周 Think 时事通讯,了解有关在 AI 时代优化多云设置的专家指导。
立即订阅
DNS 协议分步指南
通过以下过程,DNS 查询得到解决,用户与网站托管服务器的 IP 地址相连:
当您使用 DNS 客户端(如电脑、智能设备、任何网络浏览器或应用程序)连接域名时,您会发出所谓的递归查询、DNS 请求、DNS 查找或 DNS 查询。
当从智能手机、计算机或平板电脑等设备发出 DNS 记录请求时,浏览器(例如 Google Chrome)会首先检查其缓存中的记录。如果不存在记录,则查询操作系统级别的解析器。此操作系统组件称为存根解析器,用于检查记录。
如果请求的记录没有在本地缓存,则将引导 DNS 查询,通过一系列外部 DNS 服务器来帮助解析请求。
第一个工作的服务器是递归 DNS 服务器,也称为 DNS 递归器或递归 DNS 解析器,通常由互联网服务提供商 (ISP) 运营。如果可能,递归解析器会使用 DNS 缓存数据来访问所需的站点;如果无法获得这些数据,它就会将请求转发到根名称服务器。
根域名服务器或根 DNS 服务器接受请求,并能够根据站点的扩展名将其路由到称为顶级域名或 TLD 名称服务器的服务器,此类扩展名包括 .com、.org 或 .net,等。
TLD 名称服务器接收针对特定扩展名的请求,并将其发送给权威名称服务器(也称为权威 DNS 服务器或权威域名服务器)。
权威名称服务器包含其管理的 DNS 区域的信息,包括与 DNS 资源记录中存储的特定域名相关的信息,并将域名与相应的 IP 地址连接起来。
信息返回给 DNS 客户端从而完成 DNS 解析。
当 DNS 服务器无法检索到完整的答案时,它就会启动 DNS 迭代查询。服务器将继续通过不同的服务器跳转请求,直到找到 IP 地址或超时又或者出错。
NS1 Connect
IBM NS1 Connect
使用 IBM NS1 Connect 增强网络弹性。我们将在本视频中讨论 IBM NS1 Connect 在应用程序弹性和性能方面的价值。
深入了解 IBM NS1 Connect
DNS 协议规范
域命名空间
DNS 命名空间管理互联网上的公有 DNS 主机名。命名空间创建了一个类似树的结构层次,树中的每个节点都有一个文本标签和描述域的 DNS 资源记录。域名由标签及其父注释的标签组成(这些部分由点分隔,例如“example.com”),并分为多个区域。每个区域均委托特定的法律实体进行管理。这种结构允许为网站指定唯一的名称。
域名语法
域名创建了一个具有不同层次的等级结构。域名由一个或多个称为标签的部分组成,每个部分由一个点分隔。标签最多可包含 63 个字符。
示例:forum.support.example.com
在上例中,“.com ”代表顶级域,“example”代表域名,“support”是“example”下的子域,“forum”是“support”下的子域。
解析 DNS 请求
递归 DNS 服务器也称为 DNS 递归器或递归 DNS 解析器,它与其他 DNS 服务器通信,以查找并返回 IP 地址。该服务器接收 DNS 查询,可以使用所缓存的数据将用户连接到所需的站点。如果未缓存站点数据,它会向权威域名服务器发送后续请求。
权威名称服务器通常是解析 DNS 查询过程的最后一站。该服务器包含该区域内的所有域的资源记录。有时,权威名称服务器需要向其他名称服务器发送请求,以查找特定子域名的信息。
DNS 消息格式
DNS 消息由查询和回复组成,包含以下字段:
包含身份标识、标志、问题和答案数量、权威资源记录 (RR) 数量以及附加资源记录数量的标头。
标志字段,表示信息类型、名称服务器是否权威、查询状态以及是递归查询还是截断查询。
问题部分,包含正在解析的域名和记录类型。
答案部分包含所查询名称的资源记录。
DNS 传输协议
DNS 使用用户数据报协议来回答 DNS 查询,因为它的速度和低开销特性。对于大于 512 字节的 DNS 响应,或者如果服务器正在管理区域传输(将 DNS 记录从主 DNS 服务器传输到从 DNS 服务器)或类似任务,则使用传输控制协议 (TCP)。TCP 支持数据完整性检查,并将消息分解为较小的数据包,以帮助确保消息尽快到达目的地。
DNS 主文件(区域文件)
DNS 主文件存储在 DNS 名称服务器上。它们是为单个 DNS 区域定义 DNS 信息的文本文件,如:
全局生存时间 (TTL):这定义了记录应存储在本地 DNS 缓存中的时间量。
授权开始 (SOA) 记录:这将为给定区域建立主要权威名称服务器。
资源记录:这些记录用于在 DNS 名称服务器中存储主机名、IP 地址和其他信息。
企业级 DNS
从单个用户的角度看,甚至不会察觉到这一过程的发生。对于企业而言,理解 DNS 的工作原理对于维护内外部 Web 服务以及选择托管 DNS 解决方案至关重要。
托管 DNS 解决方案的用例包括:
多 CDN
内容分发网络 (CDN) 是一个全球性的服务器网络,旨在提升内容交付性能并降低延迟。多 CDN 系统允许动态使用多个 CDN 来提供最佳服务。
全局服务器负载均衡 (GSLB)
当服务器过载时,可能发生故障或性能显著下降。 负载均衡是在多台服务器间分配网络流量的过程,而全局服务器负载均衡 (GSLB) 则是在全球各地的数据中心之间高效分配工作负载。
地理路由
托管 DNS 解决方案支持基于最终用户地理位置的自动路由,从而提升网络和应用程序性能。
DNS 流量导向
流量导向使组织能够根据实时用户监控 (RUM) 数据、负载和网络条件优化与应用程序、服务和内容的连接。