Uso de herramientas de diagnóstico para un Controlador de Dominio
Uso de herramientas de diagnóstico para un Controlador de Dominio para Windows 2000, Windows 2003 o Windows 2008,
A continuación de describen recursos y herramientas de los que un administrador de sistemas dispone a mano para poder llevar a cabo ante determinadas circunstancias tareas tan necesarias como pueden ser la verificación de las réplicas entre Controladores de Dominio, repaso de la sincronización horaria, chequeo de puertos necesarios para el Directorio Activo, registros necesarios en un servidor DNS, etc...
El documento es orientativo y hay que destacar siempre que su uso puede depender de las diferentes circunstancias y situaciones que se puedan dar a la hora de tener que realizar diagnósticos, chequeos y diferentes operaciones de mantenimiento sobre nuestro Directorio Activo y Controladores de Dominio que lo mantienen.
Qué saber antes de empezar: breve introducción al Directorio Activo
Antes de poder montar una infraestructura de red basada en los servicios de directorio de Microsoft (Directorio Activo), es necesario tener claro los conceptos y funciones principales que hacen posible que dicha tecnología sirva para implementar una solución y no un problema. Es por eso que hay que conocer muy bien los conceptos básicos que se interrelacionan entre sí a la hora de hacer funcionar el Directorio Activo. A continuación se expone una breve lista y una pequeña descripción de lo que una persona debe conocer antes de implementar una solución con el Directorio Activo; sería muy recomendable que se repasaran dichos términos/tecnologías en la propia ayuda del sistema o en la web de Microsoft para poder comprender mejor el funcionamiento de lo que se va a explicar:
Directorio Activo, ¿qué es?
El Directorio Activo es el servicio de directorio de Microsoft…pero, ¿qué es un servicio de directorio?
Un servicio de directorio es como una base de datos para guardar gran cantidad de información y poder consultarla, agruparla, modificarla, etc.; haciendo un ejemplo, es como si fuera una agenda donde vamos a guardar y organizar la información que para nosotros es necesaria y útil.
Por tanto, en el Directorio Activo guardaremos la información útil para la empresa, y después poder hacer diversos tipos de acciones sobre dicha información.
DNS
El servicio de DNS sirve para la resolución de nombres de máquina a una dirección IP y viceversa. Además, para el Directorio Activo, es su base, o mejor dicho, son sus cimientos; si el DNS no está bien configurado o tiene problemas, entonces nuestro diseño de Directorio Activo no funcionará adecuadamente y nos dará más problemas que soluciones, ya que el Directorio Activo usa el servicio de DNS para poder dejar información que después las estaciones de trabajo tendrán que poder consultar para interactuar correctamente con el servicio de directorio (validación, consultas, búsquedas, etc.).
Maestros de Operaciones (FSMO) y Global Catalog
A pesar de que a partir de Windows 2000 Server se ha cambiado el modelo de réplicas basado en “maestro-esclavo” como había en NT4 (el servidor que hacía de PDC actualizaba los cambios y después replicaba a los BDC que pudiera haber) a “multimaestro” (cualquier DC puede actualizar los datos y después replicarlos con el resto de DC’s), hay que tener en cuenta que ciertas operaciones “críticas” e incluso cotidianas sólo pueden ser llevadas a cabo por determinados DC que lleven alguno de los roles especiales. Esos roles sirven para concretar unas funciones específicas a llevar a cabo por un DC, por lo tanto, es muy importante comprender la función de éstos y las consecuencias que puede haber en caso de una caída (en el apartado A.3 Implicaciones de un DC, FSMO o Global Catalog caído se puede ver más detaalladamente una lista de posibles implicaciones). A continuación podemos ver una serie de enlaces donde se explican y detallan estos roles especiales:
Sitios (sites)
Un site es simplemente una agrupación de subredes lógicas, mediante la cual, el servicio de directorio será capaz de generar internamente y de manera transparante la topología de replicación entre servidores de subredes con buena comunicación entre sí, dar la posibilidad de establecer horarios e intervalos de replicación entre DC’s de diferentes subredes que no tengan tan buena comunicación y aprovechar así mejor el ancho de banda, o para poder resolver mejor las peticiones de un cliente (así, por ejemplo, es posible que un cliente quiera consultar un servidor que sea Global Catalog; según la subred a la que pertenezca el cliente, y si está está definida en algún site, el servicio de directorio será capaz de proporcionar a ese cliente una respuesta informándole de los servidores de Global Catalog a los que más “fácil y rápidamente” puedan conectar para llevar a cabo su petición, y evitar así, por ejemplo, responderle con un GC que pudiera estar en una subred con un ancho de banda muy bajo).
Digamos que estos 4 puntos descritos son los pilares básicos que deben conocerse y entenderse para poder llevar a cabo una correcta implementación basada en una solución de Directorio Activo (por supuesto, por debajo hay mucho más que se puede ver mirando muchos de los enlaces o documentación aquí adjunta o en la web de Microsoft).
Si alguna función o parte de estos 4 puntos falla, por la causa que sea, supondrá un problema ya que podremos empezar a experimentar ciertos y diversos “comportamientos extraños” con nuestro Directorio Activo.
Problemas tan diversos como la imposibilidad de que un usuario inicie sesión, que un DC deje de replicar con otro, no poder abrir una consola de gestión, o que no podamos unir máquinas al dominio pueden darse si no implementamos correctamente nuestro Directorio Activo.
Es importante recalcar que la mayor parte de los problemas más comunes o cotidianos, se suelen deber en gran parte a una mala configuración DNS, tanto del servidor como en la parte cliente, de ahí que sea necesario recalcar que si no entendemos bien el funcionamiento de un DNS ni su implicación y relación estrechísima con el Directorio Activo, tendremos entonces muchos problemas en muchas partes que afecten a los clientes; por ejemplo, no se aplicarán correctamente las políticas de grupo; los clientes no podrían localizar servidores para hacer consultas y peticiones como puede ser un servidor para el inicio de sesión; la réplica entre DC’s falla debido a que no son capaces de conectar correctamente entre sí, etc.
La definición de sites también es importantísima, ya que con ella podemos evitar que un cliente de una sede, por ejemplo, se valide en un DC de otra sede de otro país teniendo un DC en su misma subred u otra más accesible. O evitar que un DC de una sede replique con otro de otra sede en horas de trabajo, restando y degradando así el ancho de banda, seguramente más necesario a esas horas para otro tipo de operaciones. Es común también pensar que si en una subred remota no hay ningún DC, no es necesario definirla porque no va a afectar a nuestro diseño ya que mucha gente piensa que los sites sólo son útiles de cara a los DC’s para replicar entre sí. Nada más lejos de la realidad. Como hemos explicado, los sites no sólo sirven para que los DC’s repliquen a horas e intervalos establecidos…si no para que clientes de esa subred puedan localizar servicios en subredes más próximas o con mejor ancho de banda que otras posibles que pueda haber sin tener que generar tráfico de red innecesario o siquiera obtener una respuesta adecuada. Un ejemplo claro como hemos dicho antes, puede ser una oficina pequeña de 5 puestos de trabajo, que no tengan ningún DC en esa oficina. Para iniciar sesión tendrán que localizar un DC, y por tanto, preguntarán al DNS por un servidor válido para ello; si no hay una definición de sites correcta, es posible que el DNS le responda cualquier servidor que pueda estar en una sede remota con un ancho de banda pésimo…con lo cual ya tenemos un problema grave; en cambio, si hay una definición de Sites adecuada, el DNS habrá registrado mediante el servicio de directorio qué DC’s pueden ser los más “óptimos” para esa pequeña red remota a la hora de proporcionarles el inicio de sesión. U otro ejemplo menos visto puede darse en el acceso a un recurso de DFS que puede estar replicado en varios servidores. Con la definición de sites, un cliente podrá saber qué servidor es el más “próximo” o propicio para acceder a dicho DFS; sin la definición de sites y subredes, no.
Se pueden dar muchísimos más casos, y es por ello que a continuación se describen una serie de herramientas y procedimientos que podemos usar para intentar detectar y solventar los problemas que se nos puedan presentar.
Realizar un diagnóstico del DC
Ante algún posible fallo relacionado con el AD, lo primero que podemos mirar es el resultado que se produce al ejecutar las siguientes herramientas de diagnóstico para el servicio de directorio (para poder hacer uso de ellas es necesario instalar las support tools del CD de Windows 2003):
1. DCDIAG
Esta herramienta sirve para hacer una serie de test a los DC’s del dominio o bosque con el fin de poder encontrar algún error entre ellos. Un ejemplo de un dcdiag de un DC que esté funcionando correctamente puede ser el siguiente:
Domain Controller Diagnosis
Performing initial setup:
Done gathering initial info.
Doing initial required tests
Testing server: Default-First-Site-Name\DCLAB1
Starting test: Connectivity
......................... DCLAB1 passed test Connectivity
Doing primary tests
Testing server: Default-First-Site-Name\DCLAB1
Starting test: Replications
......................... DCLAB1 passed test Replications
Starting test: NCSecDesc
......................... DCLAB1 passed test NCSecDesc
Starting test: NetLogons
......................... DCLAB1 passed test NetLogons
Starting test: Advertising
......................... DCLAB1 passed test Advertising
Starting test: KnowsOfRoleHolders
......................... DCLAB1 passed test KnowsOfRoleHolders
Starting test: RidManager
......................... DCLAB1 passed test RidManager
Starting test: MachineAccount
......................... DCLAB1 passed test MachineAccount
Starting test: Services
IsmServ Service is stopped on [DCLAB1]
......................... DCLAB1 failed test Services
Starting test: ObjectsReplicated
......................... DCLAB1 passed test ObjectsReplicated
Starting test: frssysvol
......................... DCLAB1 passed test frssysvol
Starting test: frsevent
......................... DCLAB1 passed test frsevent
Starting test: kccevent
......................... DCLAB1 passed test kccevent
Starting test: systemlog
......................... DCLAB1 passed test systemlog
Starting test: VerifyReferences
......................... DCLAB1 passed test VerifyReferences
Running partition tests on : ForestDnsZones
Starting test: CrossRefValidation
......................... ForestDnsZones passed test CrossRefValidation
Starting test: CheckSDRefDom
......................... ForestDnsZones passed test CheckSDRefDom
Running partition tests on : DomainDnsZones
Starting test: CrossRefValidation
......................... DomainDnsZones passed test CrossRefValidation
Starting test: CheckSDRefDom
......................... DomainDnsZones passed test CheckSDRefDom
Running partition tests on : Schema
Starting test: CrossRefValidation
......................... Schema passed test CrossRefValidation
Starting test: CheckSDRefDom
......................... Schema passed test CheckSDRefDom
Running partition tests on : Configuration
Starting test: CrossRefValidation
......................... Configuration passed test CrossRefValidation
Starting test: CheckSDRefDom
......................... Configuration passed test CheckSDRefDom
Running partition tests on : laboratorio
Starting test: CrossRefValidation
......................... laboratorio passed test CrossRefValidation
Starting test: CheckSDRefDom
......................... laboratorio passed test CheckSDRefDom
Running enterprise tests on : laboratorio.test
Starting test: Intersite
......................... laboratorio.test passed test Intersite
Starting test: FsmoCheck
......................... laboratorio.test passed test FsmoCheck
Una opción interesante para chequear con ésta herramienta es que el DC haya registrado correctamente en los DNS los registros necesarios para que sea reconocido y anunciado en el AD como un DC válido:
dcdiag /test:registerindns /dnsdomain:FQDN /v
ej:
dcdiag /test:registerindns /dnsdomain:Laboratorio.test /v
La salida del comando si está correcto será:

