前段时间某公司来电,说他们公司所使用的域控制器出现故障无法开机。到现场查看后,发现他们的域控制器主板损坏,需要返修。由于他们的网络还有一台备份域控制器,于是就让他们使用备份域控制器进行登录。
问题来了,进入那个备份域控制器后,无法打开备份域控制器的“Active Directory 用户和计算机”工具,提示“找不到命名信息,因为指定的域不存在,或无法联系”,但实际上自身就是域控制器啊!而且DNS服务也正常的!那问题到底出在什么地方,难道是域服务出现故障?
于是我使用了ntdsutil尝试修复,无效,甚至我把主板已经损坏的控制器都强行清除,都无法解决,问题依旧。后来发现普通的客户端能正常登录到他们的系统,好像不受影响,所以干脆先不管他,等主域控制器的主板修复好再讲。
今天终于把主域控制器的硬件给修复好了,打开主域控制器,发现它上面的域信息仍然没有清除,也无法与其它域控制器通信(因为之前已经强行在域上把这个域控制器给清除掉),所以就直接把这个域控制器降级且把域服务删除,尝试更改为工作组计算机后,重新加入域,并且重新升级为域控制器。在重新加入域的时候,死活也加不到与,总是提示出错,错误信息如下:
按照这个提示,说明DNS的解析记录是正常的,但是就是与域控制器无法通信。那问题到底出在那个方面?
后来在网上搜索,查到有一个网友遇到的情况和我的比较相似,他是通过修改注册表来修复的。具体修改的位置如下:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters
在里面找到一个名为“SysvolReady”的键,把键值修改为1。修改后不需要重启电脑,马上生效。此时,原主域控制器已经可以重新加入域,但这个时候还不能成为域控制器,因为之前在使用ntdsutil强行删除主域控制器的时候,没有把RID、PD等角色传递到辅助域控制器,这时候把原主域控制器重新升级,会出现失败的情况(原操作主机角色还是原主域控制器),必须在辅助域控制器中,再次利用ntdsutil,强行把操作主机角色给占用。以管理员身份运行命令提示符后,执行以下指令(下面命令中如果后面有注释,不用输入注释):
ntdsutil
roles
connections
connect to server 域控制器全名
quit
Seize RID master (注:在已连接的服务器上覆盖 RID 角色)
Seize PDC (注:在已连接的服务器上覆盖 PDC 角色)
Seize schema master (注:在已连接的服务器上覆盖架构角色)
Seize naming master (注:覆盖已连接的服务器上的命名主机角色)
Seize infrastructure master (注:在已连接的服务器上覆盖结构角色)
quit
quit
在进行以上操作之后,域服务恢复正常!