AD DS数据库内绝大部分数据的复制是采用多主机复制
(multi-master replication model),也就是可以直接更新任何一台域控制器内绝大部分的AD DS对象,之后这个对象会被自动复制到其它域控制器
然而有少部分数据的复制是采用单主机复制
(single-master replication model),在此模式下,当提出变更对象的请求时,只会由其中一台被称为操作主机的域控制器负责接收与处理请求,也就是说该对象是先被更新在这台操作主机内,再由它将其复制到其它域控制器
Active Directory域服务(AD DS)内总共有5个操作主机角色:
架构操作主机
(schema operations master)域命名操作主机
(domain naming operations master)RID操作主机
(relative identifier operations master),相对标识符操作主机PDC模拟器操作主机
(PDC emulator operations master),PDC(primary domain controller)主域控制器基础结构操作主机
(infrastructure operations master)林级别角色:
一个林中只有一台架构操作主机与一台域命名操作主机。这两个林级别的角色默认都是林根域内的第一台域控制器所扮演。
域级别角色:
一个域拥有自己的RID操作主机、PDC模拟器操作主机与基础结构操作主机,这三个域级别的角色默认是由该域内的第一台域控制器所扮演。
每个角色每个域中只有一台域控制器来扮演
注意点:
扮演架构操作主机角色的域控制器,负责更新与修改架构(schema)内的对象种类与属性数据。隶属于Schema Admins组内的用户才有权限修改架构。
扮演域命名操作主机角色的域控制器,负责林内域目录分区的新建和删除,也就是负责林内的域新建与删除工作。也负责应用程序目录分区的新建与删除
每一个域内只可以有一台域控制器来扮演PID(相对标识符)操作主机角色,其主要的工作就是发放RID
(relative ID)给域内的所有域控制器。
RID标识符
当域控制器内新建一个用户、组或计算机等对象时,域控制器需要分配一个唯一的安全标识符(SID)
给这个对象,此对象的SID是由域SID与RID所组成的,也就是说对象SID = 域SID + RID
RID是由RID操作主机来统一发放给其域内的所有域控制器
。每一台域控制器需要PID时,它会向RID操作主机索取一些RID,这些RID用完后再向RID操作主机索取
由于是由RID操作主机来统一发放RID,因此不会有RID重复的情况发生。因此
对象的SID也是唯一的
每一个域内只可以有一台域控制器来扮演PDC模拟器操作主机角色,而它所负责的工作有:
支持旧客户端计算机
例如用户在域内的旧客户端计算机(例如Windows NT 4.0)上更改密码时,这个密码信息会被更新在PDC(primary domain controller)上,而AD DS通过PDC模拟器操作主机来扮演PDC的角色
减少因为密码复制延迟所造成的问题
当用户的密码更改后,需要一点时间这个密码才会被复制到其它所有的域控制器。如果在这个密码还没有被复制到其它所有域控制器之前,用户利用新密码登录,则可能会因为负责检查用户密码的域控制器内还没有用户的新密码数据,因而无法成功登录
AD DS采用以下方法来减少这个问题发生的概率:当用户的密码更改后,这个密码会优先被复制到PDC模拟器操作主机,而其它域控制器依然是依照常规复制程序,也就是需要等一段时间后才会收到这个最新的密码,如果用户登录时,负责验证用户身份的域控制器发现密码不对时,它会将验证身份的工作转发给拥有新密码的PDC模拟操作主机,以便让用户可以成功登录
负责整个域时间的同步
域用户登录时,如果其计算机时间与域控制器不一致的话,将无法登录,而PDC模拟器操作主机就是负责整个域内所有计算机时间的同步工作
时间同步设置
时间同步所使用的通信协议为
SNTP(Simple Network Time Protocol)
,其端口号码为UDP 123
利用w32tm /query /source
命令来查看当前所同步的时间服务器
更改为与外部事件服务器同步
w32tm /config /manualpeerlist:"time.windows.com time.nist.gov time-nw.nist.gov" /syncfromflags:manual /reliable:yes /update
通过w32tm /query /configuration
命令来查看时间同步的设置
适用于Windows Vista(含)以后的系统,如果是旧版Windows操作系统,可用net time /querysntp命令,不过所显示的信息有限
未加入域的客户端计算机可能需要先启动Windows Time服务
,再来执行上述程序,而且必须以系统管理员的身份来执行此程序。
- 运行 -> services.msc -> Windows Time -> 启动
- 以管理员的身份打开cmd -> w32tm /register -> net start w32time | net start "windows time"
通过Type字段
来判断此客户端计算机时间的同步方式
手动同步
w32tm /resync
命令手动同步
运行 -> control -> 时间和区域 -> 日期和时间 -> Internet时间选项卡 -> 更改设置 -> 立即更新
每一个域内只能有一台域控制器来扮演基础结构操作主机的角色。如果域内有对象参考到其它域的对象时
,基础结构操作主机会负责更新这些参考对象的数据
,例如本域内有一个组的成员包含另外一个域的用户账户,当这个用户账户发生变动时,基础结构操作主机便会负责更新这个组的成员信息,并将其复制到同一个域内的其它域控制器。
基础结构操作主机是通过全局编录服务器来得到这些参考数据的最新版本,因为全局编录服务器会收到由每一个域所复制的最新变动信息
全局编录服务器(Global Catalog Server,GC)也是一台域控制器,其中全局编录存储着林中所有AD DS对象
,一般域控制器内只会存储所属域内域目录分区的完整信息,但是全局编录服务器还会存储林中所有其它域之域目录分区对象的部分属性,让用户可以通过全局编录内的这些属性,很快速地找到位于其它域内的对象,系统默认会将用户常用来查找的属性加入到全局编录内,例如登录账户名称、UPN、电话号码等。
林中的第一台域控制器也是默认的全局编录服务器
为了提高运行效率、减轻系统管理的负担与减少问题发生的概率,因此如何适当地放置操作主机便成为不可忽视地课题
基础结构操作主机的放置
由于基础结构操作主机与全局编录并不兼容,因此请勿将基础操作主机放置到全局编录服务器上,除非是以下的情况:
为了便于管理,建议将域级别的RID操作主机、PDC模拟器操作主机与基础结构操作主机都放置到同一台域控制器上
PDC模拟器操作主机的放置
PDC模拟器操作主机经常需要与网络上其它系统通信,它的负担比其它操作主机重,因此这台计算机的设备性能应该要最好、最稳定,以确保能够应付比较繁重的负担与提供比较高的可用性
降低PDC模拟器操作主机的负载
可以在DNS服务器内调整它的权重(weight)。当客户端需要查看域控制器来验证用户身份时,客户端会向DNS服务器查询域控制器,而DNS服务器会将客户端导向(refer to)到指定的域控制器,由这台域控制器来负载验证用户身份,由于所有域控制器默认的权重值是相同的(100),因此每一台域控制器被导向的概率是相同的。
如果将PDC模拟器操作主机的权重值降低的话,例如降为一半(50),则客户端被导向到这台PDC模拟器操作主机的概率就会降低一半,如此便可以降低它的负载。
DNS管理控制台 -> 区域chinaskills.com -> _tcp文件夹 -> 双击,修改权重值
林级别操作主机的放置
林中每一台域控制器会自动扮演林级别的架构操作主机与域命名操作主机的角色,它同时也是全局编录服务器
.这两个角色并不会对域控制器造成太大负担,它们与全局编录兼容,而且即使将这两个角色移动到其它域控制器也不会改善运行性能,因此为了便于管理与执行备份、还原工作,建议将这两个角色继续保留由这台域控制器来扮演
域级别操作主机的放置
每一个域内的第一台域控制器会自动扮演域级别的操作主机,而以林根域中的第一个域控制器来说,它同时扮演两个林级别与三个域级别的操作主机,同时也是全局编录服务器。不过因为其中的基础架构操作主机与全局编录并不兼容,因此除非所有域控制器都是全局编录服务器或林中只有一个域,否则请将基础结构操作主机的角色转移到其它域控制器,如上所述,为了便于管理起见,请将RID操作主机与PDC模拟器操作主机也一并转移到这台域控制器(有基础结构操作主机)
除了林根域之外,其他域请将三台域级别操作主机保留由第一台域控制器来扮演。除非工作负担太重
在建立AD DS域时,系统会自动选择域控制器来扮演操作主机
角色 | 管理控制台 |
---|---|
架构操作主机 | Active Directory架构 |
域命名操作主机 | Active Directory域和信任关系 |
RID操作主机 | Active Directory用户和计算机 |
PDC模拟器操作主机 | Active Directory用户和计算机 |
基础结构操作主机 | Active Directory用户和计算机 |
找出架构操作主机
域控制器上登录、注册schmmgmt.dll,才可使用Active Directory架构控制台
regsvr32 schmmgmt.dll
运行 -> MMC -> 文件 -> 添加/删除管理单元 -> Active Directory架构
选中Active Directory -> 右击并点击操作主机
找出域命名操作主机
开始 -> windows管理工具 -> Active Directory域和信任关系 -> Actice Direcotry域和信任关系 -> 右击并点击操作主机
找出RID、PDC模拟器与基础结构操作主机
开始 -> windows管理工具 -> Active Directory用户和计算机 -> 右击并点击操作主机
执行netdom query fsmo
命令来查看扮演操作主机角色的域控制器
通过执行以下的Get-ADDomain
命令来查看扮演域级别操作主机角色的域控制器
Get-ADDomain chinaskills.com | FT PDCEmulator,RIDMaster,InfrastructureMaster
通过执行以下的Get-ADForest
命令来查看扮演林级别操作主机角色的域控制器
Get-ADForest chinaskills.com | FT SchemaMaster,DomainNamingMaster