SuperNotes by yuri.rodrix

Notas de Yuri.Rodrix


Página tipo blog en el que voy a publicar mis notas de aprendizaje, en especial de temas como matemáticas, física y quizá algo de programación

Redes neuronales
Redes neuronales
Redes neuronales
Redes neuronales
Redes neuronales
Redes neuronales

Enrutamiento dinámico: RIPv2 y OSPFv2

En Dijkstra y Bellman-Ford viste los algoritmos que resuelven el camino más corto sobre un grafo. Aquí damos el salto a los protocolos reales que ejecutan esos algoritmos en routers y rellenan la tabla de enrutamiento: RIPv2 (vector distancia, Bellman-Ford) y OSPFv2 (estado de enlace, Dijkstra). La promesa: una entrada de la tabla es el resultado de aquel algoritmo, leído sobre el grafo de la red.

Dos familias de protocolo, dos formas de medir «lo más corto»: OSPF suma costos (inverso del ancho de banda); RIP cuenta saltos.

costoruta=enlacescostoi,costoenlace=ancho de banda de referenciaancho de banda del enlace\text{costo}_{\text{ruta}}=\sum_{\text{enlaces}}\text{costo}_i\,,\qquad \text{costo}_{\text{enlace}}=\frac{\text{ancho de banda de referencia}}{\text{ancho de banda del enlace}}meˊtrica RIP=#saltos,1salto15,16\text{métrica RIP}=\#\text{saltos}\,,\qquad 1\le\text{salto}\le 15\,,\qquad 16\equiv\infty

1. La tabla de enrutamiento, en sus tres caras

El objeto firma del post: la misma ruta como camino en el grafo, como línea de show ip route en Cisco y como fila de display ip routing-table en Huawei. El comando cambia según el fabricante; el concepto —el camino de menor costo— no.

① La misma ruta en tres caras: grafo · Cisco · Huawei ⭐

Una entrada de la tabla de enrutamiento es el camino más corto que Dijkstra resolvió sobre el grafo. Elige un destino y míralo a la vez en el grafo (camino en verde), en show ip route (Cisco) y en display ip routing-table (Huawei). El origen es siempre R1.

105105R1R2R4R3
Cisco — show ip route
O 10.2.0.0/24 [110/10] via 10.0.12.2, Gi0/1
O 10.4.0.0/24 [110/5] via 10.0.14.2, Gi0/2
O 10.3.0.0/24 [110/10] via 10.0.14.2, Gi0/2
C 10.1.0.0/24 is directly connected, Gi0/0
Huawei — display ip routing-table
Destination/Mask Proto Pre Cost NextHop
10.2.0.0/24 OSPF 10 10 10.0.12.2
10.4.0.0/24 OSPF 10 5 10.0.14.2
10.3.0.0/24 OSPF 10 10 10.0.14.2
10.1.0.0/24 Direct 0 0 127.0.0.1
Mismo destino, tres representaciones. Nota la diferencia de fabricante en la distancia administrativa / preferencia: Cisco marca OSPF con 110 (el primer número de [110/10]), mientras Huawei usa preferencia 10. El cost (10) sí coincide: es la suma de los costos de enlace del camino verde.
camino elegido (SPF)router OSPF

2. OSPFv2 — estado de enlace

OSPF (Open Shortest Path First) es un protocolo de estado de enlace: cada router describe sus enlaces en un LSA (Link-State Advertisement), inunda esa información por el área, y todos construyen la misma base de datos (el LSDB), que es el grafo de M2. Sobre ese grafo cada router corre Dijkstra para su propio árbol de caminos más cortos.

Tipos de LSA (de qué está hecho el LSDB)

TipoLSALo generaDescribe
1Routercada routersus enlaces dentro del área
2Networkel DRlos routers de un segmento multiacceso
3Summaryel ABRredes de otra área (entre áreas)
4ASBR-Summaryel ABRcómo llegar al ASBR
5Externalel ASBRrutas redistribuidas de otro protocolo
7NSSA ExternalASBR en área NSSAexternas dentro de un área stub especial

Las áreas parten el dominio para que el LSDB no crezca sin límite: el área 0 (backbone) une al resto, los ABR conectan áreas y los ASBR traen rutas de fuera. El costo de un enlace es ref/BW\text{ref}/\text{BW}, así que más ancho de banda ⇒ menos costo ⇒ camino preferido.

El costo y la elección DR/BDR

En un enlace Ethernet con varios routers, OSPF no adyacenta a todos con todos: elige un DR y un BDR. Mueve las prioridades y mira quién gana y cuántas adyacencias se ahorran:

② Elección de DR / BDR en un enlace multiacceso

En un segmento Ethernet con varios routers OSPF, hacer que todos formen adyacencia con todos sería n(n−1)/2 relaciones. OSPF elige un DR (Designated Router) y un BDR de respaldo: el resto solo se adyacenta con ellos. Gana la prioridad más alta; a igualdad, el Router ID mayor. (Prioridad 0 = nunca será DR.) Mueve las prioridades:

RA · RID 1.1.1.1DROther
RB · RID 2.2.2.2DROther
RC · RID 3.3.3.3BDR
RD · RID 4.4.4.4DR
DRRD
BDRRC
Adyacencias sin DR6
Con DR/BDR5

El DR es el único que genera el Network LSA (tipo 2) del segmento; los demás le cuentan a él. Toda la LAN se sincroniza vía la multicast 224.0.0.6 (AllDRouters), y el DR reenvía a 224.0.0.5 (AllSPFRouters).

Cómo dos routers se sincronizan

Antes de intercambiar rutas, dos vecinos OSPF recorren una máquina de estados hasta tener bases de datos idénticas. Es donde entran los cinco tipos de paquete:

③ Formación de adyacencia OSPF — la máquina de estados

Dos routers OSPF no se hacen vecinos de golpe: recorren una secuencia de estados intercambiando los cinco tipos de paquete (Hello, DBD, LSR, LSU, LSAck) hasta que sus bases de datos quedan idénticas (Full). Avanza paso a paso:

Down

No se ha recibido nada del vecino todavía.

TipoPaquete OSPFPara qué
1HelloDescubrir vecinos y mantener la relación viva
2DBDResumen del LSDB (Database Description)
3LSRPedir los LSA que faltan (Link-State Request)
4LSUEntregar los LSA pedidos (Link-State Update)
5LSAckConfirmar recepción (Link-State Acknowledgment)

Configuración mínima de OSPF en un router del backbone (área 0):

Cisco IOS
interface Gig0/1
 ip address 10.0.12.1 255.255.255.252
 ip ospf cost 10
!
router ospf 1
 router-id 1.1.1.1
 network 10.0.12.0 0.0.0.3 area 0
Huawei VRP
interface GigabitEthernet0/0/1
 ip address 10.0.12.1 255.255.255.252
 ospf cost 10
!
ospf 1 router-id 1.1.1.1
 area 0.0.0.0
  network 10.0.12.0 0.0.0.3

Una topología completa multi-router (8 routers, redistribución de estáticas, Cisco + Huawei) está resuelta paso a paso en Configuración OSPF — este post es la teoría detrás de aquel lab.

3. RIPv2 — vector distancia

RIP es el extremo opuesto: simple, vector distancia, sin mapa de la red. Cada router solo sabe «a esta red llego en N saltos» y se lo cuenta a sus vecinos. RIPv2 moderniza a RIPv1 con máscara (classless), autenticación y multicast. Disecciona su mensaje y juega con la métrica:

④ RIPv2 — mensaje, métrica de saltos y temporizadores

RIP es vector distancia puro (Bellman-Ford): cada router anuncia las redes que conoce con su número de saltos. RIPv2 añade a RIPv1 lo que faltaba para redes modernas: máscara (classless/VLSM), next-hop, autenticación y envío por multicast 224.0.0.9 en vez de broadcast.

Cabecera (4 B) + una entrada de ruta / RTE (20 B)
Command
8b · 1=request · 2=response
Version
8b · 2
Unused
16b · 0
AFI
16b · 2 (IP)
Route Tag
16b · marca de redistribución
IP Address
32b · red anunciada
Subnet Mask
32b · ★ novedad v2 (classless)
Next Hop
32b · ★ novedad v2
Metric
32b · 1…16
Red alcanzable a 3 saltos. El máximo útil es 15; por eso RIP solo sirve en redes pequeñas.
TemporizadorValorQué hace
Update30 sCada cuánto anuncia toda su tabla.
Invalid180 sSin oír una ruta, la marca inalcanzable (métrica 16).
Holddown180 sIgnora info «peor» de esa ruta para evitar bucles.
Flush240 sBorra la ruta de la tabla por completo.

Para evitar bucles, RIP usa split-horizon (no anunciar una ruta por la misma interfaz por la que la aprendió) y poison reverse (anunciarla con métrica 16) — las mismas defensas contra el conteo a infinito que viste en Bellman-Ford.

Activación de RIPv2:

Cisco IOS
router rip
 version 2
 no auto-summary
 network 10.0.0.0
Huawei VRP
rip 1
 version 2
 undo summary
 network 10.0.0.0

4. Redistribución y distancia administrativa

¿Qué pasa cuando un router conoce la misma red por dos protocolos a la vez (p. ej. OSPF y RIP)? Decide por distancia administrativa (AD): cuánto «se fía» de cada fuente. Primero gana la AD más baja; solo dentro del mismo protocolo se compara la métrica.

ruta elegida=argminprotocolos(distancia administrativaen quieˊn confıˊo)    argmin(meˊtricadentro de ese protocolo)\text{ruta elegida}=\arg\min_{\text{protocolos}}\big(\underbrace{\text{distancia administrativa}}_{\text{en quién confío}}\big)\;\to\;\arg\min\big(\underbrace{\text{métrica}}_{\text{dentro de ese protocolo}}\big)
FuenteAD (Cisco)Preferencia (Huawei)
Conectada (Direct)00
Estática160
OSPF11010
RIP120100

Redistribuir es inyectar rutas de un protocolo en otro (o estáticas en OSPF, como hace el lab de Configuración OSPF). Como cada protocolo mide distinto (saltos vs costo), al cruzar la frontera hay que asignar una métrica semilla: con qué valor «nace» la ruta en el protocolo destino. En OSPF esas rutas aparecen como External (LSA tipo 5), tipo E2 por defecto.

Cisco IOS
router ospf 1
 redistribute static subnets metric 20 metric-type 2
 redistribute rip subnets
Huawei VRP
ospf 1
 import-route static type 2 cost 20
 import-route rip 1

El paquete sigue su viaje

Con la tabla ya poblada por RIPv2 u OSPFv2, el router sabe por dónde mandar cada paquete. El siguiente eslabón del viaje es IPv6: el datagrama IPv6 cambia la cabecera, y estos mismos protocolos se vuelven RIPng y OSPFv3 mismo algoritmo, distinta familia de direcciones. Allí verás la cabecera OSPFv2 de hoy comparada campo a campo con la de OSPFv3.

En el laboratorio del curso esto se valida con los escenarios de enrutamiento dinámico RIP/OSPF (GNS3 / eNSP); la práctica completa de OSPF multi-router está en Configuración OSPF.