bgp – ruta a null

Una condición para anunciar nuestros prefijos hacia los routers BGP con los que se tiene peering es tener estos prefijos previamente en nuestra tabla de enrutamiento.

Podemos partir de una topología básica en la que estos prefijos están directamente conectados. Por ejemplo anunciamos 10.188.0.0/24 a un peer de un ISP y tenemos configurado en una interfaz este mismo rango, con esa máscara /24.

bgp-single-homed

  • La configuración básica seria:
Router-A:

interface GigabitEthernet0/1
 description WAN contra AS 64513
 ip address 172.31.0.2 255.255.255.252
 duplex auto
 speed auto
 media-type rj45
 no cdp enable

interface GigabitEthernet0/2
 description LAN
 ip address 10.188.0.1 255.255.255.0
 duplex auto
 speed auto
 media-type rj45

router bgp 64512
 no synchronization
 bgp log-neighbor-changes
 network 10.188.0.0 mask 255.255.255.0
 neighbor 172.31.0.1 remote-as 64513
 neighbor 172.31.0.1 soft-reconfiguration inbound
 neighbor 172.31.0.1 password 0 capa3.es
  • Ruta a Null

Basándonos en la topología anterior, deseamos anunciar también el prefijo 10.99.0.0/24.

Si este prefijo no está en la tabla de enrutamiento del Router-A, éste no lo anunciará porque no sabe alcanzar el destino.

bgp-single-homed-ruta-null-mini

Existen diferentes soluciones, una de las más usadas es la ruta a Null.
Usaríamos la misma configuración que antes, pero añadiendo network 10.99.0.0 mask 255.255.255.0 en la configuración de BGP y una ruta a null:

Router-A:

router bgp 64512
 no synchronization
 bgp log-neighbor-changes
 network 10.188.0.0 mask 255.255.255.0
 network 10.99.0.0 mask 255.255.255.0
 neighbor 172.31.0.1 remote-as 64513
 neighbor 172.31.0.1 soft-reconfiguration inbound
 neighbor 172.31.0.1 password 0 capa3.es
!
ip route 10.99.0.0 255.255.255.0 null 0

Una alternativa sería quitar las líneas network x.x.x.x y en su lugar usar redistribute connected y redistribute static.

  • ¿Qué sucedería con esta configuración si la interface LAN no tuviera la máscara /24? 

Por defecto en IOS recientes el comando auto-summary viene desactivado en la configuración de bgp, esto es tendremos un “no auto-summary”.
Para verlo haríamos un:

show run all | s router bgp

Como “no auto-summary” viene configurado por defecto, si la interfaz LAN tiene una máscara mayor a la del prefijo, por ejemplo 10.188.0.1/26, no propagaríamos el prefijo /24 porque no existe en la tabla de rutas.
Una de las múltiples soluciones sería configurar auto-summary :

Router-A

interface GigabitEthernet0/2
 description LAN /26
 ip address 10.188.0.1 255.255.255.192
 duplex auto
 speed auto
 media-type rj45

router bgp 64512
 no synchronization
 bgp log-neighbor-changes
 network 10.188.0.0 mask 255.255.255.0
 network 10.99.0.0 mask 255.255.255.0
 neighbor 172.31.0.1 remote-as 64513
 neighbor 172.31.0.1 soft-reconfiguration inbound
 neighbor 172.31.0.1 password 0 capa3.es
 auto-summary
!
ip route 10.99.0.0 255.255.255.0 null 0

Por defecto con “no auto-summary”:

Router-A#show ip bgp neighbors 172.31.0.1 advertised-routes 
BGP table version is 59, local router ID is x
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, 
              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter, 
              x best-external, a additional-path, c RIB-compressed, 
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop            Metric LocPrf Weight Path
 *>  10.99.0.0/24    172.31.0.2                  0         32768 i

Después, configurando auto-summary:

Router-A#show ip bgp neighbors 172.31.0.1 advertised-routes 
BGP table version is 59, local router ID is x
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal, 
              r RIB-failure, S Stale, m multipath, b backup-path, f RT-Filter, 
              x best-external, a additional-path, c RIB-compressed, 
Origin codes: i - IGP, e - EGP, ? - incomplete
RPKI validation codes: V valid, I invalid, N Not found

     Network          Next Hop            Metric LocPrf Weight Path
 *>  10.188.0.0/24    172.31.0.2                  0         32768 i
 *>  10.99.0.0/24    172.31.0.2                  0         32768 i

En el siguiente post veremos la problemática que pueden traer las rutas a null en una topología bgp con multihoming y lo evitaremos insertando los prefijos en la tabla del router BGP desde un protocolo de enrutamiento interior o IGP ( OSPF, EIGRP, RIPng ).

Leave a Reply

Your email address will not be published. Required fields are marked *