Compartir a través de


Solución de problemas de servidores DNS

Pruebe nuestro agente virtual: le ayudará a identificar y resolver rápidamente problemas comunes de DNS.

En este artículo se describe cómo solucionar problemas en los servidores DNS.

Comprobación de la configuración de IP

  1. Ejecute ipconfig /all en un símbolo del sistema y compruebe la dirección IP, la máscara de subred y la puerta de enlace predeterminada.

  2. Compruebe si el servidor DNS es autoritativo para el nombre que se está buscando. Si es así, consulte Comprobación de problemas con datos autoritativos.

  3. Ejecute el siguiente comando:

    nslookup <name> <IP address of the DNS server>
    

    Por ejemplo:

    nslookup app1 10.0.0.1
    

    Si recibe un error o una respuesta de tiempo de espera, consulte Comprobación de problemas de recursividad.

  4. Vaciar la memoria caché del resolutor. Para ello, ejecute el siguiente comando en una ventana de comandos con privilegios de administrador:

    dnscmd /clearcache
    

    O bien, en una ventana de PowerShell administrativa, ejecute el siguiente cmdlet:

    Clear-DnsServerCache
    

    Note

    Si el servidor funciona como un cliente DNS (por ejemplo, cuando necesita resolver nombres para sus propias operaciones), use Clear-DnsClientCache para borrar la caché del cliente DNS local. Si está solucionando problemas relacionados con el rol del servidor como un servidor DNS (que atiende registros DNS a otros clientes), use Clear-DnsServerCache para borrar la caché autoritativa del servidor y evitar que proporcione información DNS obsoleta.

  5. Repita el paso 3.

Comprobación de problemas del servidor DNS

Registro de eventos

Compruebe los registros siguientes para ver si hay errores registrados:

  • Application

  • System

  • Servidor DNS

Prueba mediante la consulta nslookup

Ejecute el comando siguiente y compruebe si el servidor DNS es accesible desde equipos cliente.

nslookup <client name> <server IP address>
  • Si el solucionador devuelve la dirección IP del cliente, el servidor no tiene ningún problema.

  • Si el solucionador devuelve una respuesta "Error del servidor" o "Consulta rechazada", es probable que la zona esté en pausa o que el servidor esté sobrecargado. Para saber si está en pausa, compruebe la pestaña General de las propiedades de la zona en la consola de DNS.

Si el solucionador devuelve una respuesta "Solicitud al servidor agota el tiempo de espera" o "Sin respuesta del servidor", es probable que el servicio DNS no se esté ejecutando. Intente reiniciar el servicio de servidor DNS ingresando el siguiente comando en la consola de comandos del servidor:

net start DNS

Si el problema se produce mientras se ejecuta el servicio, es posible que el servidor no escuche en la dirección IP que usó en la consulta nslookup. En la pestaña Interfaces de la página de propiedades del servidor de la consola DNS, los administradores pueden restringir un servidor DNS para que escuche solo en direcciones seleccionadas. Si el servidor DNS se ha configurado para limitar el servicio a una lista específica de sus direcciones IP configuradas, es posible que la dirección IP que se usa para ponerse en contacto con el servidor DNS no esté en la lista. Puede probar una dirección IP diferente en la lista o agregar la dirección IP a la lista.

En raras ocasiones, el servidor DNS podría tener una configuración avanzada de seguridad o firewall. Si el servidor se encuentra en otra red a la que solo se puede acceder a través de un host intermedio (como un enrutador de filtrado de paquetes o un servidor proxy), el servidor DNS podría usar un puerto no estándar para escuchar y recibir solicitudes de cliente. De forma predeterminada, nslookup envía consultas a servidores DNS en el puerto UDP 53. Por lo tanto, si el servidor DNS usa cualquier otro puerto, se producirá un error en las consultas nslookup. Si cree que esto podría ser el problema, compruebe si un filtro intermedio se usa intencionadamente para bloquear el tráfico en puertos DNS conocidos. Si no es así, intente modificar los filtros de paquetes o las reglas de puerto en el firewall para permitir el tráfico en el puerto UDP/TCP 53.

Comprobación de problemas con datos autoritativos

Compruebe si el servidor que devuelve la respuesta incorrecta es un servidor principal para la zona (el servidor principal estándar para la zona o un servidor que usa la integración de Active Directory para cargar la zona) o un servidor que hospeda una copia secundaria de la zona.

