深入理解全局编录服务器GC

简介:
在Win2003AD域环境中,除了FSMO操作主机角色外,全局编录服务器(GC)也是有着特殊含义的域控制器。通过GC,可以提高在活动目录中搜索对象的速度,可以加快用户登录验证等。
   简单的说,GC是森林中所有对象的只读调整缓冲存储器( Read Only Cache),目录只用于搜索。GC服务器存储本域中所有对象的所有属性,同时会存储林中其它域中所有对象的部分属性。一般来说,属性是否存储在GC中,取决于该属性在搜索中使用的频率,由系统自动进行决定。但AD架构管理员也可以定义对象的哪些属性保存的GC中,同时决定该属性是否可以进行索引。
   本文拟就与GC相关的内容一一阐述,希望能起抛砖引玉作用,与有兴趣的朋友一起更好的了解和熟悉全局编录服务器。
    GC出现的原因
    GC的作用
    查看当前环境中GC服务器
    提升DC为全局编录服务器
    验证全局编录服务器的提升
    验证全局编录服务器是否工作正常
    删除全局编录服务器
    使用AdsiEdit工具查看全局编录服务器中的数据

 
一:GC出现的原因
    在Win2003活动目录中有两种目录服务,分别是DNS以及LDAP,两个目录服务互为补充。DNS的目的比较简单,用于简单快速的定位域控制器,但定位到具体的域控制器后,对活动目录信息的更细致访问,如活动目录中关于用户,计算机,打印机等对象信息搜索,DNS就无能为力。此时就需要通过LDAP服务来访问。
   如果用户知道某个对象处于哪个域,也知道对象的标识名,那么用LDAP搜索对象就非常容易。但如果用户只知道某个对象的某个属性,根本不知道对象所处的域,也不知道该对象的标识名,那么使用LDAP来搜索对象是一件非常困难的事,AD不得不对当前环境中每一个域的每个对象都搜索一遍。为了解决这个问题,活动目录提供了全局编录服务器(GC,到Global Catalog)。GC中包含了当前林中每个域中所有对象的副本,如果在一次LDAP搜索中,涉及到搜索中多个域的名称上下文时,AD会选择搜索GC服务器,从而实现加快搜索速度,减少网络通信量的目的。
 
二:GC的作用
    1:存储对象信息副本,提高搜索性能
      全局编录服务器中除了保存本域中所有对象的所有属性外,还保存林中其它域所有对象的部分属性,这样就允许用户通过全局编录信息搜索林中所有域中对象的信息,而不用考虑数据存储的位置。通过GC执行林中搜索时可获得最大的速度并产生最小的网络通信量。
    2:存储通用组成员身份信息,帮助用户构建访问令牌
      全局组成员身份存储在每个域中,但通用组成员身份只存储在全局编录服务器中。
      我们知道,用户在登陆过程中需要由登录的DC构建一个安全的访问令牌,而要构建成功一个安全的访问令牌由三方面信息组成:用户SID,组SID,权力。其中用户SID和用户权力可以由登录DC获得,但对于获取组SID信息时,需要确定该用户属不属于通用组,而通用组信息只保存在GC中。所以当GC故障,负责构建安全访问令牌的DC就无法联系GC来确认该用户组的SID,也就无法构建一个安全的访问令牌。
      注:在Win2003中,可以通过通用组缓存功能解决GC不在线无法登录情况,具体操作本文略过。
   3:提供用户UPN名称登录身份验证。
      当执行身份验证的域控制器没有用户UPN帐号信息时,将由GC解析用户主机名称(UPN)进行身份验证,以完成登录过程
   4:验证林中其他域对象的参考
      当域控制器的某个对象的属性包含有另一个域某个对象的参考时,将由全局编录服务器来完成验证。
 
