DNS 服务器是专用计算机系统,帮助浏览器、应用程序及其他网络工具定位并连接互联网中的网站与各类资源。
它们构成了域名系统 (DNS) 的基础。DNS 常被称为“互联网的电话簿”,使用户无需记忆或输入数字形式的 IP 地址,只需在浏览器中输入域名即可访问网站。
DNS 由两类服务器构成:一类是递归 DNS 服务器(亦称递归解析器或 DNS 解析器),另一类是权威域名服务器,后者包括根域名服务器、顶级域 (TLD) 服务器以及二级域名服务器。
递归 DNS 服务器负责“发起查询”,定位将客户端连接至网站或资源所需的 DNS 记录;而权威服务器则负责存储这些记录,并提供“应答”。两类服务器协同完成 DNS 解析过程,将人类可读的域名转换为计算机可识别的数字化 IP 地址。
例如,当用户在浏览器中输入主机名(如 www.example.com)时,便会触发一次 DNS 查询(亦称 DNS 请求),从而启动 DNS 解析流程。浏览器会将请求发送至已配置的递归解析器,由其逐级查询各级权威 DNS 服务器,直至找到满足用户请求的资源记录。
这一过程会持续进行,直至解析器定位到与该域名对应的权威服务器,并获取包含其正确 IP 地址的 A 记录(或用于 IPv6 的 AAAA 记录)。随后,解析器将该 IP 地址返回给浏览器,用户即可成功访问所需资源。
DNS 服务器是支撑 DNS 与互联网正常运作的关键基础设施,使其能够以用户熟悉的方式顺畅运行。
DNS 服务器既负责定位与存储 DNS 记录,也在查询沿 DNS 分层结构逐级传递时,推动解析过程的完成。最高层由 DNS 根域名服务器构成,它们将查询引导至相应的顶级域服务器,继而转发至二级域名服务器,后者保存着特定域名的权威记录。
DNS 记录类型繁多,构成了一套类似数据库的指令体系,用于指明资源位置,并承载其他关键的 DNS 信息。最常见的示例是 A 记录(用于 IPv4 地址)或 AAAA 记录(用于 IPv6 地址),其中包含浏览器访问目标网站所需的 IP 地址。
此外,还有将流量指向域名邮件服务器的 MX 记录、将别名域映射至规范域的 CNAME 记录,以及可通过单条记录重定向多个子域并指向另一域的 DNAME 记录等。
这些记录托管于权威 DNS 服务器之上,而要确保 DNS 正常运作,这些服务器必须始终保持稳定与安全。一旦 DNS 服务器无法正常运作,DNS 体系也将不复存在。
最初,开发人员为 DNS 设计了分层分布式数据库结构,以促进更动态的域名解析方法,这种方法可以与快速扩展的计算机网络保持同步。该层次结构从根级开始,使用点 (.) 表示,然后分支为顶级域 (TLD),比如“.com”、“.org”、“.net”或国家/地区代码 TLD (ccTLD),比如“.uk”和“.jp”,以及二级域名。
DNS 架构包括两种类型的 DNS 服务器,即递归服务器和权威服务器。递归 DNS 服务器是执行“询问”的服务器,搜索将用户连接到网页或资源的信息。权威服务器给出了“解决方案”。
递归服务器,也称为递归解析器或 DNS 解析器,通常由互联网服务提供商 (ISP) 或其他第三方 DNS 服务提供商管理。组织也可以自行部署并管理递归解析器。
递归解析器代表最终用户将域名解析为 IP 地址。递归解析器还会对查询结果进行缓存(即临时存储近期 DNS 查询的结果),并在特定时间内保留(由生存时间 (TTL) 值定义),从而提升后续对同一域名查询的系统效率。
当用户在搜索浏览器中输入网址时,浏览器会连接到递归 DNS 服务器来解析请求。如果递归服务器恰好缓存了答案,它可以连接用户并完成请求。否则,递归解析器将沿着 DNS 层级逐级查询,直至获取包含目标域名 IP 地址的 A(或 AAAA)记录。
权威域名服务器保存域名的最终记录,并响应有关其各自区域内存储的域名的请求(通常由域名所有者配置答案)。系统中存在多个权威服务器,分别负责命名空间中的不同区段。
权威 DNS 域名服务器包括:
根域名服务器
根域名服务器位于 DNS 层次结构的顶部,负责服务根区域(DNS 的中央数据库)。共有 13 个以字母 A 至 M 标识的根域名服务器“标识”(即根服务器的逻辑分组)。它们负责响应根区域内记录的查询,并将请求引导至相应的顶级域 (TLD) 域名服务器。
顶级域名 (TLD) 服务器
TLD 服务器负责管理层次结构的下一级,包括通用顶级域 (gTLD)。TLD 域名服务器将查询定向到其 TLD 中特定域名的权威域名服务器。因此“.com”的 TLD 域名服务器将引导以“.com”结尾的域,而“.gov”的 TLD 域名服务器将引导以“.gov”结尾的域,等等。
其他域名服务器
二级域名服务器(大多数域名服务器)保存包含完整域名 IP 地址(例如“ibm.com”)的区域文件。
DNS 服务器是 DNS 系统运行的基础设施,也是支撑其核心功能的关键组件,即将用户与互联网资源进行连接。权威 DNS 服务器负责存储 DNS 记录,而递归 DNS 服务器则向其发起查询,以获取完成 DNS 请求所需的具体记录。
DNS 查询解析过程涉及多个关键步骤与核心组件:
用户在浏览器或应用程序中输入域名,例如“ibm.com”。如果该网站对应的 IP 地址不在浏览器缓存中,请求将被发送至递归 DNS 解析器。通常,用户设备会配置由 ISP 提供的默认 DNS 设置,用于指定由哪个递归解析器接收该请求。
这一过程正在不断演进,许多现代浏览器已支持 DNS over HTTPS(DoH),使 DNS 查询能够通过 HTTPS 进行,同时许多服务提供商也已部署相应的解析服务器。例如,在美国使用 Firefox 时,系统默认会将 DNS 查询发送至 Cloudflare 的 DoH 服务器,而非本地 ISP 提供的解析器。DoH 正逐渐普及,因为它在隐私保护、性能优化等方面具有优势。
递归解析器检查自己的缓存中是否有域的相应 IP 地址。如果递归解析器的缓存中没有必要的记录,它将从根服务器开始启动查找过程。
递归解析器查询根域名服务器,该服务器通过引用相关域的相应 TLD 服务器(在本例中,负责“.com”的 TLD 域名服务器)进行响应。
解析器查询“.com”TLD 域名服务器,该服务器使用“ibm.com”的权威域名服务器的地址进行响应。
解析器查询域的域名服务器,该服务器查找 DNS 区域文件,并使用所提供域名响应正确的记录。
递归解析器将 IP 地址返回到用户设备。然后,浏览器或应用程序可以使用该 IP 地址发起向主机服务器的连接,以访问所请求的网站或服务。浏览器和解析器根据各自的配置和 TTL 缓存记录。
DNS 本质上是一种开放的公共协议。 尽管“公共 DNS”和“私有 DNS”这两个术语在不同语境中存在多种用法,且均缺乏统一的标准定义,但它们通常用于指代两种不同的基础设施架构与运作方式。二者最主要的区别在于其设计用途与服务对象。
公共 DNS 通常用于指代“标准”DNS 解析流程或公共 DNS 解析器。在这一过程中,递归解析器会逐级查询存有公开 DNS 记录的权威服务器,以定位对应的 IP 地址,并最终将用户连接至其所访问的网站。这类解析器通常由用户的互联网服务提供商(ISP)或 DNS 服务提供商提供,例如 Google 的“8.8.8.8”(Quad 8)公共 DNS。私有解析器也可配置为查询公共 DNS,但更常用于受限网络或企业级网络环境。
这种标准 DNS 查找可能被称为公共 DNS,因为这些解析器是公开可用的,并且任何能访问互联网的人都可以访问这些权威服务器上的 DNS 记录。
“私有 DNS”有时用于描述使用加密协议,例如 DNS over TLS (DoT) 或 DNS over HTTPS (DoH)。然而,更准确的表述应是将其称为“隐私功能”或“隐私协议”,而非“私有 DNS”。其解析流程本身并未改变,仍然是解析器利用公开可用的 DNS 来完成查询。不同之处仅在于数据传输采用了加密方式。
私有 DNS 也可用于指在封闭的内部网络中进行域名解析,例如企业网络或虚拟私有云 (VPC),其访问权限仅限授权用户。在此类系统中,本地配置的私有解析器会向内部私有服务器发起查询,以定位内网中的资源与站点。这些服务器通常仅服务于私有区域和内部 IP 地址,同时网络会将内部 URL 与 IP 地址对外部互联网隐藏。这种私有 DNS 架构为组织提供了更高的控制能力与安全性。
配置这类网络的方法有很多种。一种方法是通过".local "等特殊用途域,用于本地网络的解析。另一种方法是在互联网上公开的域名中创建私有子域名。该私有子域仅对内部网络中使用解析器的个人或智能体开放。
一种常见的企业级 DNS 架构,将“公共 DNS”和“私有 DNS”结合使用,被称为“分割视图 DNS”,也称“分裂脑 DNS”。在该配置中,本地递归解析器会向内部的私有权威 DNS 服务器发起查询以处理内部请求,而对外部请求则依赖标准公共 DNS 系统。水平分割 DNS 通常会维护一个域名列表(类似“允许列表”),用于指示哪些请求应路由至内部服务器,哪些请求应转发至公共互联网。
当主 DNS 服务器被隐藏(位于内部网络或防火墙之后)时,该 DNS 区域的主要权威源将无法被外部互联网直接访问,从而避免遭受直接攻击。通常只有辅助 DNS 服务器(保存区域文件的只读副本)对外公开;这些服务器通过与主服务器进行区域传输来解析所有面向公众的查询。
DNSSEC 是 DNS 的一种扩展机制,通过加密认证方式验证请求来源以及 DNS 数据的完整性。通过要求 DNS 响应进行数字签名,DNSSEC 可有效防范 DNS 欺骗攻击。
攻击者和网络安全威胁的演变方式与它们入侵的系统类似。持续关注最新的 DNS 漏洞,并定期对 DNS 服务器进行补丁修复与更新,有助于团队提前防范网络安全威胁,保障服务器安全稳定运行。
对 DNS 流量进行加密,有助于防止攻击者读取、篡改或重定向 DNS 查询与响应。采用现代 DNS 加密协议(如 DNS over HTTPS 与 DNS over TLS),可确保查询在认证后安全传输,从而防止中间人攻击,例如 DNS 欺骗与缓存投毒。
DNS 服务器实施速率限制,可通过限制在特定时间内向单一请求者发送响应的数量或频率,从而缓解分布式拒绝服务 (DDoS) 攻击。
在多个地理位置分散的服务器上部署 DNS 的冗余配置,有助于在发生攻击或中断时确保网络可用性。如果主服务器出现故障,辅助 DNS 服务器可以接管 DNS 解析服务。
清除 DNS 缓存会移除本地缓存中的所有记录,这有助于清理无效或被篡改的 DNS 条目,例如可能携带恶意软件的缓存投毒记录,以及可能导致用户遭受钓鱼攻击或被重定向至恶意网站的 DNS 劫持记录。
水平分割 DNS 为私有内部资源与公共资源分别建立独立的解析查询体系。私有服务器网络将内部资源的可见范围限制在受信任用户之内,从而提升整体安全性。面向公众的服务器可通过标准 DNS 查询访问,用于处理敏感度较低的查询与资源请求。
IBM NS1 Connect 是一项完全托管的云服务,用于企业 DNS、DHCP、IP 地址管理和应用程序流量导向。
IBM 的云网络解决方案可实现高性能连接,为应用程序和业务提供支持。
使用 IBM Technology Lifecycle Services 整合数据中心支持,以实现云网络等。