En caso de que el resultado no sea correcto habría que repasar los DNS que tiene configurado a nivel de la conexión de red para verificar que son los adecuados.
2. NETDIAG
Esta herramienta sirve para hacer una serie de test a nivel de red y conexiones en el DC que se lanza. Un ejemplo de un netdiag puede ser el siguiente:>
Computer Name: DCLAB1
DNS Host Name: dclab1.laboratorio.test
System info : Windows 2000 Server (Build 3790)
Processor : x86 Family 15 Model 2 Stepping 9, GenuineIntel
List of installed hotfixes :
KB819696
KB823182
KB823353
KB823559
KB824105
KB824141
KB824151
KB825119
KB828035
KB828741
KB833987
KB834707
KB835732
KB837001
KB839643
KB839645
KB840315
KB840374
KB840987
KB841356
KB841533
KB867460
KB867801
KB873376
Q147222
Q828026
Netcard queries test . . . . . . . : Passed
Per interface results:
Adapter : LAN-Desarrollo
Netcard queries test . . . : Passed
Host Name. . . . . . . . . : dclab1
IP Address . . . . . . . . : 192.168.102.101
Subnet Mask. . . . . . . . : 255.255.255.0
Default Gateway. . . . . . : 192.168.102.1
Dns Servers. . . . . . . . : 213.163.5.137
AutoConfiguration results. . . . . . : Passed
Default gateway test . . . : Failed
No gateway reachable for this adapter.
NetBT name test. . . . . . : Passed
[WARNING] At least one of the <00> 'WorkStation Service', <03> 'Messenger Service', <20> 'WINS' names is missing.
WINS service test. . . . . : Skipped
There are no WINS servers configured for this interface.
Adapter : Virtual_Interna
Netcard queries test . . . : Passed
Host Name. . . . . . . . . : dclab1
IP Address . . . . . . . . : 10.1.1.1
Subnet Mask. . . . . . . . : 255.255.255.0
Default Gateway. . . . . . :
Dns Servers. . . . . . . . : 10.1.1.1
10.1.1.2
AutoConfiguration results. . . . . . : Passed
Default gateway test . . . : Skipped
[WARNING] No gateways defined for this adapter.
NetBT name test. . . . . . : Passed
[WARNING] At least one of the <00> 'WorkStation Service', <03> 'Messenger Service', <20> 'WINS' names is missing.
No remote names have been found.
WINS service test. . . . . : Skipped
There are no WINS servers configured for this interface.
Global results:
Domain membership test . . . . . . : Passed
NetBT transports test. . . . . . . : Passed
List of NetBt transports currently configured:
NetBT_Tcpip_{91873FE9-2F61-4E21-947C-E99F39ABF65E}
NetBT_Tcpip_{B8D698CD-89BC-4E98-B2A6-B5F1616783EE}
2 NetBt transports currently configured.
Autonet address test . . . . . . . : Passed
IP loopback ping test. . . . . . . : Passed
Default gateway test . . . . . . . : Failed
[FATAL] NO GATEWAYS ARE REACHABLE.
You have no connectivity to other network segments.
If you configured the IP protocol manually then
you need to add at least one valid gateway.
NetBT name test. . . . . . . . . . : Passed
[WARNING] You don't have a single interface with the <00> 'WorkStation Service', <03> 'Messenger Service', <20> 'WINS' names defined.
Winsock test . . . . . . . . . . . : Passed
DNS test . . . . . . . . . . . . . : Passed
[WARNING] Cannot find a primary authoritative DNS server for the name
'dclab1.laboratorio.test.'. [ERROR_TIMEOUT]
The name 'dclab1.laboratorio.test.' may not be registered in DNS.
[WARNING] The DNS entries for this DC cannot be verified right now on DNS server 213.163.5.137, ERROR_TIMEOUT.
PASS - All the DNS entries for DC are registered on DNS server '10.1.1.1' and other DCs also have some of the names registered.
PASS - All the DNS entries for DC are registered on DNS server '10.1.1.2' and other DCs also have some of the names registered.
Redir and Browser test . . . . . . : Passed
List of NetBt transports currently bound to the Redir
NetBT_Tcpip_{91873FE9-2F61-4E21-947C-E99F39ABF65E}
NetBT_Tcpip_{B8D698CD-89BC-4E98-B2A6-B5F1616783EE}
The redir is bound to 2 NetBt transports.
List of NetBt transports currently bound to the browser
NetBT_Tcpip_{91873FE9-2F61-4E21-947C-E99F39ABF65E}
NetBT_Tcpip_{B8D698CD-89BC-4E98-B2A6-B5F1616783EE}
The browser is bound to 2 NetBt transports.
DC discovery test. . . . . . . . . : Passed
DC list test . . . . . . . . . . . : Passed
Trust relationship test. . . . . . : Skipped
Kerberos test. . . . . . . . . . . : Passed
LDAP test. . . . . . . . . . . . . : Passed
Bindings test. . . . . . . . . . . : Passed
WAN configuration test . . . . . . : Skipped
No active remote access connections.
Modem diagnostics test . . . . . . : Passed
IP Security test . . . . . . . . . : Skipped
Note: run "netsh ipsec dynamic show /?" for more detailed information
The command completed successfully
3. REPADMIN
Esta herramienta sirve para comprobar las réplicas entre los servidores. A continuación se muestra un ejemplo en el que se ven las réplicas establecidas y llevadas a cabo por el servidor “server1”:
repadmin /showrepl server1.microsoft.com
Press Enter and the following output is displayed:
repadmin /showrepl server1.microsoft.com
Building7a\server1
DC Options : IS_GC
Site OPtions: (none)
DC object GUID : 405db077-le28-4825-b225-c5bb9af6f50b
DC invocationID: 405db077-le28-4825-b225-c5bb9af6f50b
==== INBOUND NEIGHBORS ======================================
CN=Schema,CN=Configuration,DC=microsoft,Dc=com
Building7b\server2 via RPC
objectGuid: e55c6c75-75bb-485a-a0d3-020a44c3afe7
last attempt @ 2002-09-09 12:25.35 was successful.
CN=Configuration,DC=microsoft,Dc=com
Building7b\server2 via RPC
objectGuid: e55c6c75-75bb-485a-a0d3-020a44c3afe7
last attempt @ 2002-09-09 12:25.10 was successful.
DC=microsoft,Dc=com
Building7b\server2 via RPC
objectGuid: e55c6c75-75bb-485a-a0d3-020a44c3afe7
last attempt @ 2001-09-09 12:25.11 was successful
4. REPLMON
Es la utilidad gráfica del repadmin, y tiene las mismas funcionalidades pero de un modo más intuitivo y fácil de hacer e interpretar; puede comprobar el estado de la réplica entre las diferentes particiones del AD entre los diferentes DC’s implicados; forzar la sincronización entre ellos, ver errores de réplica o hacer testeos de los FSMO. A continuación se detallan las opciones más comunes y el uso de dicha herramienta. Para arrancarla basta ir a “StartàRun: replmon”:

