Ejercicio 1: Resolución de nombres de dominios en sistemas Linux
¿Qué vas a aprender en este ejercicio?
- Los distintos mecanismos que podemos usar en una distribución Linux para resolver nombres.
- Las distintas utilidades para realizar resoluciones de nombres.
¿Qué tienes que hacer?
- Crea una máquina virtual con Vagrant usando el box
debian/bookworm64
. Realiza las siguientes tareas:- Instala la herramienta
dig
(paquetednsutils
). - Comprueba el servidor DNS que está utilizando el sistema. ¿Qué fichero tienes que comprobar?
- ¿Qué mecanismos de resolución están configurado y en qué orden se van consultar?- ¿Qué fichero tienes que comprobar? ¿Qué base de datos nos interesa dentro de ese fichero?
- Añade la siguiente resolución estática:
www.example.org
es la dirección IP 192.168.1.100. ¿En qué fichero has configurado está resolución? - Utiliza la herramienta
dig
para hacer una resolución dewww.example.org
para ello ejecuta:dig www.example.org
Fíjate en la respuesta:
ANSWER SECTION
. ¿Por qué no ha salido la dirección que has puesto en la resolución estática?. ¿Qué servidor DNs ha respondido?. Fíjate en la penúltima línea que empieza por;; SERVER
. - Utiliza el comando que te permite realizar consultas usando el sistema NSS. ¿Qué dirección nos ofrece?. ¿Por qué?
- Quita la resolución estática y vuelve a ejecutar el comando anterior. ¿Qué dirección nos ofrece? ¿Por qué?
- En nuestra máquina vagrant se ha generado un fichero
/etc/resolv.conf
al crearse con el servidor DNS ofrecido por DHCP. Normalmente los sistemas tienen instalado un demonio que se encarga de actualizar este fichero. Instala el paqueteresolvconf
, y comprueba de nuevo el fichero/etc/resolv.conf
(ahora te pone un comentario indicando que no edites el fichero que es generado por el demonio). Si no tiene un DNS configurado, reinicia la red para queresolvconf
haga su trabajo. Vuelve a comprobar el contenido del fichero.
- Instala la herramienta
- Vamos a trabajar con Multicast DNS. Realiza las siguientes tareas:
- Instala
avahi
(paquetesavahi-daemon avahi-utils
) en tu máquina virtual y en tu anfitriona. - Comprueba la nueva configuración de mecanismos de resolución y su orden en el fichero
/etc/nsswitch.conf
. - Utiliza la utilidad
getent ahosts
para realizar una resolución desde tu máquina virtual del nombre de tu anfitriona. Recuerda que el nombre seránombre_host.local
. - Utiliza la herramienta
ping
para comprobar que hay conectividad desde la anfitriona a la máquina virtual usando su nombre multicast DNS.
- Instala
- systemd-resolved. Realiza las siguientes tareas:
- en esta máquina no está instalado
systemd-resolved
, instálalo conapt
y comprueba que está funcionando consystemctl status
. - Accede al fichero
/etc/nsswitch.conf
y comprueba los nuevos mecanismos de resolución. - Accede al fichero
/etc/resolv.conf
. ¿Qué configuración DNS se ha configurado? (archivo “stub”, DNS del sistema, o ha mantenido elresolv.conf
). Comprueba que el nuevo/etc/resolv.conf
es un enlace simbólico. ¿Qué es el servidor DNS 127.0.0.53? - Usa el comando de
resolvectl
para que te muestre la configuración de resolución actual. - Añade de nuevo la resolución estática del ejercicio anterior, y usando
resolvectl
realiza una consulta aẁww.example.org
. - Vamos a comprobar la resolución del nombre local (mecanismo
myhostname
): conresolvectl
realiza una consulta al nombre del equipo. También lo puedes hacer alnombre_del_equipo.local
. Este nombre no es necesario que este en en/etc/hosts
. - Ahora ejecuta la opción correspondiente al comando
resolvectl
para mostrar el servidor DNS que estamos utilizando. - Quita la resolución estática y usando
resolvectl
realiza una consulta aẁww.example.org
. - Prueba a realizar una resolución con el comando
getenv
. ¿Puedes seguir utilizando este comando? ¿Por qué?. Razona tu respuesta. - Prueba a hacer una consulta con
dig
. ¿Puedes seguir utilizando este comando? ¿Por qué?. Razona tu respuesta.
- en esta máquina no está instalado