Si el servidor es un servidor principal

El problema puede deberse a un error de usuario cuando los usuarios escriben datos en la zona. O bien, podría deberse a un problema que afecta a la replicación de Active Directory o a la actualización dinámica.

Si el servidor hospeda una copia secundaria de la zona

  1. Examine la zona en el servidor principal (el servidor desde el que este servidor extrae las transferencias de zona).

    Note

    Puede determinar qué servidor es el servidor principal examinando las propiedades de la zona secundaria en la consola DNS.

    Si el nombre no es correcto en el servidor principal, vaya al paso 4.

  2. Si el nombre es correcto en el servidor principal, compruebe si el número de serie del servidor principal es menor o igual que el número de serie en el servidor secundario. Si es así, modifique el servidor principal o el servidor secundario para que el número de serie del servidor principal sea mayor que el número de serie en el servidor secundario.

  3. En el servidor secundario, obligue una transferencia de zona desde dentro de la consola DNS o ejecute el comando siguiente:

    dnscmd /zonerefresh <zone name>
    

    Por ejemplo, si la zona es corp.contoso.com, escriba: dnscmd /zonerefresh corp.contoso.com.

  4. Examine de nuevo el servidor secundario para ver si la zona se ha transferido correctamente. Si no es así, probablemente tenga un problema de transferencia de zona. Para obtener más información, vea Problemas de transferencia de zona.

  5. Si la zona se ha transferido correctamente, compruebe si los datos ahora son correctos. Si no es así, los datos son incorrectos en la zona principal. El problema puede deberse a un error de usuario cuando los usuarios escriben datos en la zona. O bien, podría deberse a un problema que afecta a la replicación de Active Directory o a la actualización dinámica.

Comprobación de problemas de recursividad

Para que la recursividad funcione correctamente, todos los servidores DNS que se usan en la ruta de acceso de una consulta recursiva deben poder responder y reenviar los datos correctos. Si no pueden, se puede producir un error en una consulta recursiva por cualquiera de los siguientes motivos:

  • La consulta excede el tiempo de espera antes de que pueda completarse.

  • Un servidor que se usa durante la consulta no responde.

  • Un servidor que se usa durante la consulta proporciona datos incorrectos.

Comience a solucionar problemas en el servidor que se usó en la consulta original. Compruebe si este servidor reenvía consultas a otro servidor examinando la pestaña Reenviadores de las propiedades del servidor en la consola DNS. Si la casilla Habilitar reenviadores está activada y se muestran uno o varios servidores, este servidor reenvía las consultas.

Si este servidor reenvía consultas a otro servidor, compruebe si hay problemas que afectan al servidor al que este servidor reenvía las consultas. Para comprobar si hay problemas, consulte Comprobación de problemas del servidor DNS. Cuando esa sección le indique que realice una tarea en el cliente, realicela en el servidor en su lugar.

Si el servidor es correcto y puede reenviar consultas, repita este paso y examine el servidor al que este servidor reenvía las consultas.

Si este servidor no reenvía consultas a otro servidor, pruebe si este servidor puede consultar un servidor raíz. Para ello, ejecute el siguiente comando:

nslookup
server <IP address of server being examined>
set q=NS
  • Si el resolvedor devuelve la dirección IP de un servidor raíz, es probable que tenga una delegación rota entre el servidor raíz y el nombre o la dirección IP que está intentando resolver. Siga el procedimiento Probar una delegación interrumpida para determinar en dónde tiene una delegación interrumpida.

  • Si el solucionador devuelve como respuesta "Tiempo de espera de solicitud al servidor agotado", compruebe si las sugerencias raíz apuntan a los servidores raíz que funcionan. Para ello, use el procedimiento Para ver las sugerencias raíz actuales. Si las sugerencias raíz apuntan al funcionamiento de los servidores raíz, es posible que tenga un problema de red o que el servidor use una configuración de firewall avanzada que impida que el solucionador consulte el servidor, como se describe en la sección Comprobar problemas del servidor DNS . También es posible que el valor predeterminado de tiempo de espera recursivo sea demasiado corto.

Probar de una delegación interrumpida

