关于双域控中第一台域控离线的登陆问题

lgzhorse 发表于 2005-4-15 13:10:27
虽然ad是个相对分布式的系统,其数据库是同步复制在域中所有的dc上,但为了解决各种冲突的问题,必须有一个仲裁的机制。也就是这么多dc,谁说了算。
那么ad中是这样解决的,通过建立五种角色,哪台dc掌握这些角色,那么这个角色所掌管的内容,就由这台dc最终裁决。
这些角色在win2k上叫FSMO,在win2k3上就叫OM。关于FSMO的问题,请参考 http://support.microsoft.com/default.aspx?scid=kb;cn;197132
之所以您将dc01的网线拔掉,用户无法登陆,是因为验证用户登录的任务是由OM(FSMO)中的PDCe来完成的,一旦DC01离线,网域中PDCe的角色自然也就无法联系,那么此时如何让网域恢复登陆运作呢?
前面我们提到ad的数据库是同步复制到域中所有dc上的,这个复制是相对收敛的,也就是说MS不承诺在任一时刻,所有DC上的数据都是完全相同的,但如果保持ad的状态静止,那么在之后的一段时间,所有dc上的数据将完全同步。
那么与OM(FSMO)相关的数据其实在其他dc上早就存在了,只不过没有“启用”它罢了。那么我们用ntdsutil来启用其他DC上的PDCe的角色就好了,也是说让ad知道已经有其他的DC已经接替原来的DC1来完成这个任务了。关于ntdsutil的操作请参考http://support.microsoft.com/default.aspx?scid=kb;en-us;255504
关于FSMO的放置于优化,请参考http://support.microsoft.com/default.aspx?scid=kb;cn;223346

BTW:当然有其他因素也会干扰到登陆的过程,比如:
一、为了给登录的帐户生成访问令牌,或者登录用户名采用username@domain.com这样的格式,需要查询GC,如果GC无法联系或者当前GC缓存无法使用,也会造成无法登陆
二、如果当前登录帐户已经成功登陆过域,那么其之前登陆所产生的令牌将被缓存在本地计算机上,如果该令牌没有被kdc认定为过期,那么将一直可用,也就是说用户在这种情况下,即便网络不可用,也可以进行本地缓存登陆。
关于本地缓存登陆的讨论,请参考http://gnaw0725.blogdriver.com/gnaw0725/418908.html
三、一些诸如防火墙,本地帐户锁定机制以及第三方软件的干扰等等。

发表评论:

    昵称:
    密码: (游客无须输入密码)
    主页:
    标题:
Powered by Oblog.