AD FSMO

Windows 2000 中5種FSMO:
SchemaMaster:每個樹系的角色
domain naming master:每個樹系的角色
RID主機:每個網域角色
PDC模擬器:每個網域角色
IM主機:每個網域角色
ps:建立樹系的第一個ad DC時,系統會將五個角色都指派給它
ps:在現有樹系中建立新網域的第一個ad DC時,系統會將三個角色都指派給它
ps:當網域只有一個DC,該DC會儲存所有的每個網域角色
ps:若網域具有一個以上的DC,請使用ad站台及服務管理員選取具有持續且連線狀況良好之連結的直接複寫協力電腦

判斷fsmo方法
ad使用者及電腦>網域>操作主機 可看到rid,pdc模擬器,im主機在那個dc上
ad 網域及信任操作主機 可看到domain naming master在那個dc上
ad架構>操作主機 可看到SchemaMaster 在那個dc上
使用dcdiag工具,執行 DCdiag /test:Knowsofroleholders /v 可列出的企業中所有FSMO

ps:
ad架構顯示方式
1執行regsvr32 schmmgmt.dll
2進入mmc使用嵌入式管理單元加入”active directory架構”

ps
Windows 2000 Active Directory FSMO 角色
http://support.microsoft.com/?scid=kb%3Bzh-tw%3B197132&x=6&y=8
fsmo 相關工具及列出fsmo方式
http://support.microsoft.com/kb/234790/zh-tw

……………………………………………………

SchemaMaster(架構主機):
負責執行目錄架構更新的 DC
存放只允許寫入的schema複本
唯一能夠處理目錄架構更新的 DC
整個樹系只能有一個SchemaMaster
一旦架構更新完成,就會從架構主機複寫至目錄中的其他 DC

domain naming master(網域命名主機)
負責變更目錄的全樹系網域名稱空間的DC
存放樹系的名稱設定複本
唯一能夠對目錄加入或移除網域的DC
整個樹系只能有一個 domain naming master
ps:這個DC也能加入或移除外部目錄中的網域交互參照
ps:若找不到此fsmo,則新增和刪除域名會失敗

RidMaster(相對ID主機)
是單一的DC,負責處理特定網域內來自所有 DC 的 RID 集區要求
此DC也在物件移動時,負責將物件從其網域移除,並將物件置於另一個網域
網域中只有一個RID主機
ps:rid 是物件sid的最後幾碼

運作方式
1網域中各DC都有500個RID,以便指派到其所建立的安全性主體
2當DC使用了80%的RID時,就會向網域的RID主機要求500個RID
3網域RID主機會從未配置RID的集區取出500個給發出要求的DC,且其他DC無法使用這500個RID
ps:
當DC建立像是使用者或群組的安全性主體物件時,會將唯一的SID附加至物件。
唯一SID由網域SID和建立在網城中之每個安全性主體SID的唯一RID所組成。
ps: 在此網域中建立的所有SID都會相同

PDC emulator
網域中只有一個pdc emulator
負責為新物件提供sid,所有sid都是都必須由pdc發出
編輯gpo時預設會把重點放在pdc emulator上
網域的PDC emulator就是網域的授權單位
樹系根目錄的PDC emulator會成為企業的授權單位

負責以下工作
處理密碼:若密碼被修改會被先複製到pdc emulator,在由pdc emulator觸發即時更新,而更新時間差取決於網路規模和線路情況
ps: 由於不正確的密碼,而在網域中的特定DC發生的驗證失敗,都會在以錯誤密碼失敗訊息向使用者報告之前,先傳送到PDC emulator
ps:帳戶鎖定的處理也會在PDC emulator上進行。
統一網域時間:是網域的時間主機,dc會從自己網域的pdc emulator取得時間
ps: 若驗証方與被驗証方時間差五分鐘則會被拒絕過通,因此需統一網域時間
ps:pdc emulator也對網域內的nt4 bdc提供支援,因為從nt4升級成2000的系統可能會含nt4的bdc
ps:PDC emulator會執行NT 4.0 Server PDC所有功能,舊版的PDC則會執行 Windows NT 4.0 或舊版用戶端的所有功能

ps:
當執行Windows NT 4.0或舊版的工作站、成員伺服器和網域控制站,全都升級為Windows 2000時,PDC模擬器角色就不再是必要的
不過PDC模擬器依然會在Windows 2000環境中執行先前所說明的其他功能。

