viernes, 17 de agosto de 2007

Error Extraño de Microsoft Exchange 2004

    

    Son las 5:00 de la tarde. El día se está terminando y no ha sucedido ningún problema mayor… De repente, te llaman de la oficina principal: "El email no funciona", te reportan desde el otro lado de la línea. Tu primera reacción es revisar el servidor, para ver si se apago, se desconecto o si se daño algún disco duro. Pero nada, todo está bien. Entonces te preguntas si serán los "Domain Controllers" que aun corriendo Windows Server 2003 R2 Standard Edition han dejado de funcionar. Pero nada, todo está bien.

    Lo siguiente es revisar el Event Viewer, cuestión de minuciosamente chequear el Application Log en busca del error que mantiene a los usuarios con su Outlook desconectado. Allí te encuentras con el siguiente panorama:

Event ID: 2103 Category: Topology     Source: MSExchangeDSAccess

Process STORE.EXE (PID=1192). All Global Catalog Servers in use are not responding:

serverx.domainx.com

servery.domainx.com


 

Event ID: 2102 Category: Topology     Source: MSExchangeDSAccess

Process MAD.EXE (PID=2636). All Domain Controller Servers in use are not responding:

serverx.domainx.com

servery.domainx.com


 

Event ID: 8026 Category: LDAP Operations     Source: MSExchangeAL

LDAP Bind was unsuccessful on directory serverx.domainx.com for distinguished name ''. Directory returned error:[0x51] Server Down. DC=domainx,DC=com    

Bueno, algo serio está sucediendo. Aparentemente el Exchange Server no se está comunicando con los domain controllers. El siguiente paso es hacer un ping a las direcciones IP de esos servidores, para verificar si pueden verse entre ellos. El ping resulta exitoso, lo que indica que no hay ningún problema de conexión física entre los equipos. En este punto, probablemente ya te estás golpeando contra la pared, y tus usuarios también…

    Si a nivel de capa 1 y capa 2 (Modelo OSI) todo anda bien, entonces tenemos que buscar un poco más para arriba. Si revisamos el firewall de Windows, podemos verificar cuales interfaces están protegidas por el mismo, así como revisar los paquetes y protocolos que están siendo bloqueados. Para esto abrimos el pfirewall.log y vemos lo siguiente:

2007-08-16 17:07:28 OPEN TCP 139.0.7.5 8.15.231.6 22325 389 - - - - - - - - -

2007-08-16 17:07:29 CLOSE TCP 139.0.7.5 8.15.231.6 22325 389 - - - - - - - - -

2007-08-16 17:07:47 CLOSE TCP 128.0.3.3 8.15.231.6 22324 135 - - - - - - - - -

Aquí podemos ver que el servidor de Exchange está tratando de comunicarse con el Puerto 389 (LDAP) de la dirección 8.15.231.6, lo cual esta incorrecto, porque la red interna esta en el rango 172.x.x.x

Y con este importante descubrimiento… podemos ir directo a la causa del problema!!! Un servidor Exchange normalmente tiene 2 interfaces, una pública y una privada. Esto así a menos que este protegido por un ISA Server u otro tipo de firewall, en donde nuestro servidor solo usaría una interface interna. Para evitar este error, tenemos que dejar la interface externa sin configuración de DNS y utilizar solo el DNS de la red interna, configurado en la interface interna del Exchange Server. Esto evita que la resolución de nombres a direcciones IP sea enviada a un servidor DNS externo y publico, como estaba sucediendo en este caso, resultando en un rompimiento de la comunicación entre el servidor de correo electrónico y los controladores de dominio.

Luego de hacer el cambio de DNS, se debe reiniciar el servidor y Voilá…todo vuelve a la normalidad…

No hay comentarios:

Publicar un comentario