Windows Server 2008中DNS的增強(qiáng)功能
自 Windows NT 4.0 起,Microsoft 就已將 DNS(域名系統(tǒng)) 服務(wù)器服務(wù)包括進(jìn)各種版本的 Windows Server 中。DNS 是一種分層結(jié)構(gòu)的分布式數(shù)據(jù)庫(kù),其中包含 DNS 域名到各種類型數(shù)據(jù)(如 IP 地址)的映射。隨著 Windows Server 2008 的發(fā)布,DNS 服務(wù)器服務(wù)將包含新的后臺(tái)區(qū)域加載、增強(qiáng)對(duì) IPv6 的支持、支持只讀域控制器 (RODC) 以及能承載全局單標(biāo)簽名稱。
后臺(tái)區(qū)域加載
Windows Server 2008 中的DNS服務(wù)器服務(wù)通過執(zhí)行后臺(tái)區(qū)域加載提高了數(shù)據(jù)檢索的速度。過去,當(dāng)Windows Server 2003中的DNS服務(wù)器服務(wù)在重新啟動(dòng)后嘗試從Active Directory中檢索DNS 數(shù)據(jù)時(shí),具有在Active Directory中包含大量記錄的區(qū)域的企業(yè)曾經(jīng)歷長(zhǎng)達(dá)一個(gè)小時(shí)甚至更長(zhǎng)時(shí)間的延遲。在此類延遲期間,DNS 服務(wù)器對(duì)于其任何托管區(qū)域的服務(wù)DNS 客戶端請(qǐng)求均不可用。
為解決此問題,Windows Server 2008 中的 DNS 服務(wù)器服務(wù)在啟動(dòng)后將在后臺(tái)從 Active Directory 檢索區(qū)域數(shù)據(jù),以便對(duì)其他區(qū)域的數(shù)據(jù)請(qǐng)求做出響應(yīng)。在服務(wù)啟動(dòng)時(shí),它會(huì)創(chuàng)建一個(gè)或多個(gè)執(zhí)行線程來加載存儲(chǔ)在 Active Directory 中的區(qū)域。由于有單獨(dú)的線程分別加載基于Active Directory的區(qū)域,因此在進(jìn)行區(qū)域加載的同時(shí),DNS 服務(wù)器服務(wù)可響應(yīng)查詢。如果 DNS 客戶端請(qǐng)求已加載區(qū)域中的數(shù)據(jù),DNS 服務(wù)器會(huì)做出適當(dāng)響應(yīng)。如果請(qǐng)求的數(shù)據(jù)位于一個(gè)尚未完全檢索的區(qū)域中,DNS 服務(wù)器將改為從 Active Directory 中檢索特定數(shù)據(jù)。
對(duì)于在文件中存儲(chǔ)區(qū)域信息,這種在區(qū)域加載期間從Active Directory 檢索特定數(shù)據(jù)的功能還提供了額外的好處 — 即DNS 服務(wù)器服務(wù)能立即響應(yīng)請(qǐng)求。當(dāng)區(qū)域存儲(chǔ)到文件中后,服務(wù)必須按順序通讀文件,直到找到數(shù)據(jù)。
增強(qiáng)對(duì) IPv6 的支持
我們已在本專欄之前的版本中介紹過 IPv6,它是一組新的 Internet 標(biāo)準(zhǔn)協(xié)議組件。IPv6 旨在解決當(dāng)前版本 (IPv4) 存在的多種問題,如地址耗盡、安全性、自動(dòng)配置和可擴(kuò)展性需求。
IPv6 的一個(gè)不同之處是它的地址長(zhǎng)為 128 位,而 IPv4 地址僅為 32 位。IPv6 地址采用冒號(hào)十六進(jìn)制表示法。每個(gè)十六進(jìn)制數(shù)字即為 4 位 IPv6 地址。完整表示的 IPv6 地址是分為 8 塊的 32 個(gè)十六進(jìn)制數(shù)字,用冒號(hào)分隔。完整表示的 IPv6 地址的一個(gè)示例為 FD91:2ADD:715A:2111:DD48:AB34:D07C:3914。
IPv6 地址的正向名稱解析使用 IPv6 主機(jī) DNS 記錄,稱為 AAAA 記錄(發(fā)音為“quad-A”)。對(duì)于反向名稱解析,IPv6 使用 IP6.ARPA 域,由 32 個(gè)數(shù)字組成的 IPv6 地址中的每個(gè)十六進(jìn)制數(shù)字均以相反的順序變成反向域?qū)哟谓Y(jié)構(gòu)中單獨(dú)的一層。例如,地址 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 服務(wù)器服務(wù)支持 IPv6 的正向和反向名稱解析;然而,并未完全集成此支持。例如,要在 Windows Server 2003 DNS 管理器插件中創(chuàng)建 IPv6 地址記錄(剛討論過的 AAAA 記錄),必須右鍵單擊區(qū)域,單擊 Other New Records(其他新記錄),然后雙擊 IPv6 Host (AAAA) 作為資源記錄類型。要在 Windows Server 2008 的 DNS 管理器插件中添加一條 AAAA 記錄,需要右鍵單擊區(qū)域名稱,然后單擊 New Host(新主機(jī))(A 或 AAAA)。在 New Host(新主機(jī))對(duì)話框中,可鍵入 IPv4 或 IPv6 地址。圖 1 就是一個(gè)示例。
圖1 IPv6地址
#p#
更好地支持 IPv6 的另一示例是針對(duì)反向 IPv6 區(qū)域的。要在 Windows Server 2003 的 DNS 管理器插件中創(chuàng)建反向查找區(qū)域,必須在 New Zone Wizard(新區(qū)域向?qū)?的 Reverse Lookup Zone Name(反向查找區(qū)域名稱)頁面中手動(dòng)鍵入反向區(qū)域名稱。DNS 反向區(qū)域名稱的一個(gè)示例是 1.0.0.0.0.0.0.0.8.b.d.0.1.0.0.2.ip6.arpa(對(duì)于 IPv6 子網(wǎng)前綴 2001:db8:0:1::/64,完整表示為 2001:0db8:0000:0001::/64)。
Windows Server 2008 的 DNS 管理器插件中的 IPv6 反向區(qū)域現(xiàn)已完全集成到 New Zone wizard(新區(qū)域向?qū)?中。此向?qū)в幸粋€(gè)新頁面,它會(huì)提示您選擇 IPv4 反向查找區(qū)域還是 IPv6 反向查找區(qū)域。對(duì)于 IPv6 反向查找區(qū)域,只需鍵入 IPv6 子網(wǎng)前綴,向?qū)?huì)自動(dòng)為您創(chuàng)建區(qū)域。圖 2 就是一個(gè)示例。
圖2 命名IPv6反向查詢區(qū)域
針對(duì)反向區(qū)域的另一增強(qiáng)功能是 DNS 管理器插件顯示 IPv6 指針 (PTR) 記錄的方法。圖 3 說明了 Windows Server 2003 的 DNS 管理器插件如何顯示 PTR 記錄。
圖3 Windows Server 2003中IPv6 的PTR記錄
盡管此顯示準(zhǔn)確地反映了 IPv6 反向域名的 DNS 命名空間結(jié)構(gòu),但是它使得 IPv6 地址的 PTR 記錄管理更加困難。圖 4 說明了 Windows Server 2008 的 DNS 管理器插件如何顯示 PTR 記錄。
圖4 Windows Server 2008中IPv6的PTR 記錄
Windows Server 2003 中的 DNS 服務(wù)器服務(wù)支持對(duì) IPv6 的操作,但必須通過 dnscmd /config /EnableIPv6 1 命令來手動(dòng)啟動(dòng)它。Windows Server 2008 則默認(rèn)支持對(duì) IPv6 的操作。Dnscmd.exe 命令行工具已更新為在命令行選項(xiàng)中接受 IPv6 地址。此外,DNS 服務(wù)器服務(wù)現(xiàn)在可向僅面向 IPv6 的服務(wù)器發(fā)送遞歸查詢,并且服務(wù)器轉(zhuǎn)發(fā)器列表可包含 IPv4 和 IPv6 兩種地址。
只讀域控制器支持
Windows Server 2008 還引入了 RODC,它是一種新型域控制器,包含 Active Directory 信息的只讀副本并可執(zhí)行 Active Directory 功能,但無法直接進(jìn)行配置。RODC 不易受到攻擊,可放置在域控制器的物理安全性無法得到保證或網(wǎng)絡(luò)包含潛在惡意主機(jī)的位置。
對(duì)于 RODC,Windows Server 2008 中的 DNS 服務(wù)器服務(wù)支持新的主要只讀區(qū)域類型。當(dāng)計(jì)算機(jī)變?yōu)?RODC 后,它會(huì)將 DNS 使用的所有應(yīng)用程序目錄分區(qū)復(fù)制一份完整的只讀副本,包括域分區(qū)、ForestDNSZone 和 DomainDNSZone。這樣可以確保 RODC 上運(yùn)行的 DNS 服務(wù)器服務(wù)具有存儲(chǔ)在非 RODC 域控制器的目錄分區(qū)中的任意 DNS 區(qū)域的完整只讀副本。可查看但無法更改 RODC 上主要只讀區(qū)域的內(nèi)容。必須在非 RODC 域控制器上更改區(qū)域的內(nèi)容。
Windows Server 2008 和 Windows Vista 支持基于 TCP/IP 協(xié)議的 NetBIOS (NetBT)。NetBT 使用 NetBIOS 名稱來識(shí)別會(huì)話層的 NetBIOS 應(yīng)用程序。當(dāng)前版本的 Windows 依賴基于 Windows 套接字的網(wǎng)絡(luò)應(yīng)用程序和 DNS 來實(shí)現(xiàn)名稱解析,盡管它們已不再需要使用 WINS 來實(shí)現(xiàn) NetBIOS 名稱解析,但許多 Microsoft 客戶仍在他們的網(wǎng)絡(luò)中部署 WINS,以支持舊版 NetBT 應(yīng)用程序并在整個(gè)組織提供單標(biāo)簽名稱的名稱解析。單標(biāo)簽名稱通常指組織中重要、眾所周知且廣泛使用的服務(wù)器(如電子郵件服務(wù)器、中央 Web 服務(wù)器或用于業(yè)務(wù)線應(yīng)用程序的服務(wù)器)。
為允許僅使用 DNS 來在整個(gè)組織解析這些單標(biāo)簽名稱,必需向組織的多個(gè) DNS 域添加 A 記錄,這樣基于 Windows 的 DNS 客戶端可直接解析名稱,而不必考慮分配的 DNS 域后綴或后綴搜索列表。
#p#
GlobalNames 區(qū)域
Windows Server 2008 和 Windows Vista 支持基于 TCP/IP 協(xié)議的 NetBIOS (NetBT)。NetBT 使用 NetBIOS 名稱來識(shí)別會(huì)話層的 NetBIOS 應(yīng)用程序。當(dāng)前版本的 Windows 依賴基于 Windows 套接字的網(wǎng)絡(luò)應(yīng)用程序和 DNS 來實(shí)現(xiàn)名稱解析,盡管它們已不再需要使用 WINS 來實(shí)現(xiàn) NetBIOS 名稱解析,但許多 Microsoft 客戶仍在他們的網(wǎng)絡(luò)中部署 WINS,以支持舊版 NetBT 應(yīng)用程序并在整個(gè)組織提供單標(biāo)簽名稱的名稱解析。單標(biāo)簽名稱通常指組織中重要、眾所周知且廣泛使用的服務(wù)器(如電子郵件服務(wù)器、中央 Web 服務(wù)器或用于業(yè)務(wù)線應(yīng)用程序的服務(wù)器)。
為允許僅使用 DNS 來在整個(gè)組織解析這些單標(biāo)簽名稱,必需向組織的多個(gè) DNS 域添加 A 記錄,這樣基于 Windows 的 DNS 客戶端可直接解析名稱,而不必考慮分配的 DNS 域后綴或后綴搜索列表。
例如,假定 contoso.com 或組織擁有一個(gè)名為 CWEB 的中央 Web 服務(wù)器,它是 central.contoso.com 域的一個(gè)成員。要在可向 DNS 客戶端分配 DNS 域后綴 wcoast.contoso.com、central.contoso.com 或 ecoast.contoso.com 時(shí)實(shí)現(xiàn)服務(wù)器 CWEB 的單標(biāo)簽名稱,網(wǎng)絡(luò)管理員必須為 cweb.wcoast.contoso.com 和 cweb.ecoast.contoso.com 分別創(chuàng)建兩個(gè)附加 A 記錄。但是,切記必須在 IPv4 地址分配發(fā)生更改時(shí)或出現(xiàn)新名稱時(shí)維護(hù)為單標(biāo)簽名稱手動(dòng)創(chuàng)建的 A 記錄。
如果 contoso.com 已將 WINS 用于舊版 NetBT 應(yīng)用程序,網(wǎng)絡(luò)管理員可通過將單靜態(tài) WINS 記錄添加到 WINS 基礎(chǔ)結(jié)構(gòu)來執(zhí)行單標(biāo)簽名稱 CWEB 的名稱解析。若 IPv4 地址發(fā)生變化,僅需更改單靜態(tài) WINS 記錄。由于單標(biāo)簽名稱在 WINS 上更易于管理,許多基于 Windows 的網(wǎng)絡(luò)都將靜態(tài) WINS 記錄用于單標(biāo)簽名稱。
為在 DNS 上提供單標(biāo)簽名稱解決方案,讓它的管理象靜態(tài) WINS 記錄一樣容易,Windows Server 2008 中的 DNS 服務(wù)器服務(wù)支持名為 GlobalNames 的新區(qū)域來存儲(chǔ)單標(biāo)簽名稱。此區(qū)域的復(fù)制范圍通常是林,它在整個(gè) Active Directory 林中提供單標(biāo)簽名稱解析。此外,如果使用服務(wù)位置 (SRV) 資源記錄來發(fā)布 GlobalNames 區(qū)域的位置,GlobalNames 區(qū)域可在包含多個(gè)林的組織內(nèi)支持單標(biāo)簽名稱解析。
與 WINS 不同,GlobalNames 區(qū)域旨在為有限的一組主機(jī)名稱(通常是組織內(nèi)由其 IT 部門管理的中央服務(wù)器和關(guān)鍵服務(wù)器)提供單標(biāo)簽名稱解析。GlobalNames 區(qū)域的目的不是用于存儲(chǔ) IPv4 地址可能發(fā)生變化的臺(tái)式計(jì)算機(jī)或其他服務(wù)器的名稱,并且它根本不支持 DNS 動(dòng)態(tài)更新。它最常用于存儲(chǔ)別名 (CNAME) 資源記錄,以將單標(biāo)簽名稱映射為完全限定域名 (FQDN)。對(duì)于當(dāng)前使用 WINS 的網(wǎng)絡(luò),GlobalNames 區(qū)域通常包含已在 WINS 中靜態(tài)配置的 IT 管理名稱的資源記錄。
GlobalNames 區(qū)域僅在所有主管 DNS 服務(wù)器均運(yùn)行 Windows Server 2008 時(shí)才提供單標(biāo)簽名稱解析。但是,對(duì)于任意區(qū)域均非主管的其他 DNS 服務(wù)器,可運(yùn)行舊版本 Windows 或其他操作系統(tǒng)。GlobalNames 區(qū)域在林中必須是唯一的。
要提供最佳性能和可擴(kuò)展性,將應(yīng) GlobalNames 區(qū)域與 Active Directory 集成,并且應(yīng)使用它的本地副本來配置每個(gè)主管 DNS 服務(wù)器。必須完成此操作,才能支持在多個(gè)林部署 GlobalNames 區(qū)域。
【編輯推薦】