BMP en el Huawei NE para EdgeWarden, configuración comentada

Configuración BMP de un Huawei NE de borde línea por línea: sesión, Adj-RIB-In, Adj-RIB-Out y Local-RIB en IPv4 e IPv6, qué llega a EdgeWarden y verificación.

Qué entrega el BMP a EdgeWarden

El BMP (BGP Monitoring Protocol, RFC 7854) envía al colector, en tiempo real, las tablas BGP del router. En EdgeWarden aparecen en BGP → BMP Station, una pantalla de solo lectura. La explicación de cada tabla (RIB) y de qué depende de ellas está en BMP en el Juniper MX para EdgeWarden, configuración comentada; aquí el foco es la configuración de Huawei.

En Huawei, el BMP está en una vista propia, fuera del BGP, y todo se declara en el mismo lugar, por sesión y por familia. No existe la trampa de jerarquías de Junos.

La dirección del colector se cambió por una dirección de documentación: 192.0.2.10. Cámbiala por la tuya.

Requisitos previos

  • Licencia Enterprise: sin ella, el receptor BMP de EdgeWarden no arranca y el log registra el motivo. Después del upgrade, reinicia el colector.
  • Puerto 11019/TCP abierto en el servidor de EdgeWarden, solo para las IP de los routers. EdgeWarden abre el puerto y espera: quien conecta es siempre el router.
  • VRP con configuración en dos etapas: nada vale hasta el commit.

La configuración

Esta es la configuración tal como aparece en el display current-configuration:

VRP: BMP en producción
bmp
 #
 bmp-session 192.0.2.10 alias netflowspec
  tcp connect port 11019
  connect-interface LoopBack0
  #
  monitor public
   route-mode ipv4-family unicast adj-rib-in pre-policy
   route-mode ipv4-family unicast adj-rib-out pre-policy
   route-mode ipv4-family unicast adj-rib-out post-policy
   route-mode ipv4-family unicast local-rib
   route-mode ipv6-family unicast adj-rib-in pre-policy
   route-mode ipv6-family unicast adj-rib-out pre-policy
   route-mode ipv6-family unicast adj-rib-out post-policy
   route-mode ipv6-family unicast local-rib
  #
  monitor peer 192.0.2.10
#

Sesión

  • bmp: entra en la vista del BMP, separada de la configuración del BGP.
  • bmp-session 192.0.2.10 alias netflowspec: crea la sesión BMP con el colector de EdgeWarden. El alias le da nombre a la sesión y permite tener más de una sesión hacia la misma IP.
  • tcp connect port 11019: el router abre la conexión TCP hacia el puerto 11019 del colector, el puerto por defecto de EdgeWarden.
  • connect-interface LoopBack0: la sesión sale por la loopback. La IP de origen de la sesión se convierte en la identidad del router en EdgeWarden; con la loopback, queda estable e igual a la del registro del dispositivo y del SNMP. Sin esta línea, la sesión sale por la interfaz que alcanza el colector, y un cambio de ruta hace que el router reaparezca como si fuera otro, con el historial partido en dos. Al aplicarla en un router que ya tiene la sesión activa, la sesión cae y se reconecta; las sesiones BGP con los vecinos no se ven afectadas. Abre el 11019 en el servidor también para la IP de la loopback.

