注:本文由Colin撰写,版权所有!转载请注明原文地址,谢谢合作!

说明:前段时间公司两台域控出现了一些问题导致数据无法相互进行同步,DC之间也无法进行共享访问,网络用户无法通过计算机名映射的共享访问资源。几经折腾最后排除并解决了部分可能性的故障,但两台域控制器之间的用户与数据同步自己始终没能搞定。最终只有等到最初搭建域环境的同事回来,向他描述故障情况后,经过一番折腾最后我们才解决该故障。由此可见自己在这方面还有很多不足,以后还应该多多学习。另外,感觉在处理问题时,知识、工作经验的积累与胆大心细也非常重要..

正常情况下:
共两台域控(相互同步,当在一台域控出现故障的情况下,另一台域控仍然可以正常工作,域用户依然可以进行登陆验证。)

此处两台域控分别描述为DC01(windows 2003 Server)和DC02(Windows Server 2008 R2);

故障描述:
出现的问题是DC01(主域控)和DC02之间不能互相同步数据,甚至连两台DC之间也无法使用计算机名进行互访,但使用IP可以互相访问。最初排除的是DNS故障。由于未能同步,结果导致于部分域用户无法进行登陆验证。(提示:此工作站和主域间的信任关系失败。)甚至某些电脑无法加入域。需要在域服务器中将该计算机删除或将客户机改名才行。另外,直接关掉一台故障的域控制器用户也可以顺利加域,因此判断可能是DC之间互相不能同步,也不互相信任导致的。

注:下文主要记录解决同步问题的步骤,其它故障请自行排除。

原因分析:
可能的原因很多,如DNS服务未运行或解析存在问题问题,NetLogon服务未启动,Kerberos Key Distribution Center服务停止或文件复制服务未启动等等。可以先尝试手动进行同步操作试试,看会有什么错误提示。另外,建议使用Windows自带的事件查看器来查看具体的问题原因,并记录好事件代码。

手动同步操作如图:

注意查看事件管理器查看故障详细描述或记录事件ID。

在排除以上问题的情况下,在服务器上手动同步仍然不成功可以参考以下内容:

首先用命令行输入:dcdiag 检查一下有哪些测试未通过。

正常情况如图:

使用强制同步命令:repadmin /syncall /force

正常情况如下图:

发现我们的故障原因是同步时访问被拒绝,无法进行同步,最后成功同步时间为2014/01/22 08:00:00
原因是两台域之间有超过60天未进行同步,数据库中存在延迟对象,无法进行同步。解决办法就是删除延迟对象或进行松散同步。

(官方说明:Active Directory 复制发现下列分区中存在的对象已经从 本地域控制器(DC) Active Directory 数据库中删除。 在逻辑删除生存时间过期之前,部分直接或可传递的复制 伙伴没有复制该删除。已经从 Active Directory 分区 删除并垃圾收集的对象,如果仍然存在于同一域中其他 DC 的可写入分区中或林中其他域中的全局编录服务器的 只读分区中,被称作“延迟对象”。
此事件被记录到日志,因为源 DC 包含的延迟对象不存在于 本地 Active Directory 数据库上。此复制被阻止。
解决此问题的最佳方案是标记并删除林中的所有延迟对象。)

解决问题:

方案A:

首先使用命令检查哪些条目不能测试通过并排除故障:
dcdiag
在DC1上启用严格复制:
Repadmin /regkey <DC_List> +strict
详细信息请查看下面这篇文档:
http://technet.microsoft.com/zh-cn/library/cc835086
然后使用下面的命令来进行强制复制
repadmin /kcc
repadmin /syncall /force
查看事件日志是否相关的错误复制信息,如果有我们可以根据相关错误信息来删除这些过期信息。
在两台DC上分别执行如下命令:
repadmin /removelingeringobjects ServerName ServerGUID DirectoryPartition
详细信息请查看下面这篇文档:
Use Repadmin to remove lingering objects
http://technet.microsoft.com/en-us/library/cc785298(WS.10).aspx

方案B:(我们使用这种方案成功解决问题)

首先使用命令检查哪些条目不能测试通过并排除故障:
dcdiag
尝试使用下面的命令来进行强制复制:
repadmin /syncall /force
查看事件日志是否相关的错误复制信息,如果有我们可以根据相关错误信息来删除这些过期信息。
删除延迟对象,在两台DC上分别执行如下命令:
repadmin /removelingeringobjects ServerName ServerGUID DirectoryPartition
命令示例:
repadmin /removelingeringobjects DC1 aaaaaaaa-0000-0000-0000-aaaaaaaaaaaa
dc=dg,dc=feikk,dc=com /advisory_mode

repadmin /removelingeringobjects DC2 bbbbbbbb-1111-1111-1111-bbbbbbbbbbbb
dc=dg,dc=feikk,dc=com /advisory_mode

更改注册表为松散复制示例:
Value Path: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NTDS\Parameters
Value Name: Allow Replication With Divergent and Corrupt Partner(如没有此键值可以直接增加)
Value Type: REG_DWORD
Value Data: 1

Value Path: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NTDS\Parameters
Value Name: Strict Replication Consistency
Value Type: REG_DWORD
Value Data: 0

点击“立即复制副本”后会迅速提示复制完成。复制成功后,请在注册表中做如下调整:
删除:
Value Path: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\NTDS\Parameters

Value Name: Allow Replication With Divergent and Corrupt Partner
Value Type: REG_DWORD
Value Data: 1

将以下注册表设定值恢复成1:
Value Path: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\NTDS\Parameters
Value Name: Strict Replication Consistency
Value Type: REG_DWORD
Value Data: 1

现在再检查一下两台DC之间是否可以自动同步了。

如果依然存在问题,请参考以下文章可能会更加全面:
http://blog.sina.com.cn/s/blog_491d1f3701010j2j.html
http://adirectory.blog.com/2012/07/active-directory-replication-troubleshooting/

AD域服务器|两台DC无法进行复制同步的更多相关文章

  1. 如何变更站点 AD 域服务器IP地址

    在 winserver 2012  单森林单域,多站点环境中,想把某一个站点AD 域服务器IP地址更改,要如何操作,才能保证客户端正常运行,不影响客户端的运行.有些朋友也经常提出类似问题. 想在不影响 ...

  2. AD 域服务简介(一)- 基于 LDAP 的 AD 域服务器搭建及其使用(转)

    一.前言 1.1 AD 域服务 什么是目录(directory)呢? 日常生活中使用的电话薄内记录着亲朋好友的姓名.电话与地址等数据,它就是 telephone directory(电话目录):计算机 ...

  3. stp域中两台switch互联接口出现两口均为root口 并且在现有stp区域中无法确定根桥设备位置;分析其原因并赋予解决办法

    stp域中两台switch互联接口出现两口均为root口 并且在现有stp区域中无法确定根桥设备位置:分析其原因并赋予解决办法 1.于上图描述了案例中当前组网环境的各交换机位置与stp状态情况  : ...

  4. windows server 2008 r2 AD域服务器设置

    域控制器是指在"域"模式下,至少有一台服务器负责每一台联入网络的电脑和用户的验证工作,相当于一个单位的门卫一样,称为"域控制器(Domain Controller,简写为 ...

  5. AD域服务器组策略实现文件夹重定向 保护文件安全

     网络管理员或许都遇到过类似的烦恼.如系统崩溃后,原来存放在 C盘的应用程序专署数据都丢失了;或者桌面上的文件莫名其妙少了,等等.有时候,我们也千方百计提醒员工不要把文件存放在桌面上,但是他们总是不听 ...

  6. freeradius整合AD域作anyconncet认证服务器

    一.服务器要求 Radius服务器:centos6.6.hostname.selinux  disabled.stop iptables AD域服务器:Windows Server 2008 R2 E ...

  7. Server 2008 R2部署active directory服务器-ad域

    一.部署AD域: 系统环境:Windows server 2008 R2 标准版 ip:172.16.1.149服务器开机后会自动弹出一个初始配置任务窗口(这个不要随便关闭,因为我不知道关闭后能在哪里 ...

  8. JAVA使用Ldap操作AD域

    项目上遇到的需要在集成 操作域用户的信息的功能,第一次接触ad域,因为不了解而且网上其他介绍不明确,比较费时,这里记录下. 说明: (1). 特别注意:Java操作查询域用户信息获取到的数据和域管理员 ...

  9. win2008 ad域控搭建

    一.前言 1.1 AD 域服务 什么是目录(directory)呢? 日常生活中使用的电话薄内记录着亲朋好友的姓名.电话与地址等数据,它就是 telephone directory(电话目录):计算机 ...

随机推荐

  1. dedecms /plus/feedback.php SQL Injection Vul

    catalog . 漏洞描述 . 漏洞触发条件 . 漏洞影响范围 . 漏洞代码分析 . 防御方法 . 攻防思考 1. 漏洞描述 . Dedecms v5.7的plus\feedback.php SQL ...

  2. MySQL备份方式简介

    MySQL备份的方式主要分为两种: 文本格式备份: 命令:mysqldump 转储文件:dump file 主要内容:数据库结构及数据(create talbe /insert) 二进制备份:这类备份 ...

  3. 【项目】UICollectionView 对象自定

    陈述一下简单流程: 1.首先定义:UICollectionViewFlowLayout 2.初始化UICollectionView 3.注册复用的cell,定义她们的reuseIndefinite 4 ...

  4. Linux C/C++ --- “” and <> in the use of head include file(Pending Verification)

    for example: #include <stdlib.h>#include <stdio.h>#include <wiringPi.h>#include &l ...

  5. 深入理解css中的margin属性

    深入理解css中的margin属性 之前我一直认为margin属性是一个非常简单的属性,但是最近做项目时遇到了一些问题,才发现margin属性还是有一些“坑”的,下面我会介绍margin的基本知识以及 ...

  6. Java数据库——事务处理

    在数据库中执行5条SQL语句,这些SQL语句本身需要保持一致,即要么同时成功,要么同时失败 事务基本操作 //============================================= ...

  7. 一段发工资的shell代码

    人事发工资条之前是一个个截图发到我们的邮箱里,看人事妹纸是一个善良而又美丽的姑凉,于是乎写了一段shell代码实现批量发短信至各个手机号.不多说了,上代码,其实很简单,我都不好意思上传,还是记录下吧, ...

  8. jquery 停止animate动画,并且回复最初状态

    // 热门推荐悬浮效果 $("#recom_con li img").mouseenter(function(){ $(this).stop(true, true); $w = p ...

  9. swiper笔记

    1.基本使用 var OrderMenu = new Swiper('#OrderMenu',{ loop: false, // 是否循环 autoplay: 1000, // 时间 slidesPe ...

  10. jquery左边滚动,完毕后跳转回来

    代码如下 function in_scroll(){ $liW = ; $num = $(".in-cy li").size(); $ulW = $liW*$num; $(&quo ...