|
FSMO中文翻譯成操作主控,在說明FSMO的作用以前,先給大家介紹兩個概念: 單主復(fù)制:所謂的單主復(fù)制就是指從一個地方向其它地方進(jìn)行復(fù)制,這個主要是用于以前的NT4域,我們知道,在NT4域的年代,域網(wǎng)絡(luò)上區(qū)分PDC和BDC,所有的復(fù)制都是從PDC到BDC上進(jìn)行的,因?yàn)镹T4域用的是這種復(fù)制機(jī)構(gòu),所以要在網(wǎng)絡(luò)上進(jìn)行對域的修改就必須在PDC上進(jìn)行,在BDC上進(jìn)行是無效的。如果你的網(wǎng)絡(luò)較小的話,那么這種機(jī)構(gòu)的缺點(diǎn)不能完全的體現(xiàn),但是如果是一個跨城區(qū)的網(wǎng)絡(luò),比如你的PDC在上海,而BDC在北京的話,那么你的網(wǎng)絡(luò)修改就會顯得非常的麻煩。 多主復(fù)制:多主復(fù)制是相對于單主復(fù)制而言的,它是指所有的域控制器之間進(jìn)行相互復(fù)制,主要是為了彌補(bǔ)單主復(fù)制的缺陷,微軟從Windows 2000域開始,不再在網(wǎng)絡(luò)上區(qū)分PDC和BDC,所有的域控制器處于一種等價的地位,在任意一臺域控制器上的修改,都會被復(fù)制到其它的域控制器上。 既然Windows 2000域中的域控制器都是等價的,那么這些域控制器的作用是什么呢?在Windows 2000域中的域控制器的作用不取決于它是網(wǎng)絡(luò)中的第幾臺域控制器,而取決于FSMO五種角色在網(wǎng)絡(luò)中的分布情況,現(xiàn)在開始進(jìn)入正題,F(xiàn)SMO有五種角色,分成兩大類: 1、 森林級別(即一個森林只存在一臺DC有這個角色): (1)、Schema Master中文翻譯成:架構(gòu)主控 (2)、Domain Naming Master中文翻譯成:域命名主控 2、 域級別(即一個域里面只存一臺DC有這個角色): (1)、PDC Emulator 中文翻譯成:PDC仿真器 (2)、RID Master 中文翻譯成:RID主控 (3)、Infrastructure Master 中文翻譯成:基礎(chǔ)架構(gòu)主控 一、接下來就來說明一下這五種角色空間有什么作用: 1、 Schema Maste 用是修改活動目錄的源數(shù)據(jù)。我們知道在活動目錄里存在著各種各樣的對像,比如用戶、計(jì)算機(jī)、打印機(jī)等,這些對像有一系列的屬性,活動目錄本身就是一個數(shù)據(jù)庫,對像和屬性之間就好像表格一樣存在著對應(yīng)關(guān)系,那么這些對像和屬性之間的關(guān)系是由誰來定義的,就是Schema Maste,如果大家部署過Excahnge的話,就會知道Schema是可以被擴(kuò)展的,但需要大家注意的是,擴(kuò)展Schema一定是在Schema Maste進(jìn)行擴(kuò)展的,在其它域控制器上或成員服務(wù)器上執(zhí)行擴(kuò)展程序,實(shí)際上是通過網(wǎng)絡(luò)把數(shù)據(jù)傳送到Schema上然后再在Schema Maste上進(jìn)行擴(kuò)展的,要擴(kuò)展Schema就必須具有Schema Admins組的權(quán)限才可以。 2、 建議:在占有Schema Maste的域控制器上不需要高性能,因?yàn)槲覀儾皇墙?jīng)常對Schema進(jìn)行操作的,除非是經(jīng)常會對Schema進(jìn)行擴(kuò)展,不過這種情況非常的少,但我們必須保證可用性,否則在安裝Exchnage或LCS之類的軟件時會出錯。 3、 Domain Naming Master 這也是一個森林級別的角色,它的主要作用是管理森林中域的添加或者刪除。如果你要在你現(xiàn)有森林中添加一個域或者刪除一個域的話,那么就必須要和Domain Naming Master進(jìn)行聯(lián)系,如果Domain Naming Master處于Down機(jī)狀態(tài)的話,你的添加和刪除操作那上肯定會失敗的。 4、 建議:對占有Domain Naming Master的域控制器同樣不需要高性能,我想沒有一個網(wǎng)絡(luò)管理員會經(jīng)常在森林里添加或者刪除域吧?當(dāng)然高可用性是有必要的,否則就沒有辦法添加刪除森里的域了。 5、 PDC Emulator 在前面已經(jīng)提過了,Windows 2000域開始,不再區(qū)分PDC還是BDC,但實(shí)際上有些操作則必須要由PDC來完成,那么這些操作在Windows 2000域里面怎么辦呢?那就由PDC Emulator來完成,主要是以下操作: ⑴、處理密碼驗(yàn)證要求; 在默認(rèn)情況下,Windows 2000域里的所有DC會每5分鐘復(fù)制一次,但有一些情況是例外的,比如密碼的修改,一般情況下,一旦密碼被修改,會先被復(fù)制到PDC Emulator,然后由PDC Emulator觸發(fā)一個即時更新,以保證密碼的實(shí)時性,當(dāng)然,實(shí)際上由于網(wǎng)絡(luò)復(fù)制也是需要時間的,所以還是會存在一定的時間差,至于這個時間差是多少,則取決于你的網(wǎng)絡(luò)規(guī)模和線路情況。 ⑵、統(tǒng)一域內(nèi)的時間; 微軟活動目錄是用Kerberos協(xié)議來進(jìn)行身份認(rèn)證的,在默認(rèn)情況下,驗(yàn)證方與被驗(yàn)證方之間的時間差不能超過5分鐘,否則會被拒絕通過,微軟這種設(shè)計(jì)主要是用來防止回放式攻擊。所以在域內(nèi)的時間必須是統(tǒng)一的,這個統(tǒng)一時間的工作就是由PDC Emulator來完成的。 ⑶、向域內(nèi)的NT4 BDC提供復(fù)制數(shù)據(jù)源; 對于一些新建的網(wǎng)絡(luò),不大會存在Windows 2000域里包含NT4的BDC的現(xiàn)象,但是對于一些從NT4升級而來的Windows 2000域卻很可能存有這種情況,這種情況下要向NT4 BDC復(fù)制,就需要PDC Emulator。 ⑷、統(tǒng)一修改組策略的模板; ⑸、對Winodws 2000以前的操作系統(tǒng),如WIN98之類的計(jì)算機(jī)提供支持; 對于Windows 2000之前的操作系統(tǒng),它們會認(rèn)為自己加入的是NT4域,所以當(dāng)這些機(jī)器加入到Windows 2000域時,它們會嘗試聯(lián)系PDC,而實(shí)際上PDC已經(jīng)不存在了,所以PDC Emulator就會成為它們的聯(lián)系對象! 建議:從上面的介紹里大家應(yīng)該看出來了,PDC Emulator是FSMO五種角色里任務(wù)最重的,所以對于占用PDC Emulator的域控制器要保證高性能和高可用性。 4、RID Master 在Windows 2000的安全子系統(tǒng)中,用戶的標(biāo)識不取決于用戶名,雖然我們在一些權(quán)限設(shè)置時用的是用戶名,但實(shí)際上取決于安全主體SID,所以當(dāng)兩個用戶的SID一樣的時候,盡管他們的用戶名可能不一樣,但Windows的安全子系統(tǒng)中會把他們認(rèn)為是同一個用戶,這樣就會產(chǎn)生安全問題。而在域內(nèi)的用戶安全SID=Domain SID+RID,那么如何避免這種情況?這就需要用到RID Master,RID Master的作用是:分配可用RID池給域內(nèi)的DC和防止安全主體的SID重復(fù)。 建議:對于占有RID Master的域控制器,其實(shí)也沒有必要一定要求高性能,因?yàn)槲覀兒苌贂?jīng)常性的利用批處理或腳本向活動目錄添加大量的用戶。這個請大家視實(shí)際情況而定了,當(dāng)然高可用性是必不可少的,否則就沒有辦法添加用戶了。 5、 Infrastructure Master FSMO的五種角色中最無關(guān)緊要的可能就是這個角色了,它的主要作用就是用來更新組的成員列表,因?yàn)樵诨顒幽夸浿泻苡锌赡苡幸恍┯脩魪囊粋€OU轉(zhuǎn)移到另外一個OU,那么用戶的DN名就發(fā)生變化,這時其它域?qū)τ谶@個用戶引用也要發(fā)生變化。這種變化就是由Infrastructure Master來完成的。 建議:其實(shí)在活動目錄森林里僅僅只有一個域或者森林里所有的域控制器都是GC(全局編錄)的情況下,Infrastructure Master根本不起作用,所以一般情況下對于占有Infrastructure Master的域控制器往忽略性能和可能性。 二、在說完FSMO五種角色的作用以后,我們?nèi)绾沃肋@五種角色在網(wǎng)絡(luò)中的分布情況呢? 對于新建的網(wǎng)絡(luò),這五種角色都集中在森林中的第一臺域控制器上,但是如果是別人已經(jīng)建好的網(wǎng)絡(luò),比如我們?nèi)ソ邮忠恍┚W(wǎng)絡(luò)的時候,很可能這五種角色已經(jīng)被轉(zhuǎn)移到其它的域控制器上了。這時我們可以通過三種方法來知道,分別是GUI介面,命令行及腳本: 1、 GUI介面: GUI介面下不能一次性獲得五種角色的分布, ⑴、Schema Maste 點(diǎn)擊“開始-運(yùn)行”,輸入:“regsvr32 schmmgmt”,回車:
然后點(diǎn)擊“確定”。
再點(diǎn)擊“開始-運(yùn)行”,輸入:“MMC”,回車,進(jìn)入控制臺,.
點(diǎn)擊“文件-添加刪除管理單元”
出來下面的介面:
再點(diǎn)擊“添加”:
選中上圖所示中有“Active Directory架構(gòu)”,點(diǎn)擊“添加”,然后點(diǎn)“關(guān)閉”:
然后點(diǎn)擊“確定”,在控制臺上選中“Active Directory架構(gòu)”擊“右鍵”,選擇“操作主機(jī)”
出現(xiàn)下圖:
就可以看到當(dāng)前的架構(gòu)主控了。 ⑵、RID Master、Infrastructure Master、PDC Emulator 點(diǎn)擊“開始-設(shè)置-控制面板-管理工具-Active Directory用戶和計(jì)算機(jī)”
在域名上單擊右鍵:
在出來的菜單中選擇“操作主機(jī)”:
在出來的畫面中可以看到RID Master、PDC Emulator、Infrastructure Master的分布情況。
⑶、Domain Naming Master 點(diǎn)擊“開始-設(shè)置-控制面板-管理工具-Active Directory域和信任關(guān)系”:
在“Active Directory域和信任關(guān)系”上擊右鍵:
選擇“操作主機(jī)”:
這就是“Domain Naming Master”所在的域控制器。
以上就是用GUI來查看FSMO五種角色的分布情況,用GUI介面不但可以查看,還可以隨意的改變這五種角色的分布情況,但缺點(diǎn)是比較麻煩,需要較多的操作項(xiàng)目,如果僅僅是查看就比較的浪費(fèi)時間。 2、 命令行工具: 首先你要安裝Support Tools,在安裝光盤中的Support文件夾下的Tools子文件下。默認(rèn)安裝在系統(tǒng)盤的Program Files文件下。安裝成功后,點(diǎn)擊“開始-程序-Windows Support Tools-Command Prompt”:
然后運(yùn)行“netdom”命令,在這里,運(yùn)行的是:“netdom query fsmo”:
看到了吧,馬上把當(dāng)前域里的FSMO五種角色所在的域控制器羅列了出來。 3、 腳本。 在這里,我給大家一段腳本: Set objRootDSE = GetObject("LDAP://rootDSE") Dim text ' Schema Master Set objSchema = GetObject("LDAP://" & objRootDSE.Get("schemaNamingContext")) strSchemaMaster = objSchema.Get("fSMORoleOwner") Set objNtds = GetObject("LDAP://" & strSchemaMaster) Set objComputer = GetObject(objNtds.Parent) text="Forest-wide Schema Master FSMO: " & objComputer.Name & vbCrLf Set objNtds = Nothing Set objComputer = Nothing ' Domain Naming Master Set objPartitions = GetObject("LDAP://CN=Partitions," & _ objRootDSE.Get("configurationNamingContext")) strDomainNamingMaster = objPartitions.Get("fSMORoleOwner") Set objNtds = GetObject("LDAP://" & strDomainNamingMaster) Set objComputer = GetObject(objNtds.Parent) text=text&"Forest-wide Domain Naming Master FSMO: " & objComputer.Name & vbCrLf Set objNtds = Nothing Set objComputer = Nothing ' PDC Emulator Set objDomain = GetObject("LDAP://" & objRootDSE.Get("defaultNamingContext")) strPdcEmulator = objDomain.Get("fSMORoleOwner") Set objNtds = GetObject("LDAP://" & strPdcEmulator) Set objComputer = GetObject(objNtds.Parent) text=text&"Domain's PDC Emulator FSMO: " & objComputer.Name & vbCrLf Set objNtds = Nothing Set objComputer = Nothing ' RID Master Set objRidManager = GetObject("LDAP://CN=RID Manager$,CN=System," & _ objRootDSE.Get("defaultNamingContext")) strRidMaster = objRidManager.Get("fSMORoleOwner") Set objNtds = GetObject("LDAP://" & strRidMaster) Set objComputer = GetObject(objNtds.Parent) text=text&"Domain's RID Master FSMO: " & objComputer.Name & vbCrLf Set objNtds = Nothing Set objComputer = Nothing ' Infrastructure Master Set objInfrastructure = GetObject("LDAP://CN=Infrastructure," & _ objRootDSE.Get("defaultNamingContext")) strInfrastructureMaster = objInfrastructure.Get("fSMORoleOwner") Set objNtds = GetObject("LDAP://" & strInfrastructureMaster) Set objComputer = GetObject(objNtds.Parent) text=text&"Domain's Infrastructure Master FSMO: " & objComputer.Name & vbCrLf WScript.Echo text 大家把以上內(nèi)容復(fù)制到記事本,保存為fsmo.vbs,然后到域里的計(jì)算機(jī)上運(yùn)行,就可以得到如下畫面:
也看到了吧!!! 三、最后來看一下FSMO的規(guī)劃,在規(guī)劃時,請大家按以下原則進(jìn)行: 1、占有Domain Naming Master角色的域控制器必須同時也是GC; 2、不能把Infrastructure Master和GC放在同一臺DC上; 3、建議將Schema Master和Domain Naming Master放在森林根域的GC服務(wù)器上; 4、建議將Schema Master和Domain Naming Master放在同一臺域控制器上; 5、建議將PDC Emulator、RID Master及Infrastructure Master放在同一臺性能較好的域控制器上; 6、盡量不要把PDC Emulator、RID Master及Infrastructure Master放置在GC服務(wù)器上; 好了,關(guān)于FSMO我就先說到這里,請大家多多指正。我的E-Mail:hzswg@sohu.com |
|
|