Introducción al Error Temporary failure in name resolution
Uno de los problemas más frustrantes para los administradores de sistemas y usuarios de distribuciones basadas en Debian y Ubuntu es encontrarse con el mensaje Temporary failure in name resolution al intentar hacer un ping, actualizar el sistema con APT o clonar un repositorio. Este fallo indica que tu sistema operativo Linux no puede traducir los nombres de dominio (como google.com) a direcciones IP debido a un problema con el servicio de resolución de nombres DNS.
Causas Principales del Fallo de Resolución DNS
Las razones por las cuales ocurre este error en Linux suelen estar relacionadas con fallos en la configuración de la red, problemas con el servicio systemd-resolved, o un archivo /etc/resolv.conf mal configurado o corrupto. A continuación, te mostramos los métodos más efectivos para solucionarlo de forma definitiva.
Método 1: Configurar Manualmente los Servidores DNS
Si el sistema no puede resolver los nombres porque los servidores DNS no están accesibles, puedes configurarlos de manera manual editando la configuración de red o el archivo correspondiente.
- Abre tu terminal de comandos con permisos de superusuario.
- Edita el archivo de configuración de DNS ejecutando:
sudo nano /etc/resolv.conf - Añade servidores DNS públicos confiables, como los de Google o Cloudflare, escribiendo las siguientes líneas:
nameserver 8.8.8.8nameserver 1.1.1.1 - Guarda los cambios presionando
Ctrl + O, luegoEntery sal conCtrl + X.
Método 2: Reiniciar el Servicio de Red y systemd-resolved
En muchas distribuciones modernas de Linux, el demonio encargado de la resolución de nombres es systemd-resolved. Si este servicio se ha detenido o se encuentra colgado, bastará con reiniciarlo.
- Comprueba el estado del servicio ejecutando:
sudo systemctl status systemd-resolved - Si está inactivo, actívalo e inicia el servicio con el siguiente comando:
sudo systemctl enable --now systemd-resolved - Para reiniciar completamente la pila de red y el servicio DNS, ejecuta:
sudo systemctl restart systemd-resolved
Método 3: Verificar la Conexión de Red y el Gateway
A veces el problema no es el DNS en sí, sino una pérdida total de conectividad con la pasarela predeterminada (gateway). Asegúrate de que tu interfaz de red esté levantada y tenga una IP asignada.
- Visualiza tus interfaces de red activas usando:
ip a - Realiza una prueba de ping a tu puerta de enlace o a una IP directa para comprobar la conectividad:
ping -c 4 8.8.8.8 - Si no hay respuesta, reinicia el gestor de red de tu distribución (por ejemplo, NetworkManager):
sudo systemctl restart NetworkManager
Siguiendo estos pasos, habrás resuelto el error de resolución de nombres en tu terminal de Linux y podrás volver a navegar y actualizar tus paquetes con total normalidad.