Qué se monitorea

  • monitor public: monitorea los vecinos BGP de la red pública (fuera de VPN). Las líneas route-mode de abajo dicen qué tablas de cada vecino se envían.
  • route-mode ipv4-family unicast adj-rib-in pre-policy: envía el in pre, todo lo que cada vecino anuncia en IPv4, antes del filtro de entrada. Responde "¿el vecino me está enviando este prefijo?".
  • route-mode ipv4-family unicast adj-rib-out pre-policy: envía el out pre, lo que saldría hacia cada vecino en IPv4, antes de la política de salida.
  • route-mode ipv4-family unicast adj-rib-out post-policy: envía el out post, lo que de hecho se anuncia a cada vecino en IPv4, después de la política de salida. El VRP acepta pre-policy y post-policy juntos en el Adj-RIB-Out: con las dos líneas, llegan las dos versiones.
  • route-mode ipv4-family unicast local-rib: envía la Local-RIB IPv4, la tabla efectiva del router. No tiene pre ni post, porque es el resultado de la decisión BGP.
  • Las cuatro líneas ipv6-family: lo mismo para IPv6. En Huawei, cada familia se declara aparte; sin estas líneas, el IPv6 no llega.
  • monitor peer 192.0.2.10: abre la configuración de monitoreo de un vecino BGP específico, aquí el propio servidor de EdgeWarden, que también tiene sesión BGP con el router. Sin route-mode debajo, la línea no cambia lo que se envía: en el display bgp bmp-monitor all, ese vecino aparece con las mismas tablas del monitor public.

Retención de rutas en el BGP

La línea de abajo va en la configuración del BGP, no en la vista del BMP:

VRP: BGP con keep-all-routes
bgp 65000
 keep-all-routes
  • bgp 65000: la vista del BGP. Cámbialo por tu ASN.
  • keep-all-routes: el router guarda todas las rutas recibidas de cada vecino desde que la sesión subió, incluidas las que la política de entrada (route-policy, filter-policy, ip-prefix) rechazó. Quedan almacenadas, pero no entran en la tabla BGP activa.
  • El uso original es cambiar una política de entrada sin tirar la sesión: el router reaplica la política nueva sobre la copia local, sin pedirle al vecino que reenvíe las rutas por route-refresh (RFC 2918). Es el equivalente al soft-reconfiguration inbound de Cisco.
  • Para el BMP, es lo que deja el in pre completo. Sin esta línea, el VRP descarta las rutas rechazadas, nunca llegan al BMP, y el in pre muestra solo lo que pasó el filtro, lo contrario de lo que "pre-policy" promete.
  • El costo es memoria: el router guarda rutas que de otro modo descartaría. Si tu BGP todavía no tiene la línea, aplícala en una ventana de mantenimiento y vigila la memoria de la Routing Engine y las sesiones BGP después del commit.

Qué llega a EdgeWarden

Con esta configuración, la pestaña Route Feed de la pantalla BMP Station muestra, en la columna RIB:

RIBDe dónde viene
in preadj-rib-in pre-policy, IPv4 e IPv6
out preadj-rib-out pre-policy, IPv4 e IPv6
out postadj-rib-out post-policy, IPv4 e IPv6
loc-riblocal-rib, IPv4 e IPv6

in post no aparece, porque la configuración no pide adj-rib-in post-policy. EdgeWarden procesa IPv4 unicast e IPv6 unicast; VPN, L2VPN y FlowSpec que lleguen por BMP se ignoran a propósito.

Puntos de atención

Los puntos de abajo no cambian la configuración de arriba; explican qué significa cada elección en EdgeWarden.

Adj-RIB-Out en pre y post-policy

El out post es lo que el router de hecho anuncia a cada vecino, después de la política de salida. La ingeniería de entrada de EdgeWarden confirma sus señales (retiro o prepend de un bloque hacia un proveedor) y verifica los anuncios manuales de entrada por el out post: sin la línea post-policy, esa confirmación no ocurre para el router. El out pre muestra lo que saldría antes de la política; comparar los dos muestra lo que la política de salida filtró o cambió. El RIB Guard usa las dos versiones.

Alcance

monitor public envía las tablas de todos los vecinos de la red pública, incluidos clientes que reciben tabla completa. El Adj-RIB-Out de un cliente con tabla completa genera mucho volumen sin valor para la ingeniería de tráfico. Para restringirlo, Huawei usa monitor peer con los vecinos de tránsito y peering, cada uno con sus líneas route-mode, en lugar del monitor public.

Verificación

Salida en un NE con esta configuración (direcciones cambiadas y lista de vecinos acortada):

