Qué es esta configuración
Es la configuración de inline J-Flow de un Juniper MX de borde que exporta IPFIX a dos servidores EdgeWarden al mismo tiempo. La guía paso a paso genérica está en Cómo exportar IPFIX desde un Juniper MX a EdgeWarden. Aquí el foco es explicar qué hace cada línea y por qué algunos valores difieren de los de la guía.
Las direcciones se cambiaron por direcciones de documentación: colectores 192.0.2.10 y 192.0.2.11, origen de la exportación 198.51.100.1. Cámbialas por las tuyas antes de pegar.
| Ítem | Guía | Esta configuración | Efecto |
|---|---|---|---|
| Active timeout de la plantilla | 60 s | 15 s | Flujo largo exportado cada 15 s: detección más temprana, más exportación |
| Template y option refresh | 60 s | 10 s | Tras reiniciar el colector, los datos se vuelven a decodificar en hasta 10 s |
| Muestreo | 1:1000 | 1:500 | Más precisión, cerca del doble de flujos |
| Colectores | 1 | 2 | Los dos reciben una copia de todos los flujos |
| Tablas de flujo (IPv4 e IPv6) | 8 y 4 | 10 y 5 | 2.621.440 entradas IPv4 y 1.310.720 IPv6 |
Chasis y FPC
set chassis network-services enhanced-ip
set chassis fpc 0 sampling-instance EDGEWARDEN
set chassis fpc 0 inline-services flow-table-size ipv4-flow-table-size 10
set chassis fpc 0 inline-services flow-table-size ipv6-flow-table-size 5network-services enhanced-ip: modo de red del chasis para las MPC Trio. Sishow chassis network-servicesya muestraEnhanced-IP, la línea solo deja explícito el modo actual. Cambiar este modo exige reiniciar el router.sampling-instance EDGEWARDEN: asocia la instancia de muestreo a la FPC 0. Sin esta línea la instancia queda inactiva y no se exporta nada. En un MX con varias FPC, repítela para cada FPC que tenga una interfaz muestreada.flow-table-size: cada unidad vale 256K entradas. 10 unidades dan 2.621.440 flujos IPv4 simultáneos; 5 dan 1.310.720 IPv6. Desde Junos 16.1R1 y 15.1F2 las tablas nacen con solo 1.024 entradas, poco para un ataque con orígenes falsificados, en el que cada origen se convierte en un flujo. El máximo por tarjeta está en el paso 3 de la guía.
Antes de Junos 16.1R1 y 15.1F2, cambiar flow-table-size reinicia la FPC. En esas versiones, haz el cambio en una ventana de mantenimiento.
Plantillas IPFIX
set services flow-monitoring version-ipfix template EDGEWARDEN flow-active-timeout 15
set services flow-monitoring version-ipfix template EDGEWARDEN flow-inactive-timeout 15
set services flow-monitoring version-ipfix template EDGEWARDEN nexthop-learning enable
set services flow-monitoring version-ipfix template EDGEWARDEN template-refresh-rate seconds 10
set services flow-monitoring version-ipfix template EDGEWARDEN option-refresh-rate seconds 10
set services flow-monitoring version-ipfix template EDGEWARDEN ipv4-template
set services flow-monitoring version-ipfix template EDGEWARDEN-v6 flow-active-timeout 15
set services flow-monitoring version-ipfix template EDGEWARDEN-v6 flow-inactive-timeout 15
set services flow-monitoring version-ipfix template EDGEWARDEN-v6 nexthop-learning enable
set services flow-monitoring version-ipfix template EDGEWARDEN-v6 template-refresh-rate seconds 10
set services flow-monitoring version-ipfix template EDGEWARDEN-v6 option-refresh-rate seconds 10
set services flow-monitoring version-ipfix template EDGEWARDEN-v6 ipv6-templateSon dos plantillas con los mismos parámetros: EDGEWARDEN para IPv4 y EDGEWARDEN-v6 para IPv6.
ipv4-templateeipv6-template: definen el conjunto de campos exportado en cada familia (direcciones, puertos, protocolo, interfaces, ASN, next-hop, bytes y paquetes).flow-active-timeout 15: un flujo que sigue activo, como el de un ataque, se exporta cada 15 s. Sumado al ciclo de análisis de EdgeWarden (10 s por defecto), el ataque aparece en unos 25 s, frente a unos 70 s con 60 s. El costo: un flujo largo genera 4 registros por minuto en lugar de 1.flow-inactive-timeout 15: un flujo sin paquetes durante 15 s se cierra y se exporta, lo que libera su entrada en la tabla de flujos.nexthop-learning enable: con ECMP, informa la interfaz de salida y el next-hop correctos. Sin esto, el MX informa el primer camino en IPv4 y pone en cero la interfaz de salida y el next-hop en IPv6. Requiere Junos 15.1F2 o más reciente.template-refresh-rate seconds 10: reenvía la plantilla cada 10 s. El colector solo decodifica los datos después de recibir la plantilla; tras reiniciar uno de los servidores EdgeWarden, la espera es de como máximo 10 s, frente a 600 s con el valor por defecto de Junos.option-refresh-rate seconds 10: reenvía el Options Template, que lleva la tasa de muestreo. Es por él que la columna Amostragem (muestreo) de EdgeWarden muestra detectado.
Instancia de muestreo
La instancia define cuánto muestrear, a dónde exportar y con qué dirección de origen. Primero, la tasa:
set forwarding-options sampling instance EDGEWARDEN input rate 500
set forwarding-options sampling instance EDGEWARDEN input run-length 0input rate 500: muestrea 1 de cada 500 paquetes que entran por las interfaces consampling input. Ese 500 va en el registro del dispositivo en EdgeWarden.input run-length 0: después de cada paquete seleccionado, no muestrea ningún paquete consecutivo adicional. Es el valor por defecto, aquí explícito. Con unrun-lengthmayor que 0, cada selección tomaría varios paquetes seguidos y la proporción real dejaría de ser 1:500.
Familia IPv4
set forwarding-options sampling instance EDGEWARDEN family inet output flow-inactive-timeout 15
set forwarding-options sampling instance EDGEWARDEN family inet output flow-active-timeout 60
set forwarding-options sampling instance EDGEWARDEN family inet output flow-server 192.0.2.10 port 2055
set forwarding-options sampling instance EDGEWARDEN family inet output flow-server 192.0.2.10 autonomous-system-type origin
set forwarding-options sampling instance EDGEWARDEN family inet output flow-server 192.0.2.10 no-local-dump
set forwarding-options sampling instance EDGEWARDEN family inet output flow-server 192.0.2.10 version-ipfix template EDGEWARDEN
set forwarding-options sampling instance EDGEWARDEN family inet output flow-server 192.0.2.11 port 2055
set forwarding-options sampling instance EDGEWARDEN family inet output flow-server 192.0.2.11 autonomous-system-type origin
set forwarding-options sampling instance EDGEWARDEN family inet output flow-server 192.0.2.11 no-local-dump
set forwarding-options sampling instance EDGEWARDEN family inet output flow-server 192.0.2.11 version-ipfix template EDGEWARDEN
set forwarding-options sampling instance EDGEWARDEN family inet output inline-jflow source-address 198.51.100.1
set forwarding-options sampling instance EDGEWARDEN family inet output inline-jflow flow-export-rate 10output flow-active-timeout 60yflow-inactive-timeout 15: en inline J-Flow, la exportación sigue los timeouts de la plantilla (15 s y 15 s). Para no dejar dudas sobre qué valor vale, elimina estas dos líneas o usa en ellas los mismos valores de la plantilla.flow-server ... port 2055: un colector por grupo de líneas. Con dosflow-server, el MX envía una copia de cada flujo a cada servidor; no es balanceo de carga. Si un servidor cae, el otro sigue recibiendo todo.autonomous-system-type origin: llena los campos de ASN con el AS que originó el prefijo (el último del AS-path), y no con el AS vecino (peer). Es lo que permite a EdgeWarden mostrar de qué red viene el tráfico. Depende de que el MX tenga las rutas BGP de esos prefijos.no-local-dump: no graba una copia de los flujos en un archivo de log en el router. Esa copia solo sirve para depuración y consume disco y CPU de la Routing Engine.version-ipfix template EDGEWARDEN: exporta en IPFIX con la plantilla IPv4.inline-jflow source-address 198.51.100.1: la IP de origen de los paquetes de exportación. Es la IP que registras en EdgeWarden, y cuenta como un exportador en la licencia. Usa la loopback, con ruta hasta los colectores por la red de datos: el MX no exporta flujos inline por lafxp0.inline-jflow flow-export-rate 10: hasta 10 mil paquetes de exportación por segundo, valor que vale para toda la FPC. El valor por defecto es 1, poco para un borde bajo ataque. Aquí está solo en la familiainet; el paso 2 de la guía repite el valor eninet6, y puedes hacer lo mismo.
Familia IPv6
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-inactive-timeout 15
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-active-timeout 60
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-server 192.0.2.10 port 2055
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-server 192.0.2.10 autonomous-system-type origin
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-server 192.0.2.10 no-local-dump
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-server 192.0.2.10 version-ipfix template EDGEWARDEN-v6
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-server 192.0.2.11 port 2055
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-server 192.0.2.11 autonomous-system-type origin
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-server 192.0.2.11 no-local-dump
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-server 192.0.2.11 version-ipfix template EDGEWARDEN-v6
set forwarding-options sampling instance EDGEWARDEN family inet6 output inline-jflow source-address 198.51.100.1Es el espejo de la familia IPv4, con dos diferencias que importan:
- La plantilla es
EDGEWARDEN-v6. - Colectores y
source-addresssiguen en IPv4: los flujos IPv6 viajan dentro de paquetes IPv4. Con el mismosource-addressen las dos familias, el MX ocupa un cupo de la licencia y un único registro en EdgeWarden.
Interfaz de borde
set interfaces et-0/0/1 unit 467 description Peer1
set interfaces et-0/0/1 unit 467 vlan-id 467
set interfaces et-0/0/1 unit 467 family inet sampling input
set interfaces et-0/0/1 unit 467 family inet address 203.0.113.17/31
set interfaces et-0/0/1 unit 467 family inet6 sampling input
set interfaces et-0/0/1 unit 467 family inet6 address 2001:db8:467::1/127family inet sampling inputyfamily inet6 sampling input: muestrean lo que entra por el peer, que es por donde llega el ataque. Sin la línea deinet6, el tráfico IPv6 pasa sin ser visto. Repite en las otras interfaces de tránsito e IXP y, si quieres ver ataques que salen de clientes, en la entrada de sus interfaces.- El ifIndex que va en el flujo es el de la unidad lógica
et-0/0/1.467, no el del puerto físico. EdgeWarden busca por SNMP el nombre de ese ifIndex y muestraPeer1en la pantalla de Interfaces. Para verificar el número:show interfaces et-0/0/1.467 | match "SNMP ifIndex".
Dos líneas que no forman parte de la exportación
Es común encontrar estas líneas junto a la configuración de flujos. Ninguna de ellas cambia la exportación a EdgeWarden:
set services inline-monitoring template EDGEWARDEN template-refresh-rate 10: inline monitoring es otra función de Junos, que exporta fragmentos de los paquetes en IPFIX en lugar de flujos y tiene instancias propias. La plantilla del inline J-Flow es la deservices flow-monitoring; esta línea no la altera y puede eliminarse.set chassis alarm management-ethernet link-down ignore: solo silencia la alarma del puerto de gestión desconectado.
Registro en EdgeWarden
Repite en cada uno de los dos servidores:
- En Configurações → Rede → Dispositivos (Configuración → Red → Dispositivos), registra el MX con Endereço IP (dirección IP)
198.51.100.1, Taxa de Amostragem de Flow (tasa de muestreo)500y los datos de SNMP. - Con el
option-refresh-ratede 10 s, la columna Amostragem pasa a mostrar detectado con 1:500 pocos segundos después de que empiezan a llegar los flujos. - Sigue la verificación en el router y en EdgeWarden de la guía para validar la exportación y la tasa.
Quien alcance el 2055/UDP puede inyectar flujos falsificados y envenenar la detección. En los dos servidores, restringe el puerto a las IP de tus routers.
Configuración completa
Para pegar de una vez, sin las dos líneas que no forman parte de la exportación. Cambia las direcciones, la interfaz y la FPC por las tuyas, pega en modo de configuración y ejecuta commit check y commit confirmed 10 antes del commit.
set chassis network-services enhanced-ip
set chassis fpc 0 sampling-instance EDGEWARDEN
set chassis fpc 0 inline-services flow-table-size ipv4-flow-table-size 10
set chassis fpc 0 inline-services flow-table-size ipv6-flow-table-size 5
set services flow-monitoring version-ipfix template EDGEWARDEN flow-active-timeout 15
set services flow-monitoring version-ipfix template EDGEWARDEN flow-inactive-timeout 15
set services flow-monitoring version-ipfix template EDGEWARDEN nexthop-learning enable
set services flow-monitoring version-ipfix template EDGEWARDEN template-refresh-rate seconds 10
set services flow-monitoring version-ipfix template EDGEWARDEN option-refresh-rate seconds 10
set services flow-monitoring version-ipfix template EDGEWARDEN ipv4-template
set services flow-monitoring version-ipfix template EDGEWARDEN-v6 flow-active-timeout 15
set services flow-monitoring version-ipfix template EDGEWARDEN-v6 flow-inactive-timeout 15
set services flow-monitoring version-ipfix template EDGEWARDEN-v6 nexthop-learning enable
set services flow-monitoring version-ipfix template EDGEWARDEN-v6 template-refresh-rate seconds 10
set services flow-monitoring version-ipfix template EDGEWARDEN-v6 option-refresh-rate seconds 10
set services flow-monitoring version-ipfix template EDGEWARDEN-v6 ipv6-template
set forwarding-options sampling instance EDGEWARDEN input rate 500
set forwarding-options sampling instance EDGEWARDEN input run-length 0
set forwarding-options sampling instance EDGEWARDEN family inet output flow-inactive-timeout 15
set forwarding-options sampling instance EDGEWARDEN family inet output flow-active-timeout 60
set forwarding-options sampling instance EDGEWARDEN family inet output flow-server 192.0.2.10 port 2055
set forwarding-options sampling instance EDGEWARDEN family inet output flow-server 192.0.2.10 autonomous-system-type origin
set forwarding-options sampling instance EDGEWARDEN family inet output flow-server 192.0.2.10 no-local-dump
set forwarding-options sampling instance EDGEWARDEN family inet output flow-server 192.0.2.10 version-ipfix template EDGEWARDEN
set forwarding-options sampling instance EDGEWARDEN family inet output flow-server 192.0.2.11 port 2055
set forwarding-options sampling instance EDGEWARDEN family inet output flow-server 192.0.2.11 autonomous-system-type origin
set forwarding-options sampling instance EDGEWARDEN family inet output flow-server 192.0.2.11 no-local-dump
set forwarding-options sampling instance EDGEWARDEN family inet output flow-server 192.0.2.11 version-ipfix template EDGEWARDEN
set forwarding-options sampling instance EDGEWARDEN family inet output inline-jflow source-address 198.51.100.1
set forwarding-options sampling instance EDGEWARDEN family inet output inline-jflow flow-export-rate 10
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-inactive-timeout 15
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-active-timeout 60
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-server 192.0.2.10 port 2055
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-server 192.0.2.10 autonomous-system-type origin
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-server 192.0.2.10 no-local-dump
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-server 192.0.2.10 version-ipfix template EDGEWARDEN-v6
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-server 192.0.2.11 port 2055
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-server 192.0.2.11 autonomous-system-type origin
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-server 192.0.2.11 no-local-dump
set forwarding-options sampling instance EDGEWARDEN family inet6 output flow-server 192.0.2.11 version-ipfix template EDGEWARDEN-v6
set forwarding-options sampling instance EDGEWARDEN family inet6 output inline-jflow source-address 198.51.100.1
set interfaces et-0/0/1 unit 467 description Peer1
set interfaces et-0/0/1 unit 467 vlan-id 467
set interfaces et-0/0/1 unit 467 family inet sampling input
set interfaces et-0/0/1 unit 467 family inet address 203.0.113.17/31
set interfaces et-0/0/1 unit 467 family inet6 sampling input
set interfaces et-0/0/1 unit 467 family inet6 address 2001:db8:467::1/127Próximos pasos
Para elegir otros valores de tasa y timeout, mira Muestreo y timeouts de NetFlow e IPFIX sin perder ataques. Si los flujos no aparecen, sigue el checklist ¿No aparece ningún flow en EdgeWarden?. La guía paso a paso completa, con SNMP y los errores comunes del MX, está en Cómo exportar IPFIX desde un Juniper MX a EdgeWarden.