Para añadir un DC y empezar a hacer los diagnósticos, con el botón derecho sobre Monitored Servers elegimos la opción para añadir un DC:

Nos preguntará por cómo queremos añadir o buscar el DC, si por el nombre o a través del directorio; en nuestro ejemplo será a partir del directorio:

A continuación elegiremos el site del que forme parte el DC a chequear y al propio Dc como tal:

Tras ello veremos que aparece en pantalla el DC elegido y colgando de él todas las particiones del Directorio Activo que maneja y replica con el resto de DC’s implicados:

Si expandimos cada una de las zonas podremos ver el resultado de la última sincronización que se haya efectuado con el resto de DC’s; si la sincronización es correcta aparecerá una imagen de un servidor en gris; si no ha sido así, aparecerá marcado con un aspa roja; podemos ver un ejemplo de ello a continuación:

Si pinchamos sobre alguna de las particiones con error en la réplica podremos ver el log con el resultado de la operación:

Si queremos complementar más información sobre posibles errores entre los DC’s podemos mirar también el visor de sucesos para buscar más datos al respecto. A parte, puede ser interesante en circunstancias determinadas activar a nivel de registro que los datos a recolectar en el visor de eventos sean más detallados. Para ello:
How to configure Active Directory diagnostic event logging in Windows Server http://support.microsoft.com/default.aspx?scid=kb;en-us;314980&sd=tech
Si lo que queremos es forzar la réplica de alguna de las particiones del AD con algún DC, basta con elegir dicha partición y con el botón derecho sobre ella seleccionar la opción de sincronizar con el DC elegido:


