BIND: Resolver connection timed out; no servers could be reached

    Si al relizarle una consulta a su servidor DNS (dig @IP-Del-Servidor-DNS dominio) obtiene el mensaje de: connection timed out; no servers could be reached, es probable que:

    1. El servidor DNS no se esté ejecutando
    2. El servidor DNS no esté respondiendo a las peticiones en la dir IP especificada
    3. El muro cortafuegos esta bloqueando las peticiones que van hacia el servidor DNS

    Solución

    1

    Comprobar que el servidor DNS se está ejecutando

    CentOS/Fedora/RHEL

    # service named status
    

    Si el servidor DNS está detenido, entonces

    Iniciar el servidor DNS

    CentOS/Fedora/RHEL

    # service named start
    
    Comprobar
    $ dig @IP-Del-Servidor-DNS dominio
    

    2

    Editar el fichero de configuración
    # vim /etc/named.conf
    
    Buscar la directiva listen-on y agregarle la IP del servidor DNS

    Por ejemplo si antes el valor de listen-on era:

    listen-on port 53 { 127.0.0.1; }
    

    Después de agregar la dir IP quedaría:

    listen-on port 53 { 127.0.0.1; IP-Servidor-DNS; }
    
    Reiniciar BIND

    CentOS/Fedora/RHEL

    # service named restart
    
    Comprobar
    $ dig @IP-Del-Servidor-DNS dominio
    

    3

    Comprobar que el muro cortafuegos está activo
    $ service iptables status
    
    Comprobar que el puerto 53 esta abierto
    # iptables -L -n |grep 53
    ACCEPT     tcp  --  0.0.0.0/0            0.0.0.0/0           tcp dpt:53 
    ACCEPT     udp  --  0.0.0.0/0            0.0.0.0/0           udp dpt:53 
    
    Si el iptables esta bloqueando el puerto 53, ejecutar como root
    iptables -A INPUT -p udp -s 0/0 -d IP-Servidor-DNS --dport 53 
    -m state --state NEW,ESTABLISHED -j ACCEPT
    iptables -A OUTPUT -p udp -s IP-Servidor-DNS --sport 53 -d 0/0 
    -m state --state ESTABLISHED -j ACCEPT
    iptables -A INPUT -p udp -s 0/0 --sport 53 -d IP-Servidor-DNS --dport 53 
    -m state --state NEW,ESTABLISHED -j ACCEPT
    iptables -A OUTPUT -p udp -s IP-Servidor-DNS --sport 53 -d 0/0 --dport 53 
    -m state --state ESTABLISHED -j ACCEPT
    iptables -A INPUT -p tcp -d IP-Servidor-DNS --dport 53 
    -m state --state NEW,ESTABLISHED -j ACCEPT
    iptables -A OUTPUT -p tcp -s IP-Servidor-DNS --sport 53 
    -m state --state ESTABLISHED -j ACCEPT
    
    Comprobar
    $ dig @IP-Del-Servidor-DNS dominio
    



    4 Comentarios

    1. Pingback: Resolver connection timed out; no servers could be reached » Red-Orbita

    2. Jesús

      Muchas gracias por tu aporte, me fue de gran utilidad para mi proyecto.

      Responder
    3. Orlando

      excelente agredecido

      Responder
    4. Irving Hunk

      Hola, muchas gracias por tu aportación. En mi caso que trabajo con Oracle Enterprise Linux, adicionalmente fue necesario como último comando grabar las nuevas reglas o éstas se pierden en un reinicio del sistema:

      service iptables save

      Un saludo cordial.

      Responder

    Dejar un comentario

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *