Windows 2000中的動(dòng)態(tài)域名系統(tǒng)
目前在RFC2136標(biāo)準(zhǔn)中定義的DNS標(biāo)準(zhǔn)描述了允許DNS動(dòng)態(tài)更新記錄的一系列規(guī)則,基于這種規(guī)則的DNS系統(tǒng)可以稱為DDNS。Windows2000包括的DNS系統(tǒng)支持DDNS標(biāo)準(zhǔn)。DDNS是對(duì)長(zhǎng)期使用的名稱解析標(biāo)準(zhǔn)的革新,對(duì)網(wǎng)絡(luò)規(guī)劃和管理都會(huì)產(chǎn)生深遠(yuǎn)的影響! 我們知道DNS在大多數(shù)NT4的網(wǎng)絡(luò)中沒(méi)有什么用,在這些較低層次的網(wǎng)絡(luò)中,DNS主要用于支持Unix主機(jī)或INTERNET提供的服務(wù)。在NT4中首選的本地解析服務(wù)是WINS。在NT4網(wǎng)絡(luò)中,應(yīng)用NETBIOS名稱來(lái)識(shí)別和定位資源、服務(wù)。雖然WINS在NETBIOS網(wǎng)絡(luò)中實(shí)現(xiàn)解析服務(wù)較方便快捷,但不幸的是,WINS和其他NETBIOS域名服務(wù)并未被廣泛接受。在不同種類的主流網(wǎng)絡(luò)中,域名系統(tǒng)是被認(rèn)可的域名解析服務(wù),而域名系統(tǒng)的基礎(chǔ)是DNS。微軟之所以選擇WINS而非DNS的主要原因就是因?yàn)樗С謩?dòng)態(tài)更新,動(dòng)態(tài)更新在網(wǎng)絡(luò)中是很關(guān)鍵的。但是由于因特網(wǎng)將DNS作為首選的名稱解析標(biāo)準(zhǔn),使用傳統(tǒng)的NETBIOS的微軟網(wǎng)同因特網(wǎng)的連接就較困難。所以在微軟網(wǎng)絡(luò)中使用DNS已經(jīng)是勢(shì)在必行。DDNS將在Windows2000中取代WINS,成為首選的名稱解析服務(wù)。 DNS 的主要的功能是主機(jī)名解析,即將主機(jī)名轉(zhuǎn)換為IP地址,實(shí)現(xiàn)TCP/IP網(wǎng)絡(luò)中的資源通訊。在靜態(tài)DNS系統(tǒng)中,所有的解析項(xiàng)都是由管理員手工填寫的,非常不方便。特別是現(xiàn)在的網(wǎng)絡(luò)規(guī)劃中都使用動(dòng)態(tài)主機(jī)配置協(xié)議(DHCP)來(lái)分配客戶機(jī)的IP 地址,靜態(tài)DNS是無(wú)法支持DHCP的。DDNS比靜態(tài)DNS有很多優(yōu)點(diǎn),它既支持動(dòng)態(tài)更新,又可以兼容于NT4網(wǎng)絡(luò),支持手工刷新;它結(jié)合WINS的動(dòng)態(tài)能力和傳統(tǒng)DNS的穩(wěn)定性和健壯性。當(dāng)然,在最近的幾年里,只要用戶需要WINS繼續(xù)支持低級(jí)客戶機(jī)和依賴NETBIOS系統(tǒng)的應(yīng)用程序,WINS和DDNS會(huì)共存。但我們的最終目的是取消NETBIOS,統(tǒng)一于因特網(wǎng)的DNS系統(tǒng)實(shí)現(xiàn)解析。 在Windows2000網(wǎng)絡(luò)中,活動(dòng)目錄(Active Directory)是實(shí)現(xiàn)網(wǎng)絡(luò)管理的先進(jìn)的目錄服務(wù)技術(shù)?;顒?dòng)目錄是由OU、DOMAIN、TREE、FOREST所構(gòu)成的層次化邏輯結(jié)構(gòu),網(wǎng)絡(luò)中的所有資源都以對(duì)象的形式組織到活動(dòng)目錄中,便于用戶的資源訪問(wèn)和管理員的集中管理。在活動(dòng)目錄中集成了兩個(gè)重要的Internet工業(yè)標(biāo)準(zhǔn):DNS和LDAP。DNS作為活動(dòng)目錄的定位服務(wù),是必須的;LDAP是Internet標(biāo)準(zhǔn)的目錄訪問(wèn)協(xié)議,用于訪問(wèn)、檢索活動(dòng)目錄中的資源。LDAP是目錄存取協(xié)議(DAP)的簡(jiǎn)便版,是一個(gè)X.500目錄存取協(xié)議。Windows2000中不僅兼容LDAP協(xié)議,微軟建立Windows2000作為L(zhǎng)DAP服務(wù)器,用LDAP來(lái)讀寫活動(dòng)目錄。為了定位能服務(wù)于LDAP請(qǐng)求的Windows2000服務(wù)器,客戶級(jí)必須首先向DNS服務(wù)器發(fā)送服務(wù)器定位解析請(qǐng)求。Windows2000的DDNS服務(wù)器包含每一個(gè)LDAP服務(wù)器的服務(wù)資源(SRV)記錄。通常可以在Windows2000的DDNS服務(wù)器中找到LDAP SRV記錄的列表,內(nèi)容如下: _ldap._tcp.DnsDomainName. _ldap._tcp.SiteName._sites.DnsDomainName. _ldap._tcp.dc._msdcs.DnsDomainName. _ldap._tcp.SiteName._sites.dc._msdcs.DnsDomainName. _ldap._tcp.pdc._msdcs.DnsDomainName. _ldap._tcp.gc._msdcs.DnsForestName. _ldap._tcp.SiteName._sites.gc._msdcs.DnsForestName. _gc._tcp.DnsForestName. _gc._tcp.SiteName._sites.DnsForestName. _ldap._tcp.DomainGuid.domains._msdcs.DnsForestName. 以上SRV記錄標(biāo)識(shí)LDAP服務(wù)器通過(guò)TCP協(xié)議定位特殊的資源。例如,為了找到mycompany.com域的域控制器,客戶需要查詢DDNS來(lái)解析ldap.tcp.mycompany.com到IP地址的轉(zhuǎn)換.這里要注意一個(gè)問(wèn)題,雖然Windows2000中強(qiáng)烈建議支持DNS動(dòng)態(tài)刷新,但并不嚴(yán)格要求,而支持SRV記錄是最小的要求。實(shí)際上,在Windows2000網(wǎng)絡(luò)中,無(wú)論大小,在不能動(dòng)態(tài)更新的情況下執(zhí)行DNS是不實(shí)際的。如果不支持動(dòng)態(tài)更新,就需要手工添加和更新DNS中的SRV記錄。 在Windows2000網(wǎng)絡(luò)中,公司的活動(dòng)目錄域名空間,反映了自己的DDNS名稱空間。在活動(dòng)目錄中的域在DDNS中也應(yīng)有。當(dāng)組建公司的DDNS結(jié)構(gòu)時(shí),必須考慮域和子域在活動(dòng)目錄中的使用方式?;顒?dòng)目錄的設(shè)計(jì)對(duì)DDNS的設(shè)計(jì)有很大影響。兩者的設(shè)計(jì)應(yīng)很好地結(jié)合起來(lái)! 當(dāng)生成活動(dòng)目錄的域時(shí),它既是活動(dòng)目錄的名稱空間中的域又是DDNS的名稱空間中的域。它在活動(dòng)目錄中是一個(gè)物理的節(jié)點(diǎn),在DDNS中是一個(gè)區(qū)域。當(dāng)解析網(wǎng)絡(luò)上的客戶機(jī)時(shí),客戶機(jī)需根據(jù)存儲(chǔ)在活動(dòng)目錄中的帳戶信息說(shuō)明來(lái)確認(rèn)它的登錄,且客戶機(jī)必須在DDNS的區(qū)域中動(dòng)態(tài)的注冊(cè)。例如,一個(gè)客戶機(jī)用一個(gè)易解析的名字登錄活動(dòng)目錄如clIEnt@mycompany.com,將用其主機(jī)名和IP地址更新DDNS。在DDNS完成動(dòng)態(tài)更新后,一條A紀(jì)錄就存在于DDNS中了,將用于解析查詢。讓mycompany.com域的其他成員可以訪問(wèn)它。這里要注意,活動(dòng)目錄的域成員在DDNS上存儲(chǔ)的主機(jī)紀(jì)錄,應(yīng)該有相同的域名稱?;顒?dòng)目錄的名稱空間和DDNS的名稱空間應(yīng)該是相同的。如果活動(dòng)目錄要求獨(dú)立的域,DDNS應(yīng)該反映出這種結(jié)構(gòu)。 在理想的情況下,設(shè)計(jì)DDNS和設(shè)計(jì)活動(dòng)目錄的目的是一樣的常用的DNS設(shè)計(jì)標(biāo)準(zhǔn)如下: 最頂層的域應(yīng)該保持不變,這個(gè)域通常是公司的名稱,如mycompany.com; 由國(guó)內(nèi)和國(guó)際業(yè)務(wù)的公司經(jīng)常將DNS的名稱空間分成子域,每個(gè)子域代表不同的管理任務(wù); 當(dāng)單個(gè)域很大時(shí),應(yīng)該把它分成幾個(gè)子域。這樣會(huì)減少管理域的工作量,并減少DNS服務(wù)器的負(fù)荷量; 公司也可以根據(jù)公司的地理分布、管理機(jī)構(gòu)及IT支持結(jié)構(gòu)來(lái)建立相應(yīng)的子域。 有了這些可供選擇的方法及充分認(rèn)識(shí)DDNS的靈活性后,根據(jù)DNS的設(shè)計(jì)標(biāo)準(zhǔn),就可以決定怎樣劃分名稱空間。但最重要的是DNS的子域和活動(dòng)目錄的域應(yīng)匹配。如果公司有因特網(wǎng)業(yè)務(wù),在設(shè)計(jì)DNS時(shí)就應(yīng)該有一個(gè)更遠(yuǎn)的打算,并且判斷把名稱空間提交到因特網(wǎng)是否與內(nèi)部有所不同,下面我們具體分析一下: 為了一致性,一些公司對(duì)內(nèi)部和外部的用戶提供一個(gè)相同的DNS名稱空間。在這種方案中,代表一個(gè)目錄的單個(gè)的DDNS域,如contoso.com,它內(nèi)部的資源能在防火墻的內(nèi)部和外部方便地轉(zhuǎn)換為IP 地址。當(dāng)然,對(duì)內(nèi)部和外部的用戶使用單一的名稱空間也有一些問(wèn)題需要解決,例如,不想讓因特網(wǎng)的每個(gè)用戶都知道內(nèi)部主機(jī)的紀(jì)錄,不想把所有的內(nèi)部IP地址在因特網(wǎng)上公開(kāi),以及需要提供一種方法給內(nèi)部用戶,實(shí)現(xiàn)把內(nèi)部和外部資源轉(zhuǎn)換為IP 地址。最好的辦法是將內(nèi)部資源和外部資源紀(jì)錄存儲(chǔ)在不同的區(qū)域中,讓內(nèi)部資源的IP地址對(duì)外部用戶是不可見(jiàn)的,在內(nèi)部和外部的區(qū)域之間沒(méi)有復(fù)制,即本質(zhì)上它們共享相同的域名,但它們的操作是獨(dú)立的:它們都是在的DDNS服務(wù)器上不同的基本的區(qū)域。那么內(nèi)部的用戶怎樣才能訪問(wèn)域外的資源呢?這有多種解決方案,較流行的方法是在防火墻的內(nèi)部建立外部資源的副本,然后通過(guò)代理來(lái)訪問(wèn),就好象訪問(wèn)內(nèi)部名稱一樣。這種內(nèi)部和外部的資源使用相同的名稱空間,要有很多附加的配置,集成工作較復(fù)雜!參見(jiàn)示例圖一
示例1 一個(gè)有因特網(wǎng)業(yè)務(wù)的公司也可以有不同的內(nèi)部和外部域名稱。例如在防火墻內(nèi)部使用contoso.local,防火墻的外部使用contoso.com,通過(guò)用不同的內(nèi)部和外部名稱名稱空間,公司為內(nèi)部資源提供保密,同時(shí)簡(jiǎn)化名稱解析過(guò)程。不需要把外部服務(wù)器鏡像到防火墻內(nèi)部,或在外部服務(wù)器和鏡像服務(wù)器之間配置代理。這種方法配置起來(lái)非常簡(jiǎn)單,公司用戶可以根據(jù)FQDN來(lái)區(qū)分內(nèi)部和外部的資源。這種DDNS建立的兩個(gè)域名空間,都應(yīng)該在因特網(wǎng)上單獨(dú)注冊(cè)。盡管contoso.local只在內(nèi)部使用,但也應(yīng)該注冊(cè),以防止其他人使用。否則如果被別人注冊(cè)了,當(dāng)內(nèi)部用戶把瀏覽器指向www. contoso.local,就有可能訪問(wèn)到其他的Web站點(diǎn)了。 參見(jiàn)示例2 在Windows2000網(wǎng)絡(luò)中,由于活動(dòng)目錄與DNS緊密集成在一起,意味著活動(dòng)目錄更適合于Internet和Intranet環(huán)境??蛻艨梢愿菀赘杆俚卣业侥夸浄?wù)器;企業(yè)可以把活動(dòng)目錄直接連接到Internet以簡(jiǎn)化與客戶和合作伙伴進(jìn)行通訊和提供電子商務(wù)?;顒?dòng)目錄安裝后,它將自動(dòng)通過(guò)DDNS進(jìn)行發(fā)布。也就是說(shuō)使用DDNS的Windows2000網(wǎng)絡(luò),將方便可靠地同Internet連接起來(lái)!(中國(guó)科學(xué)院軟件研究所微軟認(rèn)證高級(jí)技術(shù)培訓(xùn)中心 申兵).