Contenido

Introducción

Prerequisites

Requirements

Componentes Utilizados

Dirección de reenvío OSPF

Diferencias entre IOS e IOS-XR

Introducción

Este documento describe el concepto de la dirección de reenvío Open Shortest Path First (OSPF) en dispositivos IOS-XR e IOS. Compara el comportamiento OSPF entre los dispositivos IOS-XR y IOS.

Prerequisites

Requirements

Cisco recomienda que tenga conocimiento básico del protocolo OSPF.

Componentes Utilizados

La información que contiene este documento se basa en las siguientes versiones de software y hardware.

- Versiones de dispositivos virtuales IOS-XR: 6.1.3, 6.1.2, 6.0.0, 5.3.0, 5.2.0

- Plataformas IOS de Cisco

Dirección de reenvío OSPF

Esta sección trata el concepto de la dirección de reenvío en OSPF, si ya está familiarizado con esto puede continuar con la siguiente sección.

Cuando un router OSPF redistribuye una ruta de otro protocolo de origen en OSPF como E1 o E2, puede establecer una dirección de reenvío en ese anuncio de estado de link (LSA) externo determinado. El protocolo OSPF debe cumplir estas condiciones para poder establecer ese atributo particular. La dirección de reenvío se puede rellenar (no cero) o no se puede rellenar (todos ceros).

Todas estas condiciones deben establecer el campo de dirección de reenvío en una dirección que no sea cero:

- OSPF se habilita en el router de límite del sistema autónomo (ASBR) de la interfaz de salto siguiente

- La interfaz de salto siguiente de ASBR no es pasiva bajo OSPF

- La interfaz de salto siguiente de ASBR no es punto a punto

- La interfaz de salto siguiente de ASBR no es punto a multipunto

- La dirección de la interfaz de salto siguiente de ASBR se encuentra dentro del rango de red especificado en el comando router ospf.

- Cualquier otra condición aparte de estas, establece la dirección de reenvío en 0.0.0.0.

Cuando la dirección de reenvío se establece en todos ceros (0.0.0.0), esto significa que el router debe volver a ese nodo concreto en la topología OSPF para rutear correctamente el tráfico al destino. Una gran diferencia con OSPF como protocolo de ruteo de estado de link en comparación con los protocolos de vector de distancia es que el estado de link le permite tener una visión completa de la topología en ese área particular, el router puede calcular la trayectoria más corta a un nodo en la topología con una vista general de todos los dispositivos y sus costos. No necesariamente se rutea hacia un prefijo sino hacia un nodo, lo que es una gran diferencia.

Cuando la dirección de reenvío se establece en un valor distinto de cero, el router verifica cuál es la trayectoria más corta a ese nodo que está conectado a la dirección de reenvío.

Esta sección revisa la topología para mayor aclaración:

Imagen 1

En la imagen 1, el protocolo de routing de gateway interior mejorado (EIGRP) se ejecuta entre R2 y R3 en el segmento compartido 192.168.1.0/24. R1 también está conectado al segmento compartido 192.168.1.0/24, aunque no hay EIGRP. R2 se configura para redistribuir 172.16.3.3/32 de EIGRP a OSPF como ruta E2 externa. OSPF se ejecuta entre R2 a R4, R1 a R4, R1 a Transit_Router y R4 a XR5. El software del router XR5 es IOS-XR.

Esta sección explica la importancia de la dirección de reenvío. Tenga en cuenta que el tráfico va hacia 172.16.3.3/32 viene de la red en la nube, este tráfico llega al Transit_Router y se reenvía según la tabla de ruteo.

Verifique lo que tiene en la tabla de ruteo de Transit_Router para el prefijo 172.16.3.3/32.

Transit_Router#show ip route 172.16.3.3

Routing entry for 172.16.3.3/32

Known via "ospf 1", distance 110, metric 20, type extern 2, forward metric 2

Last update from 192.168.70.1 on GigabitEthernet1, 00:00:04 ago

Routing Descriptor Blocks:

* 192.168.70.1, from 2.2.2.2, 00:00:04 ago, via GigabitEthernet1        <- You see the prefix is from advertising router with router-id 2.2.2.2

Route metric is 20, traffic share count is 1

Transit_Router#

El salto siguiente es 192.168.70.1 va hacia R1. Dado que R2 se redistribuye la red 172.16.3.3/32 en OSPF, puede asumir que debe rutear hacia R2 para llegar al destino 172.16.3.3/32.

Puede ejecutar traceroute desde Transit_Router hacia 172.16.3.3/32.

Transit_Router#traceroute 172.16.3.3 timeout 1

Type escape sequence to abort.

Tracing the route to 172.16.3.3

VRF info: (vrf in name/id, vrf out name/id)

1 192.168.70.1 7 msec 5 msec 8 msec           <- R1

2 192.168.1.3 10 msec 11 msec 17 msec         <- R3

Cuando R1 recibe tráfico destinado a 172.16.3.3/32, en realidad se rutea directamente hacia R3. Ejecute show ip route en R1 para ver la tabla de ruteo hacia 172.16.3.3.

R1#show ip route 172.16.3.3

Routing entry for 172.16.3.3/32

Known via "ospf 1", distance 110, metric 20, type extern 2, forward metric 1

Last update from 192.168.1.3 on GigabitEthernet0/0, 02:04:54 ago

Routing Descriptor Blocks:

* 192.168.1.3, from 2.2.2.2, 02:04:54 ago, via GigabitEthernet0/0    <-- Next-hop goes directly towards R3 over the shared segment

Route metric is 20, traffic share count is 1

Debido a la dirección de reenvío, R1 tiene un salto siguiente de 192.168.1.3 que va hacia R3, Si no tiene ningún protocolo de ruteo entre R1 y R3. Verifique el LSA externo en el router_de_tránsito.

Transit_Router#show ip ospf database external 172.16.3.3

OSPF Router with ID (6.6.6.6) (Process ID 1)

Type-5 AS External Link States

LS age: 1641

Options: (No TOS-capability, DC, Upward)

LS Type: AS External Link

Link State ID: 172.16.3.3 (External Network Number )

Advertising Router: 2.2.2.2

LS Seq Number: 80000004

Checksum: 0x8299

Length: 36

Network Mask: /32

Metric Type: 2 (Larger than any link state path)

MTID: 0

Metric: 20

Forward Address: 192.168.1.3      <-R3 interface towards the shared segment

External Route Tag: 0

Como puede ver, la dirección de reenvío se rellena con una dirección IP de 192.168.1.3, lo que significa que si desea rutear hacia 172.16.3.3/32, debe recurrirse hacia 192.168.1.3. Esto ahora implica que cuando R1 recibe paquetes destinados a 172.16.3.3/32, también tiene un LSA tipo 5 para 172.16.3.3/32 con una dirección de reenvío de 192.168.1.3 que está directamente conectada en la interfaz Gi0/0. Por lo tanto, R1 enruta los paquetes hacia 192.168.1.3.

La dirección de reenvío ayuda de una manera de mitigar el ruteo subóptimo. Si la dirección de reenvío no se configuró en el LSA Tipo 5, debe rutear todos los paquetes destinados a 172.16.3.3 a través del ASBR que es R2.

Para verificarlo, puede restablecer la dirección de reenvío a 0.0.0.0 y ejecutar traceroute desde el Transit_Router.

Transit_Router#show ip ospf database external 172.16.3.3

OSPF Router with ID (6.6.6.6) (Process ID 1)

Type-5 AS External Link States

LS age: 14

Options: (No TOS-capability, DC, Upward)

LS Type: AS External Link

Link State ID: 172.16.3.3 (External Network Number )

Advertising Router: 2.2.2.2

LS Seq Number: 80000005

Checksum: 0x196F

Length: 36

Network Mask: /32

Metric Type: 2 (Larger than any link state path)

MTID: 0

Metric: 20

Forward Address: 0.0.0.0    <- Recurse towards the ASBR (RID 2.2.2.2)

External Route Tag: 0

Transit_Router#

Puede ver que la dirección de reenvío está configurada en 0.0.0.0, lo que como se mencionó significa que ahora debe rutear paquetes al ASBR que es R2. Cuando ejecuta un traceroute desde el Tránsito_Router destinado a 172.16.3.3, este tráfico sigue la trayectoria hacia el ASBR R2.

Esto se puede ver aquí:

Transit_Router#traceroute 172.16.3.3

Type escape sequence to abort.

Tracing the route to 172.16.3.3

VRF info: (vrf in name/id, vrf out name/id)

1 192.168.70.1 17 msec 12 msec 3 msec     <-R1

2 192.168.14.4 3 msec 18 msec 7 msec      <-R4

3 192.168.24.2 15 msec 8 msec 5 msec      <-R2

4 192.168.1.3 8 msec 11 msec 7 msec       <-R3

Transit_Router#

Diferencias entre IOS e IOS-XR

Esta sección describe una diferencia entre los dispositivos IOS y IOS-XR cuando conoce la dirección de reenvío a través de otro origen.

En el IOS cuando tiene una ruta externa OSPF en la base de datos y la dirección de reenvío está establecida, la dirección de reenvío debe ser conocida a través de la ruta dentro o entre áreas OSPF. Si la dirección de reenvío no se conoce a través de la ruta OSPF dentro o entre áreas, el router no instala la ruta OSPF externa en la Base de información de ruteo (RIB).

Verifique lo que sucede cuando configura la dirección de reenvío para que se conozca a través de una ruta estática.

Imagen 2

En la topología de la imagen 2, R2 se configura como punto de redistribución entre EIGRP y OSPF. El router redistribuye 172.16.3.3/32 de EIGRP al dominio OSPF. Puede verificar tanto en R4 como en XR5 para asegurarse de cuáles son las diferencias cuando la dirección de reenvío se conoce a través de otro origen. Aquí se muestra la base de datos OSPF en R4.

R4# show ip ospf database external 172.16.3.3

OSPF Router with ID (4.4.4.4) (Process ID 1)

Type-5 AS External Link States

LS age: 4

Options: (No TOS-capability, DC, Upward)

LS Type: AS External Link

Link State ID: 172.16.3.3 (External Network Number )

Advertising Router: 2.2.2.2

LS Seq Number: 80000002

Checksum: 0x8697

Length: 36

Network Mask: /32

Metric Type: 2 (Larger than any link state path)

MTID: 0

Metric: 20

Forward Address: 192.168.1.3

External Route Tag: 0

Compruebe cómo se dirige a la dirección de reenvío.

R4# show ip route 192.168.1.3

Routing entry for 192.168.1.0/24

Known via "ospf 1", distance 110, metric 2, type intra area      <- Here you see it is know via OSPF intra area

Last update from 192.168.24.2 on GigabitEthernet0/0, 00:00:23 ago

Routing Descriptor Blocks:

192.168.24.2, from 1.1.1.1, 00:00:23 ago, via GigabitEthernet0/0

Route metric is 2, traffic share count is 1

* 192.168.14.1, from 1.1.1.1, 00:04:42 ago, via GigabitEthernet0/1

Route metric is 2, traffic share count is 1

R4#

Como puede ver, el router aprende la dirección de reenvío a través de la ruta dentro del área, lo que significa que puede instalar el LSA externo en RIB. Puede ver que el LSA externo está instalado en RIB.

R4#show ip route 172.16.3.3

Routing entry for 172.16.3.3/32

Known via "ospf 1", distance 110, metric 20, type extern 2, forward metric 2

Last update from 192.168.24.2 on GigabitEthernet0/0, 00:01:02 ago

Routing Descriptor Blocks:

192.168.24.2, from 2.2.2.2, 00:01:02 ago, via GigabitEthernet0/0

Route metric is 20, traffic share count is 1

* 192.168.14.1, from 2.2.2.2, 00:04:57 ago, via GigabitEthernet0/1

Route metric is 20, traffic share count is 1

Configure una ruta estática para la dirección de reenvío que va hacia el ASBR que es R2

R4#conf t

Enter configuration commands, one per line. End with CNTL/Z.

R4(config)#ip route 192.168.1.0 255.255.255.0 192.168.24.2

Ejecute show ip route hacia la dirección de reenvío.

R4# show ip route 192.168.1.3

Routing entry for 192.168.1.0/24

Known via "static", distance 1, metric 0

Routing Descriptor Blocks:

* 192.168.24.2

Route metric is 0, traffic share count is 1

Como puede ver, la dirección de reenvío no se aprende a través de OSPF sino estática, lo que significa que ahora el LSA externo para 172.16.3.3 no puede pasar los criterios necesarios para ser utilizado.

R4#show ip ospf database external 172.16.3.3

OSPF Router with ID (4.4.4.4) (Process ID 1)

Type-5 AS External Link States

LS age: 480

Options: (No TOS-capability, DC, Upward)

LS Type: AS External Link

Link State ID: 172.16.3.3 (External Network Number )

Advertising Router: 2.2.2.2

LS Seq Number: 80000001

Checksum: 0x8896

Length: 36

Network Mask: /32

Metric Type: 2 (Larger than any link state path)

MTID: 0

Metric: 20

Forward Address: 192.168.1.3

External Route Tag: 0

Finalmente, verifique si la ruta externa está instalada desde la base de datos OSPF en RIB.

R4#show ip route 172.16.3.3

% Network not in table

Como puede ver, el router no instala el LSA externo de la base de datos OSPF en RIB, porque la dirección de reenvío se conoce a través de static y no OSPF dentro o entre áreas.

La lógica aquí es que OSPF no considera que otro origen para ruteo hacia la dirección de reenvío sea confiable, por lo tanto el router no debe tomar en cuenta ningún LSA externo que tenga una dirección de reenvío no conocida a través de OSPF.

Esta sección describe la misma prueba en IOS-XR para verificar el comportamiento. En XR5, tiene el LSA externo:

RP/0/0/CPU0:XR4#show ospf database external 172.16.3.3

Mon Mar 26 06:26:24.656 UTC

OSPF Router with ID (192.168.60.1) (Process ID 1)

Type-5 AS External Link States

Routing Bit Set on this LSA

LS age: 930

Options: (No TOS-capability, DC)

LS Type: AS External Link

Link State ID: 172.16.3.3 (External Network Number)

Advertising Router: 2.2.2.2

LS Seq Number: 80000001

Checksum: 0x8896

Length: 36

Network Mask: /32

Metric Type: 2 (Larger than any link state path)

TOS: 0

Metric: 20

Forward Address: 192.168.1.3

External Route Tag: 0

Verifique cuando configure una ruta estática para la dirección de reenvío hacia R4 si el router instala o no el LSA externo en la base de datos.

RP/0/0/CPU0:XR4#show route 192.168.1.3

Mon Mar 26 06:33:21.587 UTC

Routing entry for 192.168.1.0/24

Known via "static", distance 1, metric 0    <- The forwarding address is now known via static

Installed Mar 26 06:31:55.133 for 00:01:26

Routing Descriptor Blocks

192.168.60.4          <- Next-hop is R4

Route metric is 0, Wt is 1

No advertising protos.

Puede ver que la dirección de reenvío se aprende a través de static. Ahora, verifique si el LSA externo se instaló en RIB.

RP/0/0/CPU0:XR4#show route 172.16.3.3

Mon Mar 26 06:42:24.830 UTC

Routing entry for 172.16.3.3/32

Known via "ospf 1", distance 110, metric 20, type extern 2

Installed Mar 26 06:25:09.841 for 00:17:15

Routing Descriptor Blocks

192.168.60.4, from 2.2.2.2, via GigabitEthernet0/0/0/0

Route metric is 20

No advertising protos.

RP/0/0/CPU0:XR4#

Puede ver una diferencia entre IOS y IOS-XR. El LSA externo se instaló en RIB aunque la dirección de reenvío se aprende a través de static. El router aún tiene la conectividad hacia el prefijo externo.

RP/0/0/CPU0:XR4#ping 172.16.3.3

Mon Mar 26 06:44:25.772 UTC

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 172.16.3.3, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 1/9/19 ms

RP/0/0/CPU0:XR4#

Parece que IOS-XR rellena el LSA externo en RIB pero no tiene en cuenta la dirección de reenvío para la recursión, lo que ahora significa que se repite hacia el ASBR en lugar de buscar en RIB para la dirección de reenvío.

La prueba indica que se puede considerar. Puede configurar una ruta estática para la dirección de reenvío hacia null0 y verificar si la conectividad hacia el prefijo externo sigue existiendo.

RP/0/0/CPU0:XR4#show ospf database external 172.16.3.3

Mon Mar 26 06:55:36.296 UTC

OSPF Router with ID (192.168.60.1) (Process ID 1)

Type-5 AS External Link States

Routing Bit Set on this LSA

LS age: 667

Options: (No TOS-capability, DC)

LS Type: AS External Link

Link State ID: 172.16.3.3 (External Network Number)

Advertising Router: 2.2.2.2

LS Seq Number: 80000002

Checksum: 0x8697

Length: 36

Network Mask: /32

Metric Type: 2 (Larger than any link state path)

TOS: 0

Metric: 20

Forward Address: 192.168.1.3

External Route Tag: 0

RP/0/0/CPU0:XR4#show route 192.168.1.3

Mon Mar 26 06:55:38.966 UTC

Routing entry for 192.168.1.0/24

Known via "static", distance 1, metric 0 (connected)

Installed Mar 26 06:47:15.030 for 00:08:23

Routing Descriptor Blocks

directly connected, via Null0

Route metric is 0, Wt is 1

No advertising protos.

Verifique la conectividad de XR5 a 172.16.3.3.

RP/0/0/CPU0:XR4#ping 172.16.3.3

Mon Mar 26 06:56:45.261 UTC

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 172.16.3.3, timeout is 2 seconds:

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 1/7/19 ms

RP/0/0/CPU0:XR4#traceroute 172.16.3.3

Mon Mar 26 06:56:51.251 UTC

Type escape sequence to abort.

Tracing the route to 172.16.3.3

1  192.168.60.4 0 msec  0 msec  0 msec

2  192.168.14.1 0 msec  0 msec  0 msec

3  192.168.1.3 9 msec  9 msec  0 msec

RP/0/0/CPU0:XR4

En estas pruebas, vio la importancia de la dirección de reenvío y cómo interpretar el ruteo cuando se configura. Además, la suposición de que si la dirección de reenvío está configurada, debe ser utilizada, puede ser falsa ya que depende de la plataforma. Cuando la dirección de reenvío se conoce a través de OSPF dentro/entre áreas, se utiliza, de lo contrario se completa pero no se utiliza para la recursión. El comportamiento en XR proporciona un nivel de seguridad, en el caso de que una dirección de reenvío de LSA externa se conozca a través de otro origen, el tráfico no puede ser chantajeado.