自 Windows NT 4.0 起,Microsoft 就已将域名系统 (DNS) 服务器服务包括进各种版本的 Windows Server 中。DNS 是一种分层结构的分布式数据库,其中包含 DNS 域名到各种类型数据(如 IP 地址)的映射。随着 Windows Server 2008 的发布,DNS 服务器服务将包含新的后台区域加载、增强对 IPv6 的支持、支持只读域控制器 (RODC) 以及能承载全局单标签名称。
后台区域加载
Windows Server? 2008 中的 DNS 服务器服务通过执行后台区域加载提高了数据检索的速度。过去,当 Windows Server 2003 中的 DNS 服务器服务在重新启动后尝试从 Active Directory 中检索 DNS 数据时,具有在 Active Directory? 中包含大量记录的区域的企业曾经历长达一个小时甚至更长时间的延迟。在此类延迟期间,DNS 服务器对于其任何托管区域的服务 DNS 客户端请求均不可用。
为解决此问题,Windows Server 2008 中的 DNS 服务器服务在启动后将在后台从 Active Directory 检索区域数据,以便对其他区域的数据请求做出响应。在服务启动时,它会创建一个或多个执行线程来加载存储在 Active Directory 中的区域。由于有单独的线程分别加载基于 Active Directory 的区域,因此在进行区域加载的同时,DNS 服务器服务可响应查询。如果 DNS 客户端请求已加载区域中的数据,DNS 服务器会做出适当响应。如果请求的数据位于一个尚未完全检索的区域中,DNS 服务器将改为从 Active Directory 中检索特定数据。
对于在文件中存储区域信息,这种在区域加载期间从 Active Directory 检索特定数据的功能还提供了额外的好处 — 即 DNS 服务器服务能立即响应请求。当区域存储到文件中后,服务必须按顺序通读文件,直到找到数据。
增强对 IPv6 的支持
我们已在本专栏之前的版本中介绍过 IPv6,它是一组新的 Internet 标准协议组件。IPv6 旨在解决当前版本 (IPv4) 存在的多种问题,如地址耗尽、安全性、自动配置和可扩展性需求。
IPv6 的一个不同之处是它的地址长为 128 位,而 IPv4 地址仅为 32 位。IPv6 地址采用冒号十六进制表示法。每个十六进制数字即为 4 位 IPv6 地址。完整表示的 IPv6 地址是分为 8 块的 32 个十六进制数字,用冒号分隔。完整表示的 IPv6 地址的一个示例为 FD91:2ADD:715A:2111:DD48:AB34:D07C:3914。
IPv6 地址的正向名称解析使用 IPv6 主机 DNS 记录,称为 AAAA 记录(发音为“quad-A”)。对于反向名称解析,IPv6 使用 IP6.ARPA 域,由 32 个数字组成的 IPv6 地址中的每个十六进制数字均以相反的顺序变成反向域层次结构中单独的一层。例如,地址 FD91:2ADD:715A:2111:DD48:AB34:D07C:3914 的反向查找域名为 4.1.9.3.C.7.0.D.4.3.B.A.8.4.D.D.1.1.1.2.A.5.1.7.D.D.A.2.1.9.D.F.IP6.ARPA。
Windows Server 2003 中的 DNS 服务器服务支持 IPv6 的正向和反向名称解析;然而,并未完全集成此支持。例如,要在 Windows Server 2003 DNS 管理器插件中创建 IPv6 地址记录(刚讨论过的 AAAA 记录),必须右键单击区域,单击 Other New Records(其他新记录),然后双击 IPv6 Host (AAAA) 作为资源记录类型。要在 Windows Server 2008 的 DNS 管理器插件中添加一条 AAAA 记录,需要右键单击区域名称,然后单击 New Host(新主机)(A 或 AAAA)。在 New Host(新主机)对话框中,可键入 IPv4 或 IPv6 地址。图 1 就是一个示例。
图1