VRP: estado del BMP
display bgp bmp-monitor all
 0.0.0.0/:: : monitor public / private
 Route modes: a - add-path, A - all, m - path-marking, ID - route-identifier

*>BGP ipv4-family unicast :
  Peer                Session Ip    Alias        State  route-mode
  0.0.0.0             192.0.2.10    netflowspec  up     local-rib
  203.0.113.1         192.0.2.10    netflowspec  up     in pre-policy/out pre-policy/out post-policy
  192.0.2.10          192.0.2.10    netflowspec  up     in pre-policy/out pre-policy/out post-policy
  203.0.113.5         192.0.2.10    netflowspec  up     in pre-policy/out pre-policy/out post-policy

*>BGP ipv6-family unicast :
  Peer                Session Ip    Alias        State  route-mode
  ::                  192.0.2.10    netflowspec  up     local-rib
  2001:DB8:1000::1E   192.0.2.10    netflowspec  up     in pre-policy/out pre-policy/out post-policy
  2001:DB8:8000::FFFE 192.0.2.10    netflowspec  up     in pre-policy/out pre-policy/out post-policy
  • State up en todas las líneas: la sesión BMP está activa.
  • La Local-RIB aparece como un "vecino" de dirección 0.0.0.0 (IPv4) y :: (IPv6), con local-rib en la columna route-mode. Es normal.
  • Cada vecino real muestra in pre-policy/out pre-policy/out post-policy, las tres tablas pedidas en el monitor public.
  • IPv4 e IPv6 aparecen en bloques separados. Si una familia no aparece, falta su route-mode.
  • La IP del colector (192.0.2.10) aparece también como vecino, porque el servidor de EdgeWarden tiene sesión BGP con este router.

En el servidor de EdgeWarden, verifica la sesión TCP:

Servidor EdgeWarden: sesiones BMP
ss -tn state established '( sport = :11019 )'

En la interfaz, en BGP → BMP Station, la pestaña Roteadores (routers) muestra el NE por la IP de origen de la sesión, y la pestaña Route Feed muestra in pre, out pre, out post y loc-rib.

Abre el 11019/TCP en el servidor solo para las IP de los routers. Quien conecta a ese puerto y habla BMP entra en la lista de routers y puede enviar rutas falsas a las automatizaciones que dependen del BMP.

Configuración para pegar

Los mismos comandos de la configuración de arriba, con la navegación entre vistas (system-view, quit) y el commit al final. Cambia el colector y el ASN por los tuyos.

VRP: BMP para pegar
system-view
bmp
 bmp-session 192.0.2.10 alias netflowspec
  tcp connect port 11019
  connect-interface LoopBack0
  monitor public
   route-mode ipv4-family unicast adj-rib-in pre-policy
   route-mode ipv4-family unicast adj-rib-out pre-policy
   route-mode ipv4-family unicast adj-rib-out post-policy
   route-mode ipv4-family unicast local-rib
   route-mode ipv6-family unicast adj-rib-in pre-policy
   route-mode ipv6-family unicast adj-rib-out pre-policy
   route-mode ipv6-family unicast adj-rib-out post-policy
   route-mode ipv6-family unicast local-rib
   quit
  monitor peer 192.0.2.10
   quit
  quit
 quit
bgp 65000
 keep-all-routes
 quit
commit

Próximos pasos

La explicación de cada RIB y de las automatizaciones que usan el BMP está en BMP en el Juniper MX para EdgeWarden, configuración comentada. Para los flujos del mismo NE, mira NetStream v9 comentado o NetStream IPFIX comentado. Los puertos y el firewall del servidor están en la guía de instalación.

Artículos relacionados

Todos los artículos

¿Quiere ver estos flows en EdgeWarden?

Cree su cuenta en el Área de clientes y genere la licencia demo: 7 días con todos los recursos Enterprise, en su propio servidor. Luego siga la guía de instalación para poner en marcha el recolector.