概述
在
Win2003
多主机复制环境中,任何域控制器理论上都可以更改
ActiveDirectory
中的任何对象。但实际上并非如此,某些
AD
功能不允许在多台
DC
上完成,否则可能会造成
AD
数据库一致性错误,这些特殊的功能称为“灵活单一主机操作”,常用
FSMO
来表示,
拥有这些特殊功能执行能力的主机被称为
FSMO
角色主机。在
Win2003 AD
域中,
FSMO
有五种角色,分成两大类:
林林级别
(
在整个林中只能有一台
DC
拥有访主机角色
)
1
:架构主机
(Schema Master)
2
:域命令主机
(Domain Naming Master)
域级别
(
在域中只有一台
DC
拥有该角色
)
3
:
PDC
模拟器
(PDC Emulator)
4
:
RID
主机
(RID Master)
5
:基础架构主机
(Infrastructure Master)
本文分别从以下几个方面深入理解操作主机
-
FSMO操作主机角色功能
-
查看和更改操作主机角色的方法
-
操作主机放置优化建议
一:
FSMO
角色功能
1
:架构主机
控制活动目录整个林中所有对象和属性的定义,具有架构主机角色的
DC
是可以更新目录架构的唯一
DC
。这些架构更新会从架构主机复制到目录林中的所有其它域控制器中。
架构主机是基于目录林的,整个目录林中只有一个架构主机。
2
:域命令主机
向目录林中添加新域。
从目录林中删除现有的域。
添加或删除描述外部目录的交叉引用对象
.
3
:
PDC
模拟器
-
向后兼容低级客户端和服务器,担任NT系统中PDC角色
-
时间同步服务源,作为本域权威时间服务器,为本域中其它DC以及客户机提供时间同步服务,林中根域的PDC模拟器又为其它域PDC模拟器提供时间同步!
-
密码最终验证服务器,当一用户在本地DC登录,而本地DC验证本地用户输入密码无效时,本地DC会查询PDC模拟器,询问密码是否正确。
-
首选的组策略存放位置,组策略对象(GPO)由两部分构成:GPT和GPC,其中GPC存放在AD数据库中,GPT默认存放PDC模拟器在\\windows\sysvol\sysvol\
目录下,然后通过DFS复制到本域其它DC中。 -
域主机浏览器,提供通过网上邻居查看域环境中所有主机的功能
4
:主机角色:RID主机
Win2003
环境中,所有的安全主体都有SID,SID由域SID+序列号组合而成,后者称为“相对ID”(Relative ID,RID),在Win2003环境中,由于任何DC都可以创建安全主体,为保证整个域中每个DC所创建的安全主体对应的SID在整个域范围唯一性,设立该主机角色,负责向其它DC分配RID池(默认一次性分配500个),所有非RID主机在创建安全实体时,都从分配给的RID池中分配RID,以保证SID不会发生冲突! 当非RID主机中分配的RID池使用到80%时,会继续RID主机,申请分配下一个RID地址池!
5
:基础架构主机
基础结构主机的作用是负责对跨域对象引用进行更新,以确保所有域间操作对象的一致性。
基础架构主机工作机制是定期会对没有保存在本机的引用对象信息,而对于
GC
来说,会保存当前林中所有对象信息。如果基础架构主机与
GC
在同一台机,基础架构主机就不会更新到任何对象。所以在多域情况下,强烈建议不要将基础架构主机设为
GC
。
二:标准图形界面查看和更改操作主机角色的方法
1
:查看和更改架构主机角色:
步骤:
注册:regsvr32 schmmgmt
在MMC中添加AD架构管理单元
打开MMC控制台,
选中
“Active Directory
架构
”
击
“
右键
”
,选择
“
操作主机
”
。
打开更改架构页面后,点击“更改”按钮就可以进行架构主机角色的更换
2: 查看和更改PDC模拟器,RID主机以及基础结构主机
步骤:
开始
-
设置
-
控制面板
-
管理工具
-Active Directory
用户和计算机
选定当前域名,右键单击,选择“操作主机”
在打开的页面中,通过点击“更改”按钮就可以对RID主机,PDC模拟器以及基础结构主机角色进行更改
3
:查看和更改域命名主机角色
步骤:
点击
“
开始
-
设置
-
控制面板
-
管理工具
-Active Directory
域和信任关系
”:
选中
“Active Directory
域和信任关系
”
,右键单击,选择“操作主机”
在打开的窗口中,点击“更改”按钮就可以实现对域命名主机角色进
行更改
三:利用复制监视器
Replmon
查看和检查操作主机角色
复制监视器Replication Monitor(ReplMon)是针对Windows Server的故障查找工具,不但是定位活动目录复制故障强有利的工具,同时也可以使用该工具查看和检查操作主机角色状态。
详细Replmon工具使用方法本文不做过多说明,这里只列出如何使用Replmon工具查看和检查操作主机角色状态。
步骤:选中当前DC,右键单击,选择“Properties
”
在弹出窗口中,选择“FSMO Roles
”
分窗口,出现如下界面:
在该窗口,列出所有的FSMO操作主机,同时通过“Query
”
按钮,可以检测出当前DC 与FSMO操作主机之间通讯是否正常。
四:使用命令行工具查看和更改操作主机角色
有多个工具可以实现在命令行下查看操作主机角色,下面只列出几种常见方法
注意,下面对应的工具有些需要安装
Win2003 Support Tools
工具
1
:使用
Netdom
工具查看操作主机角色
Netdom Query FSMO
2
:使用
Dsquery
工具查看操作
主机角色
Dsquery Server –Hasfsmo Schema //
查看架构主机
Dsquery Server –Hasfsmo Name //
查看域
主机
Dsquery Server –Hasfsmo PDC //
查看
PDC
模拟器主机
Dsquery Server –Hasfsmo RID //
查看
RID
主机
Dsquery Server –Hasfsmo Infr //
查看基础结构主机
3
:使用
Ntdsutil
工具更改操作主机角色
Ntdsutil
工具的功能非常强大,可以进行
AD
数据库维护,查看和更换操作主机角色以及删除无法通过图形界面删除的
DC
遗留的元数据。通过
Ntdsutil
工具不但可以清理无效的DC信息,也可以使用Transfer子命令转移操作主机角色,使用Seize子命令夺取操作主机角色。Ntdsutil
具体使用方法请参考
KB
:
[url]http://support.microsoft.com/kb/255504/[/url]
五:操作主机角色放置优化配置建议
默认情况下,架构主机和域命名主机角色是在根域的第一台
DC
上,而
PDC
模拟器,
RID
主机和基础结构主机默认放置在当前域的第一台
DC
上。特别是在单域环境中,按默认安装,第一台
DC
会同时拥有这五种
FSMO
操作主机角色。万一这台
DC
损坏,会对域环境造成极大风险
!
常见的操作主机角色放置建议如下:
1
:架构主机:
拥有架构主机角色的DC不需要高性能,因为在实际环境中不会经常对Schema进行操作的,除非是经常会对Schema进行扩展,不过这种情况非常的少。但要保证可用性,否则在安装Exchange等会扩展AD架构的软件时会出错。
2
:域命名主机:
对占有域命名主机的DC也不需要高性能,在实际环境中也不会经常在森林里添加或者删除域的。但要保证高可用性是有必要的,以保证在添加删除当前林中域时可以使用。
一般建议由同一台DC承担架构主机与域域命名主机角色,并由GC放置在同一台DC中。
3
:
PDC
模拟器:从上述
PDC
功能中可以看出,
PDC
模拟器
是FSMO五种角色里任务最重的,必须保持拥有PDC的DC有高性能和高可用性。
4
:RID主机:对于占有RID Master的域控制器,没有必要一定要求高性能,因为给其它DC分配RID池的操作不是经常性发生,但要求高可用性,否则在添加用户时出错。
5
:基础架构主机:对于单域环境,基础架构主机实际上不起作用,因为基础架构主机主要作用是对跨域对象引用进行更新,对于单域,不存在跨域对象的更新。基础架构主机对性能和可用性方面的要求较低。
建议将PDC模拟器,RID主机以及基础结构主机放置在一台性能较好的DC中,且尽量不要配置成GC。