Una vez forzada la réplica podremos ver como hemos indicado antes en el log el resultado de la misma.

Para ver los controladores de dominio presentes, seleccionamos nuestro DC y con el botón derecho sobre él elegimos la opción para mostrar los DC’s.

Para ver los DC’s que sean además Global Catalog, hacemos lo mismo que anteriormente pero seleccionando dicha opción:


Si tuviéramos varios sitios y quisiéramos saber los DC’s designados como cabezas de puente para la replicación entre ellos podemos hacerlo de éste modo:

Si no hay ninguno (como en éste ejemplo) el mensaje que se devuelve será:

Si queremos ver los roles (si es que tiene) el DC o hacer testeos de los FSMO en el directorio, editamos las propiedades del Server monitorizado:


Para testear los FSMO, nos situamos en su pestaña y damos al botón del test:

Pulsamos en Query...

Si queremos ver qué “roles” o funciones definidas lleva éste DC, nos situamos sobre la pestaña de Server Flags:

Si queremos ver las replicaciones Intra-Site de éste DC con otros, nos situamos sobre la pestaña de Inbound Replication Connection:

Si queremos chequear que el KCC (el cual se encarga de generar y mantener el estado de las réplicas tanto intra como inter-site) esté funcionando adecuadamente:


Si queremos ver si hay algún error de objetos sin replicar entre los DC’s, también podemos ir al menú de “ActionàDomainàSearch DC for Replication Errors”:

Nos aparecerá la siguiente ventana en la que deberemos pulsar sobre el botón Run Search para que comience el test:


Indicamos el nombre del dominio & "OK",

Si hubiera algún error de réplicas aparecería en la pantalla anterior:

5. PORTQRY
Esta herramienta sirve para comprobar la conectividad entre los servidores mediante puertos TCP y UDP.
Por ejemplo, para verificar la conectividad al puerto 135 de un Server:
portqry /n 10.193.36.210 /p udp /e 135
Querying target system called:
10.193.36.210
Attempting to resolve IP address to a name...
IP address resolved to RKTLABDC2
UDP port 135 (epmap service): LISTENING or FILTERED
Querying Endpoint Mapper Database...
Server's response:
UUID: a00c021c-2be2-11d2-b678-0000f87a8f8e PERFMON SERVICE
ncacn_np:\\\\RKTLABDC2[\\pipe\\000003b8.000]
...
UUID: d049b186-814f-11d1-9a3c-00c04fc9b232 NtFrs API
ncacn_np:\\\\RKTLABDC2[\\pipe\\000003b8.000]
Total endpoints found: 69
==== End of RPC Endpoint Mapper query response ====
UDP port 135 is LISTENING
A parte:
HOW TO: Use Portqry to Troubleshoot Active Directory Connectivity Issues: http://support.microsoft.com/default.aspx?scid=kb;EN-US;816103
6. NSLOOKUP
Se usa para hacer test de resolución de nombres en un servidor de DNS. Es muy recomendable hacer la verificación de que los registros de tipo SRV necesarios para que el AD funcione adecuadamente estén correctamente registrados en el DNS. Para ello, en un CMD escribimos nslookup, y a continuación set q=SRV. Tras ello _ldap._tcp.dc._msdcs.ActiveDirectoryDomainName. Un ejemplo de ello:
C:\nslookup
Default Server: dc1.example.microsoft.com
Address: 10.0.0.14
set type=srv
_ldap._tcp.dc._msdcs.example.microsoft.com
Server: dc1.example.microsoft.com
Address: 10.0.0.14
_ldap._tcp.dc._msdcs.example.microsoft.com SRV service location:
priority = 0
weight = 0
port = 389
svr hostname = dc1.example.microsoft.com
_ldap._tcp.dc._msdcs.example.microsoft.com SRV service location:
priority = 0
weight = 0
port = 389
svr hostname = dc2.example.microsoft.com
dc1.example.microsoft.com internet address = 10.0.0.14
dc2.example.microsoft.com internet address = 10.0.0.15
7. DSASTAT
Esta herramienta sirve para comparar y detector diferencias entre las bases de datos de directorio de los DC’s que pueda haber. Sirve de complemento a las anteriores.
Por ejemplo, para ver las diferencias que pueda haber entre 2 DC’s (dclab1 y dclab2, del dominio laboratorio.test), ejecutaremos lo siguiente en un CMD:
Dsastat –s:dclab1;dclab2 –b:DC=laboratorio,DC=test
El resultado será:
Stat-Only mode.
Unsorted mode.
Opening connections...
dclab1...success.
Connecting to dclab1...
reading...
**> ntMixedDomain = 0
reading...
**> Options =
Setting server as [dclab1] as server to read Config Info...
dclab2...success.
Connecting to dclab2...
reading...
**> ntMixedDomain = 0
reading...
**> Options =
ignored attrType = 0x3, bIsRepl 2.5.4.3
ignored attrType = 0xb, bIsRepl 2.5.4.11
BEGIN: Getting all special metadata attr info ...
--> Adding special meta attrs, (3, cn)
--> Adding special meta attrs, (6, c)
--> Adding special meta attrs, (1376281, dc)
--> Adding special meta attrs, (7, l)
--> Adding special meta attrs, (591522, msTAPI-uid)
--> Adding special meta attrs, (10, o)
--> Adding special meta attrs, (11, ou)
END: Getting all special metadata attr info ...
No. attributes in schema = 1070
No. attributes in replicated = 1015
No. attributes in PAS = 151
Generation Domain List on server dclab1...
> Searching server for GC attribute partial set on property attributeId.
> Searching server for GC attribute partial set on property ldapDisplayName.
Retrieving statistics...
Paged result search...
Paged result search...
Svr[dclab1]. Entries = 64.
Svr[dclab2]. Entries = 64.
Svr[dclab1]. Entries = 64.
Svr[dclab2]. Entries = 64.
Svr[dclab1]. Entries = 64.
Svr[dclab2]. Entries = 64.
Svr[dclab1]. Entries = 64.
50 entries processed (7 msg queued, 0 obj stored, 0 obj deleted)... 100 entries processed (7 msg queued, 0 obj stored, 0 obj deleted)... 150 entries processed (7 msg queued, 0 obj stored, 0 obj deleted)... 200 entries processed (7 msg queued, 0 obj stored, 0 obj deleted)... 250 entries processed (7 msg queued, 0 obj stored, 0 obj deleted)... 300 entries processed (7 msg queued, 0 obj stored, 0 obj deleted)... 350 entries processed (7 msg queued, 0 obj stored, 0 obj deleted)... 400 entries processed (7 msg queued, 0 obj stored, 0 obj deleted)... Svr[dclab2]. Entries = 64.
Svr[dclab1]. Entries = 6.
Svr[dclab2]. Entries = 6.
...(Terminated query to dclab1. <No result present in message>)
...(Terminated query to dclab2. <No result present in message>)
450 entries processed (3 msg queued, 0 obj stored, 0 obj deleted)... 500 entries processed (3 msg queued, 0 obj stored, 0 obj deleted)... --> Svr[dclab1] has returned 256 objects... --> Svr[dclab2] has returned 244 objects...
-=>>|*** DSA Diagnostics ***|<<=-
Objects per server:
Obj/Svr dclab1 dclab2 Total
builtinDomain 1 1 2
classStore 1 1 2
computer 3 3 6
container 87 87 174
dfsConfiguration 1 1 2
dnsNode 59 59 118
dnsZone 6 6 12
domainDNS 1 1 2
domainPolicy 1 1 2
fileLinkTracking 1 1 2
foreignSecurityPrincipal 4 4 8
group 32 32 64
groupPolicyContainer 3 3 6
infrastructureUpdate 1 1 2
ipsecFilter 2 2 4
ipsecISAKMPPolicy 3 3 6
ipsecNFA 8 8 16
ipsecNegotiationPolicy 6 6 12
ipsecPolicy 3 3 6
linkTrackObjectMoveTable 1 1 2
linkTrackVolumeTable 1 1 2
lostAndFound 1 1 2
mSMQConfiguration 1 1 2
msDS-QuotaContainer 1 1 2
nTFRSMember 2 2 4
nTFRSReplicaSet 1 1 2
nTFRSSettings 1 1 2
nTFRSSubscriber 2 2 4
nTFRSSubscriptions 2 2 4
organizationalUnit 2 2 4
rIDManager 1 1 2
rIDSet 2 2 4
rpcContainer 1 1 2
samServer 1 1 2
secret 4 4 8
user 15 15 30
---
Total: 262 262 524
. . . . . . . . . . . . . .
Bytes per object:
Object Bytes
builtinDomain 334
classStore 322
computer 4384
container 32694
dfsConfiguration 362
dnsNode 19328
dnsZone 2022
domainDNS 3350
domainPolicy 370
fileLinkTracking 332
foreignSecurityPrincipal 1528
group 25138
groupPolicyContainer 1642
infrastructureUpdate 366
ipsecFilter 1368
ipsecISAKMPPolicy 1614
ipsecNFA 4518
ipsecNegotiationPolicy 4208
ipsecPolicy 2368
linkTrackObjectMoveTable 424
linkTrackVolumeTable 390
lostAndFound 404
mSMQConfiguration 2162
msDS-QuotaContainer 412
nTFRSMember 1224
nTFRSReplicaSet 432
nTFRSSettings 416
nTFRSSubscriber 1456
nTFRSSubscriptions 756
organizationalUnit 974
rIDManager 318
rIDSet 564
rpcContainer 340
samServer 318
secret 1624
user 8870
. . . . . . . . . . . . . .
Bytes per server:
Server Bytes
dclab1 63666
dclab2 63666
. . . . . . . . . . . . . .
Checking for missing replies...
No missing replies!INFO: Server sizes are equal.
*** Identical Directory Information Trees ***
-=>> PASS <<=-
closing connections...
dclab1; dclab2;
Tareas periódicas a llevar a cabo en un DC
Si nuestro Directorio Activo sufre contínuos cambios en la base de datos del metadirectorio (por ejemplo, adición/eliminación constante de cuentas de usuario, máquinas, políticas, etc) sería muy aconsejable una vez al mes llevar a cabo una defragmentación offline.
Si no es así, no es necesario a cabo nada en este respecto ya que la defragmentación online será suficiente.
NOTA: la periodicidad puede variar en función de muchas circunstancias y situaciones, por lo que se ha especificado es sólo a modo orientativo
A continuación se hace una relación de los problemas más comunes que se suelen dar y las posibles soluciones o tareas que podemos llevar a cabo para intentar resolverlos. Cabe recalcar que son los problemas más comunes y las soluciones más comunes, lo cual quiere decir que puede ser que se produzcan por otros motivos diferentes (en cuyo caso podemos hacer uso de las herramientas explicadas para intentar detectar el punto de fallo y obrar en consecuencia, o podemos siempre acudir a los foros de soporte gratuito de MS
http://www.microsoft.com/spanish/msdn/gruposnoticias.asp
http://www.microsoft.com/spain/technet/comunidad/grupos/default.asp ) :
La causa más común se deriva de una mala implementación o configuración del DNS, ya sea en el propio servidor o en la estación de trabajo.
Hay que repasar que los DC’s en su configuración de TCP/IP tienen los servidores DNS adecuados, y los adecuados son servidores de DNS internos en los cuales el Directorio Activo registra sus registros necesarios para el correcto funcionamiento de éste. Nunca deberá aparecer la IP de un DNS que no tenga este objetivo (por ejemplo, el de un ISP), ya que para eso deben configurarse los reenviadores
La causa más común suele ser también la descrita en el punto anterior.
Si no fuera el caso, aunque no sea la temática de este documento (las políticas de grupo o GPO necesitan su propio documento debido a que también dan mucho juego), se dejan a continuación algunos enlaces que pueden ser de ayuda u orientación:
Lo primero que deberemos verificar es que entre dichos DC’s haya conectividad por el puerto 135 TCP. Para ello podemos usar la herramienta Portquery.
Es importante tener en cuenta que los DC’s que lleven más de 60 días sin replicar ya no podrán hacerlo.
Si hay conectividad por el puerto 135 TCP, deberemos entonces repasar que hay resolución de nombres por el DNS, la sincronización horaria está correcta y repasar el visor de eventos para más información al respecto y ver si alguna de las herramientas descritas puede ayudar a averiguar más.
Un usuario necesita acceder a un DC que sea Global Catalog para poder iniciar sesión (a partir de Windows Server 2003 ya no es imperativo; se necesita un DC que tenga habilitada la posibilidad del cacheo de membresía a grupos universales y que el usuario haya hecho logon a través de dicho DC).
También es importante repasar que la sincronización horaria es la adecuada entre la estación cliente y un DC de su dominio.
Deberemos repasar que su subred esté asociada al Site adecuado, y en caso de no ser así, definirlo cuanto antes
El procedimiento adecuado en estos casos pasa primero por forzar el traspaso del FSMO de dicho DC a otro.
Tras ello, es importante eliminar la referencia de dicho DC en la metabase del Directorio Activo, ya que de lo contrario afectará al rendimiento y funcionamiento de nuestro servicio de directorio.
Una vez que se haya replicado este cambio, podemos verificar con la herramienta de Replmon que los cambios se han llevado a cabo satisfactoriamente.
Ante la caída de un DC en un dominio dado y si no hay posibilidad ninguna de restaurarlo debido por ejemplo a que el servidor ha sufrido una averigua irrecuperable, o simplemente el contenido de los discos se ha degradado, seguiremos el siguiente procedimiento:
Error 2094. No se puede eliminar el objeto DSA
Error 8419 (0x20E3)
No se encontró el objeto DSA.
el objeto de configuración NTDS puede haberse quitado ya de Active Directory porque lo haya quitado otro administrador o como consecuencia de la replicación de la eliminación con éxito del objeto después de ejecutar la utilidad DCPROMO.
Nota
También puede ver este error cuando intenta enlazar con el controlador de dominio que se va a quitar. Ntdsutil tiene que enlazar con otro controlador de dominio distinto al que se va a quitar con la limpieza de metadatos.
Ahora que se ha eliminado el objeto de configuración NTDS, puede eliminar la cuenta de equipo, el objeto miembro FRS, el registro cname (o Alias) del contenedor _msdcs, el registro A (o Host) en DNS, el objeto trustDomain para un dominio secundario eliminado y el controlador de dominio.
Si aparece el error "No se puede eliminar el objeto DSA" cuando intenta eliminar el objeto, cambie el valor de UserAccountControl. Para cambiar el valor de UserAccountControl, haga clic con el botón secundario del mouse en el controlador de dominio en ADSIEdit y, después, haga clic en Properties. En Select a property to view, seleccione UserAccountControl. Haga clic en Clear, cambie el valor por 4096 y, después, haga clic en Set. Ya puede eliminar el objeto.
Nota
El objeto de suscriptor FRS se elimina cuando se elimina el objeto de equipo porque es un objeto secundario de la cuenta de equipo.
Además, deberemos tener en cuenta lo siguiente:
Si el DC eliminado era un GC, habría que evaluar si algún servidor de aplicaciones que apuntara al GC caído deba configurarse o “re-apuntar” a un GC que esté presente y funcionando.
Si el DC eliminado era un GC, habría que evaluar añadir/promocionar un nuevo GC en el Site, dominio, o bosque.
Si el DC eliminado era responsable de algún FSMO, transferir dicha función a otro DC.
Si el DC eliminado era un servidor de DNS, actualizar la configuración de los clientes DNS en todas las estaciones de trabajo, servidores miembro, u otros DC’s que pudieran hacer uso del servidor caído para la resolución de nombres. Si se requiere, modificar el ámbito de DHCP para reflejar el borrado del servidor DNS caído.
Si el DC eliminado era un servidor de DNS, actualizar la configuración de los Reenviadotes y de las Delegaciones en cualquier otro servidor DNS que pudiera estar apuntando al DC eliminado para la resolución de nombres.
Ante la caída de un DC en un dominio dado y si no hay posibilidad ninguna de restaurarlo, y después de haber leído el punto anterior , seguiremos el siguiente procedimiento.
NOTA: Microsoft recomienda que utilice el controlador de dominio que va a asumir las funciones FSMO.
NOTA: para ver una lista de los comandos disponibles en cualquiera de los símbolos del sistema de la herramienta Ntdsutil, escriba ? y, a continuación, presione ENTRAR.
NOTA: las cinco funciones deben estar en el bosque. Si el primer controlador de dominio está fuera del bosque, asuma todas las funciones. Determine qué funciones van a estar en cada uno de los controladores de dominio restantes de forma que las cinco funciones no estén en un único servidor.
Microsoft recomienda que sólo asuma todas las funciones cuando el otro controlador de dominio no vuelve al dominio; de lo contrario, repare con las funciones el controlador de dominio que no funciona.
Si el controlador de dominio original que tiene las funciones FSMO sigue en conexión, transfiera las funciones. Escriba transfer función .
NOTA: no ponga la función Maestro de infraestructuras en el mismo controlador de dominio que el catálogo global.
En el caso de nuestro domino, gctiberica.local, esto nos es indiferente, pudiendo estar el GC en el mismo DC que el Maestro de Infraestructuras sin ningún problema.
Para comprobar si un controlador de dominio es un servidor de catálogos globales:
www.bujarra.com - Héctor Herrero - nheobug@bujarra.com - v 1.0