Mensaje de error al ejecutar el comando "Adprep /rodcprep" en Windows Server 2008: "Adprep no pudo contactar con una réplica de partición DC = DomainDnsZones, DC = Contoso, DC = com"

Seleccione idioma Seleccione idioma
Id. de artículo: 949257 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

Síntomas

Cuando ejecute el comando Adprep /rodcprep en Windows Server 2008, recibirá el siguiente mensaje de error:
Adprep no pudo contactar con una réplica de partición DC = DomainDnsZones, DC = Contoso, DC = com
Adprep no pudo realizar la operación en la partición DC = DomainDnsZones, DC = Contoso, DC = com omitiendo la siguiente partición.

Adprep no pudo contactar con una réplica de partición DC = ForestDnsZones, DC = Contoso, DC = com
Adprep detectó un error LDAP. Código de error: 0 x 0. Servidor extendido de código de error: 0 x 0, Server mensaje de error: (null).

Adprep no pudo realizar la operación en la partición DC = ForestDnsZones, DC = Contoso, DC = com omitiendo la siguiente partición.
Adprep se ha completado con errores. No todas las particiones se actualizan.

Causa

Este problema se produce cuando el comando Adprep /rodcprep intenta ponerse en contacto con el maestro de infraestructuras para cada partición de aplicación en el bosque. El comando hace esto para establecer los permisos necesarios para la replicación Read-Only Domain Controller (RODC). El comando Adprep /rodcprep no funciona si se cumple una de las condiciones siguientes:
  • La partición o las particiones que se hace referencia en el mensaje de error ya no existen.
  • El maestro de infraestructura para la referencia de partición o particiones ha sido degradado forzosamente o está sin conexión.

Solución

Para resolver este problema si la partición ya no existe, realice una limpieza de metadatos para la partición huérfana mediante el parámetro "Quitar nc" de la herramienta Dsmgmt. Para obtener más información al respecto, visite el siguiente sitio Web de Microsoft:
http://technet.microsoft.com/en-us/library/cc730970(WS.10).aspx
Si existe la partición especificada, especifique un propietario de función de infraestructura que está conectado para la partición. Puede hacerlo modificando manualmente el atributo fSMORoleOwner en el objeto, como se describe en la sección "Más información".

Más información

El siguiente ejemplo de secuencia de comandos modifica el atributo fSMORoleOwner en el objeto de la especificada no dominio nombres contexto (NDNC) a un servidor activo o contactable, de infraestructura. NDNC en este ejemplo es el DomainDnsZones, DC = contoso, DC = com NDNC contexto de nomenclatura. La secuencia de comandos utiliza el comando siguiente:
cscript fixfsmo.vbs DC = DomainDnsZones, DC = contoso, DC = com
-------fixfsmo.vbs------------------
const ADS_NAME_INITTYPE_GC = 3
const ADS_NAME_TYPE_1779 = 1
const ADS_NAME_TYPE_CANONICAL = 2

set inArgs = WScript.Arguments

if (inArgs.Count = 1) then
    ' Assume the command line argument is the NDNC (in DN form) to use.
    NdncDN = inArgs(0)
Else
    Wscript.StdOut.Write "usage: cscript fixfsmo.vbs NdncDN"
End if

if (NdncDN <> "") then

    ' Convert the DN form of the NDNC into DNS dotted form.
    Set objTranslator = CreateObject("NameTranslate")
    objTranslator.Init ADS_NAME_INITTYPE_GC, ""
    objTranslator.Set ADS_NAME_TYPE_1779, NdncDN
    strDomainDNS = objTranslator.Get(ADS_NAME_TYPE_CANONICAL)
    strDomainDNS = Left(strDomainDNS, len(strDomainDNS)-1)
     
    Wscript.Echo "DNS name: " & strDomainDNS

    ' Find a domain controller that hosts this NDNC and that is online.
    set objRootDSE = GetObject("LDAP://" & strDomainDNS & "/RootDSE")
    strDnsHostName = objRootDSE.Get("dnsHostName")
    strDsServiceName = objRootDSE.Get("dsServiceName")
    Wscript.Echo "Using DC " & strDnsHostName

    ' Get the current infrastructure fsmo.
    strInfraDN = "CN=Infrastructure," & NdncDN
    set objInfra = GetObject("LDAP://" & strInfraDN)
    Wscript.Echo "infra fsmo is " & objInfra.fsmoroleowner

    ' If the current fsmo holder is deleted, set the fsmo holder to this domain controller.

    if (InStr(objInfra.fsmoroleowner, "\0ADEL:") > 0) then

        ' Set the fsmo holder to this domain controller.
        objInfra.Put "fSMORoleOwner",  strDsServiceName
        objInfra.SetInfo

        ' Read the fsmo holder back.
        set objInfra = GetObject("LDAP://" & strInfraDN)
        Wscript.Echo "infra fsmo changed to:" & objInfra.fsmoroleowner

    End if

End if
Para determinar al maestro de infraestructura para una partición, consultar el atributo fSMORoleOwner en el objeto de infraestructura bajo la raíz contexto de nomenclatura en cuestión. Por ejemplo, consultar el atributo fSMORoleOwner en el CN = infraestructura, DC = DomainDnsZones, DC = contoso, DC = com nomenclatura raíz de contexto para determinar el maestro de infraestructura para la DC = DomainDnsZones, DC = contoso, DC = com partición. Consulta de forma similar, el atributo fSMORoleOwner en el CN = infraestructura, DC = ForestDnsZones, DC = contoso, DC = com nomenclatura raíz de contexto para determinar el maestro de infraestructura para la DC = ForestDnsZones, DC = contoso, DC = com partición.

Puede utilizar herramientas como la herramienta LDP, la herramienta Edición de interfaces de servicio de Active Directory (ADSI) y la herramienta ldifde para realizar estas consultas. Por ejemplo, la siguiente consulta utiliza la herramienta de Idifde:
ldifde -f Infra_DomainDNSZones.ldf -d "CN = infraestructura, DC = DomainDnsZones, DC = contoso, DC = com" -l fSMORoleOwner
Esta consulta devuelve el propietario de función de maestro de infraestructura para la DC = DomainDnsZones, DC = contoso, DC = com partición para el archivo Infra_DomainDNSZones.ldf.

Nota Para ejecutar el comando Adprep /rodcprep varias veces sin dañar el bosque. No se repiten las operaciones que se completaron en ejecuciones anteriores del comando rodcprep .

Si intenta ejecutar el comando rodcprep en un entorno aislado, el maestro de infraestructuras para cada dominio y para cada partición de directorio de aplicación debe disponible en el entorno para la operación tenga éxito.

Propiedades

Id. de artículo: 949257 - Última revisión: miércoles, 16 de septiembre de 2009 - Versión: 2.0
La información de este artículo se refiere a:
  • Windows Server 2008 for Itanium-Based Systems
  • Windows Server 2008 Datacenter
  • Windows Server 2008 Enterprise
  • Windows Server 2008 Datacenter without Hyper-V
  • Windows Server 2008 Enterprise without Hyper-V
  • Windows Server 2008 Standard without Hyper-V
  • Windows Server 2008 Standard
Palabras clave: 
kbmt kbtshoot kbprb KB949257 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 949257

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com