¿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

Guiar el tráfico entre routers (rutas estáticas)

Después de esta lección: Puedo leer una tabla de rutas y decir qué ruta sigue un paquete.

Lección de 55 min5 comandosLaboratorio de enrutamiento estático: construye rutas en una red pequeña en tu navegador

El conductor de la rotonda

Un conductor de reparto llega a una rotonda. Lee el cartel y toma una salida. No planea todo el viaje.

Un router hace lo mismo con cada paquete. Lee la dirección de destino, busca una línea en su tabla y entrega el paquete al siguiente.

Cada router del camino repite ese mismo trabajo.

Al final de esta lección

Nota

Puedo leer una tabla de rutas y decir qué ruta sigue un paquete.

Palabras clave

PalabraQué significaEjemplo
Tabla de rutasla lista de redes de un router y por dónde enviar cada una
Siguiente saltoel router vecino que recibe el paquete despuésvia 10.0.1.1
Ruta conectadauna red a la que el router está enchufado directamente
Ruta estáticauna ruta que una persona escribe a mano
Ruta por defectola línea que se usa cuando ninguna otra encaja0.0.0.0/0
Prefijo más largola línea que encaja con más bits de red

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

Un equipo envía directo o a su puerta

Un equipo se hace primero una pregunta. ¿El destino está en mi propia red?

Si es así, envía el paquete directamente. Si no, lo envía a su puerta de enlace, un router de su misma red.

El equipo nunca planea el resto del viaje.

Lee las rutas de un equipo

Comando
sudo ip netns exec h1 ip route

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

Pregunta por dónde sale un paquete

Comando
sudo ip netns exec h1 ip route get 10.0.3.2

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

Cómo leer las respuestas

El primer Run imprime dos líneas. Una es la red en la que está h1. La otra empieza por default via 10.0.1.1: todo lo demás va a r1.

El segundo Run empieza por 10.0.3.2 via 10.0.1.1 dev to-r1. La palabra via nombra el siguiente salto.

Un router sigue su tabla

Un router tiene varias interfaces y una tabla de rutas. Cada línea dice: para esta red, usa este camino.

Al empezar, solo conoce sus rutas conectadas. Aprende las demás redes si una persona añade una ruta estática, o si un protocolo las comparte.

Sin una línea para una red, el router no puede reenviar paquetes hacia ella.

Ejemplo resuelto: la primera tabla de un router

RedSiguiente saltoTipo
10.0.1.0/24directo, por to-h1Conectada
10.0.12.0/24directo, por to-r2Conectada
10.0.3.0/24ningunoSin línea, sin camino

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

Lee la tabla de r1 en su consola

Comando
sudo vtysh -N r1 -c "show ip route"

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

Pregunta a r1 por una red desconocida

Comando
sudo ip netns exec r1 ip route get 10.0.3.2

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

Haz ping desde h1 a h2

Comando
sudo ip netns exec h1 ping -c 2 -W 1 10.0.3.2

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

Sin línea no hay camino

La consola lista cuatro líneas para r1. Dos empiezan por C, de conectada, y dos por L, las direcciones propias del router.

El último Run imprime RTNETLINK answers: Network is unreachable. La tabla no tiene línea para 10.0.3.2, así que r1 no sabe adónde enviarlo.

El ping imprime dos líneas From 10.0.1.1 ... Destination Net Unreachable y termina con 100% packet loss.

Gana el prefijo más largo

Varias líneas pueden encajar con una misma dirección. El router elige la del prefijo más largo, la que nombra la red con más exactitud.

La ruta por defecto, 0.0.0.0/0, encaja con todo con cero bits. Por eso pierde contra cualquier otra y se usa la última.

Un error frecuente

Advertencia

Mucha gente cree que gana la primera línea que encaja. El router no lee de arriba abajo. Mira todas las líneas y elige la coincidencia más larga. El orden de la tabla no cambia el resultado.

Ejemplo resuelto: qué línea gana

DestinoLíneas que encajanGana
10.4.7.2000.0.0.0/0, 10.0.0.0/8, 10.4.7.0/24, 10.4.7.128/2510.4.7.128/25
10.4.7.50.0.0.0/0, 10.0.0.0/8, 10.4.7.0/2410.4.7.0/24
10.9.9.90.0.0.0/0, 10.0.0.0/810.0.0.0/8
8.8.8.80.0.0.0/00.0.0.0/0

Las celdas que rellenan los estudiantes quedan en blanco en esta vista previa.

Para ir más lejos: explica por qué gana

Escribe explain_route(table, destination), que devuelve la línea entera que gana y no solo su siguiente salto.

Usa las cuatro redes de la tabla resuelta: 0.0.0.0/0, 10.0.0.0/8, 10.4.7.0/24 y 10.4.7.128/25. Pruébala con 10.4.7.129, 10.4.7.127, 10.200.0.1 y 11.0.0.1. Explica cada respuesta con la regla del prefijo más largo.

Sobre este laboratorio y su código: Laboratorio de enrutamiento estático: construye rutas en una red pequeña en tu navegador

¿Enseñas a una clase? Asigna este módulo a tus alumnos con guía del profesor, tareas con corrección automática y un laboratorio para cada alumno.