Laboratorio de BGP: conecta dos sistemas autónomos en tu navegador
El tercer laboratorio de redes: cinco máquinas dentro de la única máquina virtual Ubuntu del alumno. r1 es todo el AS 65001 y r2 todo el AS 65002, cada uno con FRRouting y su demonio BGP iniciado y nada configurado, con un equipo detrás de cada uno. El primer ping de h1 a h2 falla porque r1 nunca ha oído hablar de esa red.
Qué aprenden los alumnos
Hacer vecinos a dos routers de sistemas autónomos distintos a través del enlace que hay entre ellos y ver cómo se establece la sesión con show bgp summary. Hacer que cada AS anuncie la red en la que vive su equipo y ver lo que ha aprendido cada router con show bgp ipv4 unicast y show ip route bgp. Si la sesión está activa y no se intercambia nada, buscan ebgp-requires-policy en la documentación de FRRouting, que es la lección.
La red privada detrás de r2 pertenece solo al AS 65002, así que no anuncian nada que permita a h1 llegar a ella: el comienzo de la política de enrutamiento.
La topología
h1 se conecta a r1, r1 a r2 a través de un enlace entre AS y r2 a h2, con una red privada, 192.168.99.0/24, detrás de r2. Las direcciones están en el README que el laboratorio deja en la carpeta personal.
Ejecútalo en tu navegador
Los laboratorios de máquina virtual se asignan como tarea de laboratorio en un módulo, y el ejemplo está en la página del laboratorio.
- Añade el laboratorio. En un módulo que impartes, añade una tarea y elige la tarjeta «Laboratorio de máquina virtual Ubuntu». La página muestra una breve descripción de la máquina en lugar de un archivo compose.
- Parte del ejemplo. La página ofrece tres laboratorios de redes de ejemplo. Elige Networking lab 3: BGP between two autonomous systems. Usar un ejemplo sustituye el texto, y «Deshacer» recupera el tuyo.
- Publica e inicia tu propia copia. Publica y después pulsa «Iniciar». El script de preparación del laboratorio instala FRRouting y construye la topología desde el archivo de Ubuntu la primera vez que se inicia la máquina virtual, en unos diez segundos.
- Abre el terminal. Abre su terminal y lee README.md en la carpeta personal: dice qué hacer y no da ninguna respuesta. netlab status lista las máquinas y netlab shell r1 abre la consola de un router.
Una lección básica en este laboratorio
BGP Basics es una lección breve hecha en este laboratorio, que es una máquina virtual Ubuntu: cada paso está explicado y tiene un botón Ejecutar que escribe su comando en el terminal de la máquina y muestra lo que respondió el router. El alumno conoce las máquinas, intenta cruzar la red y falla, y pregunta al router si BGP está configurado y qué sabe.
Miran alrededor y dejan la tarea propia del laboratorio, hacer que la red funcione, al alumno, así que la lección no da respuestas. Una cuenta personal gratuita la recibe en el módulo Basics, que está en Inicio, cada centro puede copiarla de la carpeta Basics de la Biblioteca, y un centro nuevo la tiene en un módulo llamado Networking Basics (Sample). Es deliberadamente breve: muestra a un docente lo que es una lección hecha en un laboratorio, y el laboratorio hace el resto. Copia la lección en un módulo propio para cambiarla.
Cómo se califica
La comprobación se ejecuta sobre una copia de la máquina guardada tras un arranque limpio. Solo se supera si cada router tiene una sesión Established con el AS del otro, cada uno tiene una ruta a la red del otro aprendida por BGP, h1 llega a h2 por ese camino y el AS 65002 no ha anunciado su red privada.
- Asígnalo. Asigna el laboratorio como cualquier tarea, con una fecha de entrega si quieres. Cada alumno recibe una máquina virtual propia, que se conserva de una sesión a otra.
- Ejecuta la comprobación. En la fila de un alumno de la lista de la clase, pulsa «Ejecutar la comprobación». Inicia una copia de su máquina guardada, sin guardar nada de vuelta, ejecuta como root el script de comprobación del laboratorio y muestra si se superó, qué imprimió y cuándo. Al alumno no se le comunica el resultado.
- Califícalo. Lee lo que imprimió la comprobación. Cuando un alumno detiene su máquina virtual, la lista de la clase muestra además lo que ha cambiado, los paquetes que instaló y los archivos que escribió, así que puedes calificar sin iniciarla. Devuelve el trabajo con un motivo si necesita más.
La definición en GitHub
El archivo es la definición completa del laboratorio, el mismo texto que ejecuta la plataforma. Cópialo para hacer tu propia topología: daemons bgpd inicia el protocolo en cada router.
Preguntas frecuentes
- ¿Es BGP interno o externo?
- Externo: los dos routers están en sistemas autónomos distintos, 65001 y 65002, y por eso importa el valor predeterminado de ebgp-requires-policy.
- ¿Toca algo la internet real?
- No. Toda la red está dentro de la máquina virtual del alumno, y los números de sistema autónomo están en el intervalo reservado para uso privado.
- ¿En qué se diferencia el laboratorio de BGP del de OSPF?
- El laboratorio de OSPF tiene tres routers en una sola área, todos en la misma red. En el de BGP, r1 es todo el AS 65001 y r2 todo el AS 65002, así que el alumno crea una sesión entre dos sistemas autónomos, anuncia una red de cada lado y deja sin anunciar la red privada detrás de r2.