¿Te resulta más fácil leer con fondo crema, un tono de color, más contraste o un texto más grande? Elige tus colores y tu texto una sola vez, para todas las páginas.

Lección gratuita

Fundamentos de DHCP y DNS

Aquí está la lección completa para leer. Crea una cuenta gratuita para practicarla en un laboratorio en vivo.

Laboratorio de máquina virtual6 min de lectura4 comandos

Qué vas a hacer

Cuando un ordenador entra en una red necesita una dirección y una forma de convertir un nombre como files.lab en una dirección. Normalmente un solo programa pequeño hace las dos cosas: DHCP reparte direcciones y DNS responde a los nombres. Aquí ese programa es dnsmasq, y está en marcha en un servidor sin configurar. Vas a pedirle una dirección y un nombre, y a ver cómo dice que no. No vas a arreglarlo: la configuración es la tarea del propio laboratorio.

Antes de empezar

Nota

Pulsa Iniciar el laboratorio en la barra de la parte superior de esta lección. Este laboratorio es una máquina Ubuntu entera para ti, con una pequeña red construida dentro, así que tarda un poco más en arrancar que un contenedor. Cada botón Ejecutar de abajo escribe su comando en el terminal de la máquina, uno detrás de otro. Si alguno dice que la máquina todavía está arrancando, espera unos segundos y púlsalo otra vez. Para verlos, o para escribir los tuyos, pulsa Abrir el terminal (pestaña nueva) en la barra.

1. Conoce las máquinas

Todo esto está construido dentro de tu única máquina Ubuntu: cada ordenador es un espacio de nombres de red (network namespace) distinto, con sus propias direcciones. dnslab status los enumera. El server tiene la dirección 10.0.10.1, y pc1 y pc2 no tienen ninguna: bajo ellos no aparece nada. También dice que dnsmasq está en marcha.

Comando
dnslab status

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

2. Pide una dirección

Un ordenador sin dirección se la pide a toda la red, y un servidor DHCP le responde. dnslab renew hace que pc1 la pida, y espera unos tres segundos. La respuesta es que a pc1 no le han dado nada: nadie contestó, porque a dnsmasq no le han dicho que reparta ninguna.

Comando
sudo dnslab renew pc1

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

3. Pide un nombre

dig le pregunta un nombre a un servidor DNS, en este caso el del servidor, 10.0.10.1. Preguntas desde el propio servidor, porque pc1 no tiene dirección desde la que preguntar. La cabecera dice status: REFUSED y ANSWER: 0: dnsmasq no sabe nada de files.lab y no tiene dónde buscarlo.

Comando
sudo ip netns exec server dig +noall +comments @10.0.10.1 files.lab

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

4. Lee la configuración

dnsmasq lee sus ajustes de los archivos de /etc/dnsmasq.d. El laboratorio te dejó uno, lab.conf. Solo tiene tres líneas de comentarios y nada más, y por eso no reparte nada.

Comando
cat /etc/dnsmasq.d/lab.conf

Se muestra aquí y no se ejecuta. Crea una cuenta gratuita para pulsar Ejecutar y escribirlo en el terminal de tu propio laboratorio.

Ahora haz el laboratorio

Consejo

Ya has visto lo que falta: direcciones que repartir y nombres que responder. Hacer que el servidor haga las dos cosas es la tarea de este laboratorio: abre README.md en tu carpeta personal con cat README.md en el terminal. Te explica qué hacer y no da ninguna respuesta.

Para el profesorado

Consejo

Esta lección es un pequeño ejemplo de una lección practicada en un laboratorio: los pasos y los botones Ejecutar son la lección, y el laboratorio es la copia propia de cada alumno. Esta lección usa un laboratorio de máquina virtual: cada alumno tiene su propia máquina Ubuntu con un servidor y dos clientes dentro, y un botón Ejecutar escribe en su terminal y muestra lo que se imprimió. El propio laboratorio tiene una comprobación que reinicia dnsmasq con el archivo guardado y hace que los clientes pregunten de nuevo. Cópiela en su propio módulo y modifíquela, o cree una desde cero con el menú Laboratorio del constructor de lecciones.

Sobre este laboratorio y su código: Laboratorio de DHCP y DNS: configura dnsmasq para una red pequeña en el navegador

¿Enseñas a una clase? Asigna estas lecciones a tus estudiantes con calificación y un laboratorio para cada uno.