Pruebas con ruta por interface de salida y múltiples gateways

Fecha: 24 de noviembre del 2021

 

Contexto general

 

En este lab se analiza sobre ¿ que pasa cuando existe una ruta con interface de salida y hay varios gateways, cual usa ?

uno solo ? los dos ? con round-robin ? y realmente como no es algo que se utilice seguido, hay que verificarlo.

 

Esto surge a partir de una consulta de “Lisandro C” un estudiante de CCNA que estaba leyendo sobre rutas por next-hop

y/o interface de salida, que ya se analizó hace unos años en este lab pero con un sólo próximo salto.

 

 

Se utilizó Wireshark para analizar qué tráfico hay involucrado en la resolución del /los próximo/s salto/s.

 

1.- Verificación inicial:

 

Por simplicidad del lab se utilizan interfaces loopback para simular la IP destino, total ambos routers pueden

tenerla sin que exista el concepto de IP duplicada.

 

1.1.- Verificamos rutas:

 

Router-A#sh ip route

---omitido---

 

Gateway of last resort is not set

 

      10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks

C        10.0.0.0/29 is directly connected, GigabitEthernet1/0/1

L        10.0.0.1/32 is directly connected, GigabitEthernet1/0/1

      192.68.0.0/32 is subnetted, 1 subnets

C        192.68.0.1 is directly connected, Loopback0  (por simplicidad del lab)

S     192.168.1.0/24 is directly connected, GigabitEthernet1/0/1

Router-A#

 

Router-B#sh ip route

---omitido---

 

Gateway of last resort is not set

 

      10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks

C        10.0.0.0/29 is directly connected, Vlan666

L        10.0.0.2/32 is directly connected, Vlan666

S     192.168.0.0/24 [1/0] via 10.0.0.1

      192.168.1.0/32 is subnetted, 1 subnets

C        192.168.1.1 is directly connected, Loopback1 (por simplicidad del lab)

Router-B#

 

Router-C#sh ip route

---omitido---

 

Gateway of last resort is not set

 

      10.0.0.0/8 is variably subnetted, 2 subnets, 2 masks

C        10.0.0.0/29 is directly connected, Vlan666

L        10.0.0.3/32 is directly connected, Vlan666

S     192.168.0.0/24 [1/0] via 10.0.0.1

      192.168.1.0/32 is subnetted, 1 subnets

C        192.168.1.1 is directly connected, Loopback1 (por simplicidad del lab)

Router-C#

 

1.2.- Verificamos ARP de los next-hop:

 

Router-A#sh arp

Protocol  Address          Age (min)  Hardware Addr   Type   Interface

Internet  10.0.0.1                -            bce7.125e.8d64  ARPA   GigabitEthernet1/0/1

Internet  10.0.0.2               11          f09e.63d0.7bfc    ARPA   GigabitEthernet1/0/1

Internet  10.0.0.3                4           88f0.317e.4d00   ARPA   GigabitEthernet1/0/1

Router-A#

 

2.- Generamos tráfico al destino alcanzable vía dos gateways:

 

Router-A#ping 192.168.1.1

Type escape sequence to abort.

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

.!!!!

Success rate is 80 percent (4/5), round-trip min/avg/max = 1/1/2 ms

Router-A#

 

3.- Verificamos:

 

Primero hay un pedido de resolución ARP para 192.168.1.1 y con dos respuestas (una de cada router).

 

 

Luego “sale” el ping con la correspondiente respuesta.

 

 

La solicitud de eco (ping) en capa 2 va dirigida a la MAC correspondiente a la última respuesta de ARP, la cual queda en

caché del Router-A hasta que expire o se elimine manualmente.

 

 

Podemos ver que la MAC asociada a 192.168.1.1 nunca cambia.

 

 

4.- Verificamos en el router:

 

Router-A#sh arp

Protocol  Address          Age (min)  Hardware Addr   Type   Interface

Internet  10.0.0.1                -           bce7.125e.8d64  ARPA  GigabitEthernet1/0/1

Internet  10.0.0.2               11          f09e.63d0.7bfc   ARPA  GigabitEthernet1/0/1

Internet  10.0.0.3                4          88f0.317e.4d00   ARPA  GigabitEthernet1/0/1

Internet  192.168.1.1          0          88f0.317e.4d00  ARPA   GigabitEthernet1/0/1

Router-A#

 

5.- Borramos cache ARP y volvemos a probar:

 

Esto lo hacemos para ver si fué fortuito o hay un round-robin, etc.. el por qué un router responde mas rápido

que otro dependerá de N factores que no se discutirán aquí.

 

Router-A#clear arp-cache 192.168.1.1

Router-A#

 

6.- Verificamos:

 

Router-A#sh arp

Protocol  Address          Age (min)  Hardware Addr   Type     Interface

Internet  10.0.0.1                -           bce7.125e.8d64  ARPA   GigabitEthernet1/0/1

Internet  10.0.0.2                0          f09e.63d0.7bfc    ARPA   GigabitEthernet1/0/1

Internet  10.0.0.3                0          88f0.317e.4d00   ARPA   GigabitEthernet1/0/1

Internet  192.168.1.1          0          88f0.317e.4d00   ARPA   GigabitEthernet1/0/1

Router-A#

 

7.- Sacamos Router-C de la topología:

 

 

8.- Limpiamos tabla de ARP:

 

Router-A#clear arp 192.168.1.1

Router-A#

 

9.- Verificamos que no esté en la tabla:

 

Router-A#sh arp

Protocol  Address          Age (min)  Hardware Addr    Type     Interface

Internet  10.0.0.1                -            bce7.125e.8d64  ARPA   GigabitEthernet1/0/1

