Búsqueda de sitios web

Cómo configurar servidores de nombres DNS permanentes en Ubuntu y Debian


/etc/resolv.conf es el archivo de configuración principal para la biblioteca de resolución de nombres DNS. El solucionador es un conjunto de funciones de la biblioteca C que proporcionan acceso al Sistema de nombres de dominio de Internet (DNS). Las funciones están configuradas para verificar entradas en el archivo /etc/hosts, o varios servidores de nombres DNS, o para usar la base de datos del host del Network Information Service (NIS ).

En los sistemas Linux modernos que utilizan systemd (administrador de sistemas y servicios), los servicios DNS o resolución de nombres se proporcionan a las aplicaciones locales a través del >servicio resuelto por systemd. De forma predeterminada, este servicio tiene cuatro modos diferentes para manejar la resolución de nombres de dominio y utiliza el archivo auxiliar DNS de systemd (/run/systemd/resolve/stub-resolv.conf) en el modo de operación predeterminado.

El archivo de código auxiliar DNS contiene el stub 127.0.0.53 local como único servidor DNS y se redirige al archivo /etc/resolv.conf que se utilizó para agregar el servidores de nombres utilizados por el sistema.

Si ejecuta el siguiente comando ls en /etc/resolv.conf, verá que este archivo es un enlace simbólico a /run/systemd/resolve/stub-resolv.conf archivo.

ls -l /etc/resolv.conf

lrwxrwxrwx 1 root root 39 Feb 15  2019 /etc/resolv.conf -> ../run/systemd/resolve/stub-resolv.conf

Desafortunadamente, debido a que /etc/resolv.conf es administrado indirectamente por el servicio systemd-resolved y, en algunos casos, por el servicio de red (mediante el uso de initscripts< o NetworkManager), cualquier cambio realizado manualmente por un usuario no se puede guardar permanentemente o solo dura un tiempo.

En este artículo, mostraremos cómo instalar y utilizar el programa resolvconf para configurar servidores de nombres DNS permanentes en el archivo /etc/resolv.conf en Debian. distribuciones Linux y Ubuntu.

¿Por qué querrías editar el archivo /etc/resolv.conf?

La razón principal podría ser porque la configuración de DNS del sistema está mal configurada o prefieres utilizar servidores de nombres específicos o propios. El siguiente comando cat muestra el servidor de nombres predeterminado en el archivo /etc/resolv.conf de mi sistema Ubuntu.

cat /etc/resolv.conf

En este caso, cuando aplicaciones locales como el administrador de paquetes APT intentan acceder a los FQDN (nombres de dominio completos) en la red local, el resultado es un “ Error temporal en la resolución de nombres” como se muestra en la siguiente captura de pantalla.

Lo mismo sucede cuando ejecuta un comando ping.

ping google.com

Entonces, cuando un usuario intenta configurar manualmente los servidores de nombres, los cambios no duran mucho o se revocan después de reiniciar. Para resolver esto, puede instalar y utilizar la utilidad reolvconf para que los cambios sean permanentes.

Para instalar el paquete resolvconf como se muestra en la siguiente sección, primero debe configurar manualmente los siguientes servidores de nombres en el archivo /etc/resolv.conf, para poder acceder los FQDM de los servidores de repositorio de Ubuntu en Internet.

nameserver 8.8.4.4
nameserver 8.8.8.8

Lea también: Cómo configurar DNS local usando el archivo /etc/hosts en Linux

Instalación de resolvconf en Ubuntu y Debian

Primero, actualice los paquetes de software del sistema y luego instale resolvconf desde los repositorios oficiales ejecutando los siguientes comandos.

sudo apt update
sudo apt install resolvconf

Una vez que se complete la instalación de resolvconf, systemd activará el resolvconf.service para que se inicie y habilite automáticamente. Para comprobar si está en funcionamiento, emita el siguiente comando.

sudo systemctl status resolvconf.service

Si el servicio no se inicia y habilita automáticamente por algún motivo, puede iniciarlo y habilitarlo de la siguiente manera.

sudo systemctl start resolvconf.service
sudo systemctl enable resolvconf.service
sudo systemctl status resolvconf.service

Configurar servidores de nombres DNS permanentes en Ubuntu y Debian

A continuación, abra el archivo de configuración /etc/resolvconf/resolv.conf.d/head.

sudo nano /etc/resolvconf/resolv.conf.d/head

y agregue las siguientes líneas en él:

nameserver 8.8.8.8 
nameserver 8.8.4.4

Guarde los cambios y reinicie resolvconf.service y systemd-resolved o reinicie el sistema.

sudo systemctl restart resolvconf.service
sudo systemctl restart systemd-resolved.service

Ahora, cuando revise el archivo /etc/resolv.conf, las entradas del servidor de nombres deberían almacenarse allí de forma permanente. De ahora en adelante, no enfrentará ningún problema relacionado con la resolución de nombres en su sistema.

Espero que este breve artículo le haya ayudado a configurar los servidores de nombres DNS permanentes en sus sistemas Ubuntu y Debian. Si tiene alguna consulta o sugerencia, compártala con nosotros en la sección de comentarios a continuación.