Para iniciar las pruebas en el procedimiento siguiente, consulte un servidor raíz válido. La prueba le guía a través de un proceso de consulta que recorre los servidores DNS desde la raíz hasta el servidor específico que está verificando para detectar una delegación rota.

  1. En el símbolo del sistema del servidor que está comprobando, escriba lo siguiente:

    nslookup
    server <server IP address>
    set norecursion
    set querytype= <resource record type>
    <FQDN>
    

    Note

    El tipo de registro de recursos es el que consultó en la consulta original y el FQDN es el que estaba consultando (finalizado por un punto).

  2. Si la respuesta incluye una lista de registros de recursos "NS" y "A" para servidores delegados, repita el paso 1 para cada servidor y use la dirección IP de los registros de recursos "A" como dirección IP del servidor.

    • Si la respuesta no contiene un registro de recursos "NS", hay una delegación interrumpida.

    • Si la respuesta contiene registros de recursos "NS", pero no hay registros de recursos "A", escriba la recursividad del conjunto y consulte individualmente los registros de recursos "A" de los servidores que aparecen en los registros "NS". Si no encuentra al menos una dirección IP válida de un registro de recursos "A" para cada registro de recursos de NS en una zona, hay una delegación interrumpida.

  3. Si determina que tiene una delegación interrumpida, corríjala agregando o actualizando un registro de recurso "A" en la zona primaria utilizando una dirección IP válida para el servidor DNS correspondiente de la zona delegada.

Pasos para ver las sugerencias de raíz actuales

  1. Inicie la consola DNS.

  2. Agregue o conéctese al servidor DNS que produjo un error en una consulta recursiva.

  3. Haga clic con el botón derecho en el servidor y seleccione Propiedades.

  4. Haga clic en Indicaciones de raíz.

Compruebe si hay conectividad básica con los servidores raíz.

  • Si parece que las sugerencias de raíz están configuradas correctamente, asegúrese de que el servidor DNS que se usa en una resolución de nombre errónea puede hacer ping a los servidores raíz mediante una dirección IP.

  • Si los servidores raíz no responden al ping por dirección IP, es posible que las direcciones IP de los servidores raíz hayan cambiado. Sin embargo, es poco habitual ver una reconfiguración de los servidores raíz.

Problemas de transferencia de zona

Ejecute las siguientes comprobaciones:

  • Compruebe el Visor de eventos para el servidor DNS principal y secundario.

  • Compruebe el servidor principal para ver si se niega a enviar la transferencia de seguridad.

  • Compruebe la pestaña Transferencias de zona de las propiedades de zona en la consola DNS. Si el servidor restringe las transferencias de zona a una lista de servidores, como las que aparecen en la pestaña Servidores de nombres de las propiedades de zona, asegúrese de que el servidor secundario está en esa lista. Asegúrese de que el servidor está configurado para enviar transferencias de zona.

  • Para comprobar si hay problemas en el servidor principal, siga los pasos descritos en la sección Comprobar problemas del servidor DNS . Cuando se le pida que realice una tarea en el cliente, realice la tarea en el servidor secundario en su lugar.

  • Compruebe si el servidor secundario ejecuta otra implementación del servidor DNS, como BIND. Si es así, es posible que el problema tenga una de las siguientes causas:

    • Es posible que el servidor principal de Windows esté configurado para enviar transferencias de zona rápida, pero es posible que el servidor secundario de terceros no admita transferencias de zona rápida. Si es así, deshabilite las transferencias de zona rápida en el servidor principal desde la consola DNS. Para ello, seleccione la casilla Habilitar enlaces secundarios en la pestaña Opciones avanzadas de las propiedades del servidor.

    • Si una zona de búsqueda directa en el servidor de Windows contiene un tipo de registro (por ejemplo, un registro SRV) que el servidor secundario no admite, es posible que el servidor secundario tenga problemas al extraer la zona.

Compruebe si el servidor principal ejecuta otra implementación de servidor DNS, como BIND. Si es así, es posible que la zona del servidor principal incluya registros de recursos incompatibles que Windows no reconoce.

Si el servidor maestro o secundario ejecuta otra implementación del servidor DNS, compruebe ambos servidores para asegurarse de que admiten las mismas características. Puede comprobar el servidor Windows en la consola DNS de la pestaña Avanzadas de la página de propiedades del servidor. Además del cuadro Habilitar secundarias de enlace, esta página incluye la lista desplegable Comprobación de nombres. Esto le permite seleccionar la aplicación del cumplimiento estricto de RFC para caracteres en nombres DNS.