Cómo Solucionar el Error de Resolución DNS y resolv.conf Vacío en Linux Paso a Paso

Cómo Solucionar el Error de Resolución DNS y resolv.conf Vacío en Linux Paso a Paso
Anuncio relacionado

Introducción al Problema de Resolución DNS en Linux

Uno de los dolores de cabeza más comunes para los administradores de sistemas y usuarios avanzados de Linux es perder la conexión a internet a pesar de tener una IP asignada correctamente. El síntoma más claro es poder hacer ping a una dirección IP (como 8.8.8.8), pero recibir un error como Temporary failure in name resolution al intentar navegar o actualizar paquetes. Esto ocurre, en la gran mayoría de los casos, porque el archivo de configuración del sistema encargado de traducir los nombres de dominio a direcciones IP (/etc/resolv.conf) está vacío, mal configurado o ha sido sobrescrito por algún servicio de red como NetworkManager o systemd-resolved.

Causas Principales del Error en /etc/resolv.conf

  • El archivo /etc/resolv.conf se ha quedado sin servidores DNS configurados (Nameservers).
  • Un cliente DHCP o gestor de redes sobrescribe o elimina los servidores DNS automáticamente al reiniciar la interfaz.
  • El enlace simbólico de systemd-resolved está roto o apunta a una dirección incorrecta (127.0.0.53).
  • Problemas temporales con la interfaz de red local o el demonio de red.

Método 1: Solución Temporal Añadiendo Servidores DNS Manualmente

Si necesitas recuperar la conexión a internet de inmediato para poder descargar paquetes o investigar más a fondo, puedes editar el archivo manualmente y añadir servidores DNS públicos (como los de Google o Cloudflare).

  1. Abre el terminal con permisos de superusuario ejecutando el siguiente comando:
    sudo nano /etc/resolv.conf
  2. Añade las líneas correspondientes a los servidores DNS de Google o Cloudflare al principio del archivo:
    nameserver 8.8.8.8
    nameserver 1.1.1.1
  3. Guarda los cambios presionando Ctrl + O, luego Enter, y sal del editor con Ctrl + X.
  4. Prueba tu conexión haciendo ping a un dominio:
    ping google.com

Nota: Este método es temporal; si reinicias el equipo o el servicio de red, es muy probable que el sistema vuelva a sobrescribir el archivo.

Método 2: Configurar NetworkManager para Evitar que Borre el Archivo

Si utilizas una distribución basada en Debian, Ubuntu o Fedora que emplea NetworkManager, puedes asegurar que los servidores DNS persistan incluso después de reiniciar los servicios de red.

  1. Abre el archivo de configuración principal de NetworkManager con tu editor preferido:
    sudo nano /etc/NetworkManager/NetworkManager.conf
  2. Busca la sección [main] y asegúrate de añadir o modificar la línea de plugins de DNS de la siguiente manera:
    dns=default
  3. Guarda y cierra el archivo.
  4. Reinicia el servicio de NetworkManager para aplicar los cambios de forma permanente:
    sudo systemctl restart NetworkManager

Método 3: Restaurar el Enlace Simbólico de systemd-resolved

En sistemas modernos con systemd, /etc/resolv.conf debe ser un enlace simbólico que apunte al archivo stub gestionado por el sistema. Si este enlace se ha roto, la resolución de nombres fallará por completo.

  1. Comprueba el estado actual del archivo ejecutando:
    ls -l /etc/resolv.conf
  2. Si el archivo no es un enlace simbólico o apunta a una ruta errónea, elimínalo o renuévalo con el siguiente comando:
    sudo rm /etc/resolv.conf
  3. Crea nuevamente el enlace simbólico correcto hacia systemd-resolved:
    sudo ln -sf /run/systemd/resolve/stub-resolv.conf /etc/resolv.conf
  4. Reinicia el servicio para restablecer las conexiones:
    sudo systemctl restart systemd-resolved

Siguiendo estos pasos habrás recuperado por completo la capacidad de resolución DNS en tu sistema Linux y evitado futuros bloqueos en tus conexiones de red.

Anuncio
Seguir Leyendo

Guías y Soluciones Relacionadas

Windows Apps Juegos
PrestaShop

Cómo Solucionar el Error Allowed Memory Size en PrestaShop Definitivamente

Aprende a solucionar el molesto error de memoria agotada en PrestaShop modificando los parámetros de tu servidor. Recupera el acceso a tu tienda hoy mismo.

Leer guía completa →
Desarrollo

Cómo Solucionar el Error Fatal 'Maximum Execution Time Exceeded' en PHP de Forma Definitiva

Descubre por qué se origina el límite de tiempo de ejecución en PHP y cómo solucionarlo definitivamente modificando la configuración de tu servidor.

Leer guía completa →
Magento

Cómo Solucionar el Error de Indexación en Magento 2 Paso a Paso

Los indexadores bloqueados en Magento 2 pueden desactualizar los precios y stock de tu tienda. Descubre cómo solucionarlo ejecutando comandos CLI de forma segura.

Leer guía completa →