Internet  10.0.0.2               14          f09e.63d0.7bfc    ARPA   GigabitEthernet1/0/1

Internet  10.0.0.3                3           88f0.317e.4d00   ARPA   GigabitEthernet1/0/1

Router-A#

 

10.- Volvemos a generar tráfico:

 

Router-A#ping 192.168.1.1

Type escape sequence to abort.

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

.!!!!

Success rate is 80 percent (4/5), round-trip min/avg/max = 1/1/1 ms

Router-A#

 

11.- Verificamos:

 

Router-A#sh arp

Protocol  Address          Age (min)  Hardware Addr   Type     Interface

Internet  10.0.0.1                -            bce7.125e.8d64 ARPA   GigabitEthernet1/0/1

Internet  10.0.0.2               15          f09e.63d0.7bfc   ARPA   GigabitEthernet1/0/1

Internet  10.0.0.3                3           88f0.317e.4d00  ARPA   GigabitEthernet1/0/1

Internet  192.168.1.1          0           f09e.63d0.7bfc  ARPA   GigabitEthernet1/0/1 (ahora es Router-B)

Router-A#

 

12- Sacamos el proxy-ARP de los routers B y C:

 

Esta prueba la realizamos para demostrar que el proxy-ARP es un factor importante en la utilización de rutas

con interface de salida, y sin este la conectividad fallará.

 

Router-B#conf t

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

Router-B(config)#int vlan 666

Router-B(config-if)#no ip proxy-arp

Router-B(config-if)#end

Router-B#

 

Router-C#conf t

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

Router-C(config)#int vlan 666

Router-C(config-if)#no ip proxy-arp

Router-C(config-if)#end

Router-C#

 

13.- Verificamos:

 

Router-A#sh arp

Protocol  Address          Age (min)  Hardware Addr    Type     Interface

Internet  10.0.0.1                -            bce7.125e.8d64  ARPA   GigabitEthernet1/0/1

Internet  10.0.0.2                0           f09e.63d0.7bfc    ARPA   GigabitEthernet1/0/1

Internet  10.0.0.3                0           88f0.317e.4d00   ARPA   GigabitEthernet1/0/1

Router-A#

 

14.- Generamos tráfico:

 

Router-A#ping 192.168.1.1

Type escape sequence to abort.

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

.....

Success rate is 0 percent (0/5)

Router-A#

 

 

15.- Verificamos:

 

Router-A#sh arp

Protocol  Address          Age (min)  Hardware Addr   Type   Interface

Internet  10.0.0.1                -            bce7.125e.8d64  ARPA   GigabitEthernet1/0/1

Internet  10.0.0.2                0           f09e.63d0.7bfc    ARPA   GigabitEthernet1/0/1

Internet  10.0.0.3                0           88f0.317e.4d00   ARPA   GigabitEthernet1/0/1

Internet  192.168.1.1          0               Incomplete     ARPA

Router-A#

 

Al no tener el proxy-ARP activo, el router no puede decirle a 10.0.0.1 “yo se como llegar a 192.168.1.0, tirame el tráfico a mi”

y por lo tanto la ruta con interface de salida no va a funcionar.

 

Siempre es más conveniente utilizar next-hop para las rutas estáticas, lo de la búsqueda recurrente que se enseña es verdad

pero sólo es un concepto que solo hay que saberlo, no roba CPU ni hace mas lento todo como asustan en la currícula :-)

 

16.- En resúmen: la última respuesta de ARP que reciba antes de armar la ruta es la que queda, no hace round-robin

con los dos routers ni nada de eso, mientras dure la entrada en la tabla ARP, esa MAC será el next-hop.

 

Ahora, para no confundir, como una ruta de capa 3 se define en capa 2 ? si no se entiende eso, a estudiar nuevamente

el modelo OSI, y luego vuelva a este lab.

 

 

17.- Configuración de los equipos:

 

Router-A#sh runn (sólo lo mas relevante)

Building configuration...

!

hostname Router-A

!

!

interface Loopback0

 ip address 192.68.0.1 255.255.255.255

!

interface GigabitEthernet1/0/1

 no switchport

 ip address 10.0.0.1 255.255.255.248

!

interface GigabitEthernet1/0/24

!

ip route 192.168.1.0 255.255.255.0 GigabitEthernet1/0/1

!

monitor session 1 source interface Gi1/0/1 (para espejar tráfico en Gi1/0/24)

monitor session 1 destination interface Gi1/0/24 (para conectar Wireshark)

!

end

 

Router-A#

 

Router-B#sh runn (sólo lo mas relevante)

Building configuration...

 

Current configuration : 1821 bytes

!

hostname Router-B

!

vlan 666

 name WAN

!

interface Loopback1 (emula LAN)

 ip address 192.168.1.1 255.255.255.255

!

interface FastEthernet0

 switchport access vlan 666

!

interface Vlan666

 ip address 10.0.0.2 255.255.255.248

!

!

ip route 192.168.0.0 255.255.255.0 10.0.0.1 (en caso de usarse el ping desde ese origen)

!

end

 

Router-B#

 

Router-C# sh runn (sólo lo mas relevante)

Building configuration...

!

hostname Router-C

!

vlan 666

 name WAN

!

interface Loopback1 (emula LAN)

 ip address 192.168.1.1 255.255.255.255

!

interface FastEthernet0

 switchport access vlan 666

!

interface Vlan666

 ip address 10.0.0.3 255.255.255.248

!

ip route 192.168.0.0 255.255.255.0 10.0.0.1 (en caso de usarse el ping desde ese origen)

!

end

 

Router-C#

 

(2021) Networking sucks

Rosario, Argentina