三:查看当前环境中GC服务器
      1:通过“Active Directory 站点和服务”查看
        
         步骤:
              点击“开始-设置-控制面板-管理工具-Active Directory站点和服务”:
              选中具体的“NTDS Setting"。
             
           
            选中"NTDS Setting",右键选择“属性”
            
            
            在弹出的“NTDS Setting 属性”对话框中,有“全局编录”复选框,如果选中,表示是一台全局编录服务器, 如果没有选中,则表示当前的服务器不是全局编录服务器。
           
 
       2:利用复制监视器Replmon查看
          复制监视器Replication Monitor(ReplMon)是针对Windows Server的故障查找工具,不但是定位活动目录
          复制故障强有利的工具,同时也可以使用该工具查看和检查操作主机角色状态。
          详细Replmon工具使用方法本文不做过多说明,这里只列出如何使用Replmon工具GC角色。
          步骤:选中当前DC,右键单击,选择“Show Global Catalog Servers in Enterprise”
          
 
            在弹出窗口中,清楚列出当前林中所有的全局编录服务器
            
 
        3:通过命令行方式查看全局编录服务器
           在Supprot Tools和Resource Tools工具中,有多个命令行工具可以查看全局编录服务器,这里只列出两个最常见的命令行工具
           
           使用dsquery命令查看当前域中的GC
           dsquery server -domain superlan.com -isgc
 

           使用nltest命令查看当前域中的GC
           nltest /dsgetdc:superlan.com
 
    四:提升DC为全局编录服务器
        将一台域控制器提升为全局编录服务器操作很简单,方法见通过“Active Directory 站点和服务”管理单元查看全局编录服务器,
        将“全局编录”复选框选中即可。
        注意:设置完成后,并不代表当前的全局编录服务器已经提升完成,因为全局编录服务器中包含有多个域的所有对象,需要时间来进行全局编录数据库同步。
        
 

    五:验证全局编录服务器的提升
        通过提升DC为全局编录服务器操作,需要时间同步全局编录服务器,同步完成后,全局编录服务器才开始真正运行。
        下面介绍如何查看全局编录服务器是否已经开始工作。
        1:使用LDP工具查看当前DC的IsGlobalCatalogReady属性
          LDP(LDAP浏览器工具)是一个轻量目录访问协议 (LDAP) 客户端实用工具,可以用来查询和浏览 LDAP目录服务,详细用法本文不做具体介绍,
          可以搜索相关的说明文档或后期的Blog文章介绍。这里只给出简单的使用说明
          步骤:
               与LDAP目录绑定
              “运行”,输入“LDP”,打开LDP窗口后,选择“Connection|Bind",打开Bind对话框,输入身份凭证。
               
 
              单击”OK“按钮,LDP连接到”Superlan.Com"域控制器,显示检测结果,从下图可以看出“IsGlobalCatalogReady"属性为True
              

        2:查看DNS管理工具查看GC记录是否已更新到DNS中。
           从下图可以看出当前哪个域控制器是GC,且使用的端口是多少,默认的GC使用端口是3268。
           
 

     六:验证全局编录服务器是否工作正常
         全局编录服务器正确提升后,可以通过查看注册表信息和端口状态来查看
         全局编录服务器是否工作正常。
         1:查看注册表信息(HKLM\System\CurrentControlSet\Services\NTDS\Parameters)
           健值:Global Catalog Promotion Complete,值为1,表示GC工作正常
             
          
 
         2:全局服务编录器默认使用3268/3269端口,通过查看端口是否处于监听状态可以判断GC是否工作正常
           使用netstat -an命令查看当前正在运行的端口,可以看到3268/3269端口已经处于正常监听状态
           
 
     七:删除全局编录服务器
         删除全局编录服务器方法请参见”四:提升全局编录服务器“,将”全局编录“复选框取消即可,此处略过。
           
     八:使用AdsiEdit工具查看全局编录服务器中的数据
          因篇辐较长,拟定以独立的文章介绍,见后续文章!

本文转自q狼的诱惑 51CTO博客,原文链接:http://blog.51cto.com/liangrui/367198,如需转载请自行联系原作者
相关文章
|
Java 调度
服务器常见问题排查(一)——cpu占用高、上下文频繁切换、频繁GC
文章主要讨论了服务器中常见性能问题的一些排查思路,这篇文章主要讨论了CPU负载过高,频繁GC和频繁切换上线文这三个问题。
1904 0
服务器常见问题排查(一)——cpu占用高、上下文频繁切换、频繁GC
|
存储 Java 数据库
Windows Server 2008 R2之十全局编录服务器(GC)
http://blog.sina.com.cn/s/blog_53e059e30100ei74.html  GC是一台DC,它是一台特殊的DC,它存储森林中所有对象部分只读信息的特殊DC。
896 0
|
15天前
|
弹性计算 运维 安全
阿里云轻量应用服务器与云服务器ECS啥区别?新手帮助教程
阿里云轻量应用服务器适合个人开发者搭建博客、测试环境等低流量场景,操作简单、成本低;ECS适用于企业级高负载业务,功能强大、灵活可扩展。二者在性能、网络、镜像及运维管理上差异显著,用户应根据实际需求选择。
145 10
|
13天前
|
运维 安全 Ubuntu
阿里云渠道商:服务器操作系统怎么选?
阿里云提供丰富操作系统镜像,涵盖Windows与主流Linux发行版。选型需综合技术兼容性、运维成本、安全稳定等因素。推荐Alibaba Cloud Linux、Ubuntu等用于Web与容器场景,Windows Server支撑.NET应用。建议优先选用LTS版本并进行测试验证,通过标准化镜像管理提升部署效率与一致性。
|
18天前
|
弹性计算 ice
阿里云4核8g服务器多少钱一年?1个月和1小时价格,省钱购买方法分享
阿里云4核8G服务器价格因实例类型而异,经济型e实例约159元/月,计算型c9i约371元/月,按小时计费最低0.45元。实际购买享折扣,1年最高可省至1578元,附主流ECS实例及CPU型号参考。
235 8
|
14天前
|
存储 监控 安全
阿里云渠道商:云服务器价格有什么变动?
阿里云带宽与存储费用呈基础资源降价、增值服务差异化趋势。企业应结合业务特点,通过阶梯计价、智能分层、弹性带宽等策略优化成本,借助云监控与预算预警机制,实现高效、可控的云资源管理。
|
15天前
|
弹性计算 运维 安全
区别及选择指南:阿里云轻量应用服务器与ECS云服务器有什么区别?
阿里云轻量应用服务器适合个人开发者、学生搭建博客、测试环境,易用且性价比高;ECS功能更强大,适合企业级应用如大数据、高流量网站。根据需求选择:轻量入门首选,ECS专业之选。
118 2
|
24天前
|
弹性计算 ice
阿里云4核8G云服务器配置价格:热门ECS实例及CPU处理器型号说明
阿里云2025年4核8G服务器配置价格汇总,涵盖经济型e实例、计算型c9i等热门ECS实例,CPU含Intel Xeon及AMD EPYC系列,月费159元起,年付低至1578元,按小时计费0.45元起,实际购买享折扣优惠。
249 1

热门文章

最新文章