IM(InfrastructureMaster,基礎架構)
網域中只有一個IM
IM必須在其他網域的群組成員改變時,負責更新群組對使用者以及群組對群組間的關係
在跨網域物件參考中負責更新物件的 SID 和辨別名稱的 DC
ps:網域中的物件由其他網域中的物件所參考時,就會使用GUID,SID(作為安全性主體的參考),受參考物件的DN來表示這項參考
IM角色應該要由非GC的網域控制站所持有
ps:如果IM主機是在GC伺服器上執行,就會停止更新物件資訊,因為它不包含本身不持有之物件的任何參照,因為GC伺服器會保留樹系中每個物件的部分複本。因此該網域中的跨網域物件參考就不會更新,而且關於此結果的警告會記錄到該DC的事件日誌上。
ps:如果網域中的所有DC都有裝載GC,則所有的DC就都會擁有最新資料,因此由哪個DC持有IM角色也就不重要了

…………………………………………………………………………………………………………


FSMO 安置建議

Schema Maste不常被用到,除非常對Schema進行擴展,但此情況很少,但需保証可用性,否則安裝exchange或lcs之類的程式會出錯
Domain Naming Master不需要高性能,因為不常在樹系內新增或删除,但高可用性是有必要的,否则就無法動作
PDC Emulator是FSMO五种角色里任务最重的,所以对于占用PDC Emulator的域控制器要保证高性能和高可用性
RID Master不一定要求高性能,因为不常利用批处理或脚本向活动目录增加大量用户,但高可用性是必不可少的,否则就没有辦法增加用户
IM是 FSMO中最不重要的

在活動頻繁的網域上將PDC和RID主機分開,可增加效率
pdc模擬器和gc工作量都很大,建議放在不同的dc

ps:將RID與PDC模擬器角色放置在同dc上
ps:如果將FSMO角色叢集在較少的機器上,要追蹤FSMO角色也就會比較容易

不要將gc存放在IM主機上,但IM主機應和GC伺服器直接相連
im主機應該位於有直接連線物件可連至樹系中某些gc的非gc伺服器上,最好還是位在同ad站台中
ps:因為gc伺服器擁有樹系、im主機中每個物件的部分複本,所以如果放在gc伺服器上將永遠不會更新任何內容,因為它未包含它沒有的物件之參考
例外情況有以下
 單一網域樹系
 多重網域樹系中,網域中的每個dc都擁有gc

schema master和domain naming master可放在同一個dc上,因為很少被用到而且應該嚴加控管
domain naming master主機應該為gc伺服器。如果不是,使用domain naming master的某些操作 (例如建立直屬子網域) 將會失敗。

ps:
請確認所有的FSMO角色都可以使用其中一個管理主控台(例如Dsa.msc或Ntdsutil.exe)。

ps:
在 Active Directory 網域控制站上放置並最佳化 FSMO
http://support.microsoft.com/kb/223346/zh-tw

若有任何fsmo當機,該dc將會失去他特定的功能
以下是排除單點損壞建議:
a了解操作主機正位於那一台dc
b風險分散,儘可能不要將多個操作主機放在同一台dc
c將其他的dc標為備用的操作主機
d熟悉目錄服務還原模式和ntdsutil指令,以便修復fsmo損壞

…..

若系統管理員會指定伺服器以接收 FSMO 角色使用 Ntdsutil等工具的 FSMO 角色交換,會定義目前擁有者與系統管理員指定網域控制站之間

網域控制站降級時
Attribute(屬性)會寫入GiveAwayAllFsmoRoles, 操作觸發網域控制站, 以找出其他網域控制站, 以卸載目前它所擁有的任何角色

系統管理員拿取的FSMO角色從現有的電腦
fsmoRoleOwner屬性 (Attribute) 會修改物件,表示直接略過的資料同步處理和非失誤性的角色傳輸資料的根目錄上

……………………..

若 dc上的fsmo皆正常則以下成立
schema管理員,可轉移schema master
ad網域及信任,可轉移domain naming master
ad使用者及電腦,可轉移pdc模擬器,rid主機,im主機

若fsmo發生問題,則執行 ntdsutil可進行強制轉移
步驟如下
ntdsutil
roles
connections
connect to server < dc>
quit
seize < fsmo type>
quit
quit

Dumpfsmos.exe
透過使用 DumpFsmos,您可以尋找正在執行整個樹系操作主機角色的網域控制站名稱,其中包括:
架構主機
網域命名主機
基礎結構主機
相對識別碼 (RID) 主機
網域主控站 (PDC) 模擬器主機