Introducción al Problema de Resolución de Nombres en Linux
Uno de los problemas de red más frustrantes a los que se enfrentan los administradores de sistemas y usuarios de distribuciones basadas en Debian o Ubuntu es el mensaje de error temporary failure in name resolution. Este fallo ocurre cuando el sistema operativo no puede traducir un nombre de dominio legible (como google.com) en una dirección IP válida debido a problemas con el servicio de DNS o la configuración de red.
Causas Principales del Error
Las razones más comunes por las que aparece este error en la terminal de Linux son:
- Falta de servidores DNS configurados correctamente en el archivo de red.
- Problemas de conectividad con el servicio
systemd-resolvedoNetworkManager. - Modificaciones accidentales en el archivo
/etc/resolv.conf. - Una interfaz de red inactiva o mal configurada.
Método 1: Configurar Servidores DNS Públicos en systemd-resolved
La forma más directa de solucionar este inconveniente es asegurarnos de que el sistema utilice servidores DNS fiables, como los de Google o Cloudflare. Sigue estos pasos:
- Abre tu terminal de Linux.
- Edita el archivo de configuración de systemd usando tu editor favorito con permisos de superusuario:
sudo nano /etc/systemd/resolved.conf - Busca la línea que comienza con
#DNS=y cámbiala para incluir servidores DNS públicos separados por espacios, por ejemplo:DNS=8.8.8.8 1.1.1.1 - Guarda el archivo presionando
Ctrl + Oy luegoEnter. Sal conCtrl + X. - Reinicia el servicio de resolución de nombres aplicando el siguiente comando:
sudo systemctl restart systemd-resolved
Método 2: Modificar Temporalmente el Archivo resolv.conf
Si necesitas una solución inmediata para comprobar si el problema se debe exclusivamente a los DNS actuales, puedes reescribir el archivo de resolución de nombres de forma manual:
- Verifica el estado actual del enlace simbólico ejecutando:
ls -l /etc/resolv.conf - Si el archivo está controlado por el sistema, puedes editar o crear un enlace temporal con servidores seguros.
- Abre el archivo de configuración de resolución:
sudo nano /etc/resolv.conf - Añade las siguientes líneas al inicio del documento:
nameserver 8.8.8.8nameserver 1.1.1.1 - Guarda los cambios y prueba hacer ping a un dominio externo:
ping -c 4 google.com
Método 3: Reiniciar el Servicio de Red NetworkManager
En ocasiones, el demonio encargado de gestionar las conexiones de red se queda colgado. Reiniciar NetworkManager suele restablecer la configuración de DNS automáticamente:
- Ejecuta el siguiente comando para reiniciar el gestor de red en distribuciones como Ubuntu, Debian o Fedora:
sudo systemctl restart NetworkManager - Si utilizas un sistema basado en Debian sin NetworkManager, puedes reiniciar las interfaces de red con:
sudo systemctl restart networking - Comprueba que tu dirección IP y puerta de enlace sigan respondiendo correctamente mediante el comando
ip a.