如果 DCPROMO 无法联系 DNS 基础结构主机,则 DCPROMO 降级失败

本文解决了托管 Active Directory 域服务 (AD DS) 或域控制器服务器角色的 Windows Server 计算机的降级失败的问题。

适用于: Windows Server 2012 R2
原始 KB 编号: 2694933

症状

托管 AD DS 或域控制器服务器角色的 Windows Server 计算机的正常降级失败。 会看到以下屏幕错误:

标题栏文本:Active Directory 域服务安装向导
消息文本:
操作失败,原因如下:
Active Directory 域服务无法传输目录分区中的剩余数据
DC=DomainDNSZones,DC=<DNS domjain name> to Active Directory 域 Controller
用于服务降级的帮助程序 DC 的 \\<DNS 名称>
“目录服务缺少必需的配置信息,无法确定浮动单主操作角色的所有权。”

DCPROMO 的相关部分。日志文件包含以下文本:

<date> <time> [INFO] Transferring operations master roles owned by this Active Directory Domain Controller in directory partition  
DC=DomainDnsZones,DC=contoso,DC=com to Active Directory Domain Controller \\<DNS name of helper DC...  
<date> <time>  [INFO] EVENTLOG (Warning): NTDS Replication / Replication : 2091

查看屏幕 DCPROMO 错误和 DCPROMO 中引用的 DNS 应用程序分区的基础结构对象和属性。日志:

Expanding base 'CN=Infrastructure,DC=DomainDnsZones,DC=contoso,DC=com'...  
Getting 1 entries:  
Dn: CN=Infrastructure,DC=DomainDnsZones,DC=contoso,DC=com  
cn: Infrastructure;  
distinguishedName: CN=Infrastructure,DC=DomainDnsZones,DC=contoso,DC=corp,DC=microsoft,DC=com;  
dSCorePropagationData: 0x0 = (  );  
fSMORoleOwner: CN=NTDS Settings\0ADEL:<NTDS Settings objet GUID>,CN=\<hostname of last DC to host the partition infrastructure role>,CN=Servers,CN=<active directory site name>,CN=Sites,CN=Configuration,DC=contoso,DC=com;  
instanceType: 0x4 = ( WRITE );  
isCriticalSystemObject: TRUE;  
name: Infrastructure;  
objectCategory: CN=Infrastructure-Update,CN=Schema,CN=Configuration,DC=contoso,DC=com;  
objectClass (2): top; infrastructureUpdate;  
objectGUID: <object guid>;  
showInAdvancedViewOnly: TRUE;  
systemFlags: 0x8C000000 = ( DISALLOW_DELETE | DOMAIN_DISALLOW_RENAME | DOMAIN_DISALLOW_MOVE );  
uSNChanged: <some USN #>;  
uSNCreated: <some USN #>;  
whenChanged: <date> <time>;  
whenCreated: <date> <time>;  

其中,区分 LDAP 输出中从示例域 CONTOSO.COM 获取的元素包括:

  1. 属性 fSMORoleOwner 包含字符串 0ADEL,指示已删除拥有 DC 的 NTDS Settings 对象的角色。

  2. 属性 fSMORoleOwner 包含拥有 DC NTDS 设置对象的 32 个字符字母数字 GUID,格式为 xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxx。

  3. 将属性分配给具有已删除 NTDS Settings 对象的 DC 的默认 DNS 应用程序分区 fSMORoleOwner 的名称。 在这种情况下,错误引用了 DomainDNSZones。 对于 ForestDNSZones 应用程序分区,也可能发生相同的错误。

原因

如果降级的域控制器无法将更改出站复制到拥有 DCPROMO [log] 错误中引用的分区的基础结构 FSMO 或操作角色的 DC,则会发生此错误。

具体而言,降级尝试会中止,以防止数据丢失。 对于 DNS 应用程序分区,将阻止降级,以确保复制以下数据:

  • 实时和已删除的 DNS 记录
  • DNS 记录的 ACLS
  • 元数据,例如注册和删除日期

症状 ”部分中可能出现错误的分区的 DN 路径包括:

  • CN=Infrastructures,DC=DomainDNSZones....
  • CN=Infrastructures,DC=ForestDNSZones....

解决方案

注意

将基础结构主机分配给 DNS 应用程序分区(如 DomainDNSZones)上已删除的 NTDSA 时,对于 ForestDNSZones 分区,也可能缺少它,反之亦然。 建议验证是否同时为托管 DNS 服务器角色和分区的实时 Windows Server 2003 或更高版本域控制器分配了 DomainDNSZones 和 ForestDNSZones 分区。

若要解决此问题,请使用以下某种方法:

  1. 使用 ADSIEDIT.MSC 将 属性的 DN 路径 fsMORoleOwner 分配给作为原始 FSMO 角色所有者的直接复制伙伴的实时 DC。 然后等待该更改,将入站复制到正在降级的 DC。

  2. 为有问题的分区运行KB949257“解决方法”部分中的脚本。

  3. 如果正在降级的 DC 无法对有问题的目录分区进行入站复制更改,请运行 DCPROMO /FORCEREMOVAL 命令以强制降级域控制器。

更多信息

DCPromo 尝试在每个本地保存的 NC 上对更改进行出站复制,以便不丢失唯一更改。 如果数据存储在 DNS 区域中,DCPROMO 会尝试将 DNS 区域的内容出站复制到有关 DNS 分区的基础结构主机。

相关问题:

KB949257 描述了将一个或多个 DNS 应用程序分区的基础结构主机分配给已删除的 NTDSA 时,命令失败的问题 ADPREP /RODCPREP