Ejemplo: Configuración de monitoreo de flujo pasivo en enrutadores serie M, MX y T

En la figura 1, el tráfico entra en la estación de monitoreo a través de las interfaces so-0/0/0 y so-0/1/0. Después de que el filtro de firewall acepte el tráfico que se va a supervisar, los paquetes ingresan a una instancia VRF.
Los paquetes originales viajan dentro de la instancia de VRF a la PIC de servicios de supervisión para el procesamiento del flujo. Los paquetes de flujo finales se envían desde las interfaces de servicios de monitoreo fuera de la interfaz fe-3/0/0 a un servidor de flujo.
Una copia del tráfico aceptado se replica de puerto en la PIC de túnel. A medida que los paquetes copiados ingresan en la interfaz de túnel, un segundo filtro de firewall separa los paquetes TCP y UDP y los coloca en dos instancias de reenvío basadas en filtros. La instancia UDP dirige los paquetes UDP a un analizador de paquetes conectado a fe-3/2/0. La instancia TCP envía los paquetes TCP a la PIC ES para el cifrado y la PIC ES envía los paquetes a un segundo analizador de paquetes conectado a fe-3/2/1.
El primer paso es definir un filtro de firewall para seleccionar paquetes para la supervisión. Se debe aceptar todo el tráfico filtrado, y la instrucción en el port-mirror
nivel jerárquico facilita la [edit firewall family inet filter filter-name term term-name then]
duplicación de puertos.
A continuación, configure las interfaces SONET/SDH de entrada y aplique el filtro de firewall que acaba de definir. La passive-monitor-mode
instrucción deshabilita las conservaciones SONET en las interfaces SONET/SDH y permite la supervisión pasiva del flujo.
Configure todas las demás interfaces que utilizará con la aplicación de supervisión, incluidas las interfaces de servicios de supervisión, las interfaces de exportación, la interfaz de túnel y la interfaz ES. Una vez que las interfaces estén en su lugar, configure una instancia de VRF y un grupo de monitoreo para dirigir los paquetes originales desde las interfaces de entrada a las interfaces de servicios de supervisión para su procesamiento. Los paquetes de descripción del flujo resultante salen de fe-3/0/0 para llegar al servidor de flujo.
A continuación, configure las instrucciones para que reflejen el tráfico supervisado en una interfaz de túnel. Diseñe un filtro de firewall que seleccione parte del tráfico copiado para análisis adicionales y parte del tráfico para descartarlo. En este caso, aísle el tráfico TCP y UDP y dirija estos dos flujos a instancias de enrutamiento de reenvío basadas en filtros independientes. Recuerde aplicar el filtro a la interfaz de túnel para permitir la separación del tráfico TCP del tráfico UDP. Además, importe las rutas de interfaz en las instancias de reenvío con un grupo de tabla de enrutamiento.
En las instancias de reenvío basado en filtros, defina los próximos saltos de ruta estáticos. El siguiente salto para la instancia TCP es la interfaz ES y el siguiente salto para la instancia UDP es el analizador de paquetes conectado a fe-3/2/0. Por último, configure IPSec de modo que el siguiente salto para el tráfico TCP sea el segundo analizador de paquetes conectado a fe-3/2/1.
[edit] interfaces { so-0/0/0 { # Traffic enters the router on this interface. description “ input interface”; encapsulation ppp; unit 0 { passive-monitor-mode; # Disables SONET keepalives. family inet { filter { input input-monitoring-filter; # The firewall filter is applied here. } } } } so-0/1/0 { # Traffic enters the router on this interface. description “ input interface”; encapsulation ppp; unit 0 { passive-monitor-mode; # Disables SONET keepalives. family inet { filter { input input-monitoring-filter; # The firewall filter is applied here. } } } } es-3/1/0 { # This is where the TCP traffic enters the ES PIC. unit 0 { tunnel { source 10.8.8.1; destination 10.8.8.2; } family inet { ipsec-sa sa-esp; address 192.0.2.1/32 { destination 192.0.2.2; } } } } fe-3/0/0 { # Flow records exit here and travel to the flow server. description “ export interface to the flow server”; unit 0 { family inet; address 192.168.245.1/30; } } fe-3/2/0 { # This export interface for UDP traffic leads to a packet analyzer. description “ export interface to the packet analyzer”; unit 0 { family inet { address 10.9.9.1/30; } } } fe-3/2/1 { # This IPSec tunnel source exports TCP traffic to a packet analyzer. unit 0 { family inet { address 10.8.8.1/30; } } } mo-4/0/0 { # This marks the beginning of the monitoring services interfaces. unit 0 { # Unit 0 is part of the inet.0 routing table and generates flow records. family inet; } unit 1 { # Unit 1 receives monitored traffic and is part of the VRF instance. family inet; } } mo-4/1/0 { unit 0 { # Unit 0 is part of the inet.0 routing table and generates flow records. family inet; } unit 1 { # Unit 1 receives monitored traffic and is part of the VRF instance. family inet; } } mo-4/2/0 { unit 0 { # Unit 0 is part of the inet.0 routing table and generates flow records. family inet; } unit 1 { # Unit 1 receives monitored traffic and is part of the VRF instance. family inet; } } mo-4/3/0 { unit 0 { # Unit 0 is part of the inet.0 routing table and generates flow records. family inet; } unit 1 { # Unit 1 receives monitored traffic and is part of the VRF instance. family inet; } } vt-0/2/0 { # The tunnel services interface receives the port-mirrored traffic. unit 0 { family inet { filter { input tunnel-interface-filter; # The filter splits traffic into TCP and UDP } } } } } forwarding-options { monitoring group1 { # Monitored traffic is processed by the monitoring services family inet { # interfaces and flow records are sent to the flow server. output { export-format cflowd-version-5; flow-active-timeout 60; flow-inactive-timeout 30; flow-server 192.168.245.2 port 2055; # IP address and port for server. interface mo-4/0/0.1 { # Use monitoring services interfaces for output. engine-id 1; # engine and interface-index statements are optional. engine-type 1; input-interface-index 44; output-interface-index 54; source-address 192.168.245.1; # This is the IP address of fe-3/0/0. } interface mo-4/1/0.1 { engine-id 2; # engine and interface-index statements are optional. engine-type 1; input-interface-index 45; output-interface-index 55; source-address 192.168.245.1; # This is the IP address of fe-3/0/0. } interface mo-4/2/0.1 { engine-id 3; # engine and interface-index statements are optional. engine-type 1; input-interface-index 46; output-interface-index 56; source-address 192.168.245.1; # This is the IP address of fe-3/0/0. } interface mo-4/3/0.1 { engine-id 4; # engine and interface-index statements are optional. engine-type 1; input-interface-index 47; output-interface-index 57; source-address 192.168.245.1; # This is the IP address of fe-3/0/0. } } } } port-mirroring { # Copies the traffic and sends it to the Tunnel Services PIC. family inet { input { rate 1; run-length 1; } output { interface vt-0/2/0.0; no-filter-check; } } } } routing-options { # This installs the interface routes into the forwarding instances. interface-routes { rib-group inet bc-vrf; } rib-groups { bc-vrf { import-rib [inet.0 tcp-routing-table.inet.0 udp-routing-table.inet.0]; } } forwarding-table { export pplb; # Applies per-packet load balancing to the forwarding table. } } policy-options { policy-statement monitoring-vrf-import { then reject; } policy-statement monitoring-vrf-export { then reject; } policy-statement pplb { then { load-balance per-packet; } } } security { # This sets IPSec options for the ES PIC. ipsec { proposal esp-sha1-3des { protocol esp; authentication-algorithm hmac-sha1-96; encryption-algorithm 3des-cbc; lifetime-seconds 180; } policy esp-group2 { perfect-forward-secrecy { keys group2; } proposals esp-sha1-3des; } security-association sa-esp { mode tunnel; dynamic { ipsec-policy esp-group2; } } } ike { proposal ike-esp { authentication-method pre-shared-keys; dh-group group2; authentication-algorithm sha1; encryption-algorithm 3des-cbc; lifetime-seconds 180; } policy 10.8.8.2 { mode aggressive; proposals ike-esp; pre-shared-key ascii-text "$ABC123"; } } } firewall { family inet { filter input-monitoring-filter { # This filter selects traffic to send into the VRF term 1 { # instance and prepares the traffic for port mirroring. from { destination-address { 10.7.0.0/16; } } then { port-mirror; accept; } } term 2 { from { destination-address { 10.6.0.0/16; } } then accept; } } filter tunnel-interface-filter { # This filter breaks the port-mirrored traffic into two term tcp { # filter-based forwarding instances: TCP packets and UDP packets. from { protocol tcp; } then { # This counts TCP packets and sends them into a TCP instance. count tcp; routing-instance tcp-routing-table; } } term udp { from { protocol udp; } then { # This counts UDP packets and sends them into a UDP instance. count udp; routing-instance udp-routing-table; } } term rest { then { count rest; discard; } } } } } routing-instances { monitoring-vrf { # This is the VRF instance where you send the traffic. It contains instance-type vrf; # the input interface and the monitoring services interfaces. interface so-0/0/0.0; # Traffic enters the router on these input interfaces. interface so-0/1/0.0; interface mo-4/0/0.1; interface mo-4/1/0.1; # These are output interfaces (use them as interface mo-4/2/0.1; # output interfaces in your monitoring group). interface mo-4/3/0.1; route-distinguisher 69:1; vrf-import monitoring-vrf-import; vrf-export monitoring-vrf-export; routing-options { # Sends traffic to a group of monitoring services interfaces. static { route 0.0.0.0/0 next-hop [mo-4/0/0.1 mo-4/1/0.1 mo-4/2/0.1 mo-4/3/0.1]; } } } tcp-routing-table { # This is the filter-based forwarding instance for TCP traffic. instance-type forwarding; routing-options { # The next hop is the ES PIC. static { route 0.0.0.0/0 next-hop es-3/1/0.0; } } } udp-routing-table { # This is the filter-based forwarding instance for UDP traffic. instance-type forwarding; routing-options { # The next hop is the second packet analyzer. static { route 0.0.0.0/0 next-hop 10.9.1.2; } } } }
Verificar su trabajo
Para comprobar que su configuración es correcta, utilice los siguientes comandos en la estación de supervisión que está configurada para la supervisión de flujo pasivo:
show route 0/0
show passive-monitoring error
show passive-monitoring flow
show passive-monitoring memory
show passive-monitoring status
show passive-monitoring usage
Para borrar estadísticas de los show passive-monitoring error
comandos y show passive-monitoring flow
, emita el clear passive-monitoring (all | interface-name)
comando.
También puede ver el estado de la supervisión pasiva del flujo con el Protocolo simple de administración de red (SNMP). Se admiten las siguientes tablas de base de información de administración (MIB):
jnxPMonErrorTable: corresponde al
show passive-monitoring error
comando.jnxPMonFlowTable—Corresponde al
show passive-monitoring flow
comando.jnxPMonMemoryTable—Corresponde al
show passive-monitoring memory
comando.
La siguiente sección muestra el resultado de los show
comandos utilizados con el ejemplo de configuración:
user@host> show route 0/0 <skip inet.0>
# Solo nos preocupa la ruta de instancia de enrutamiento.
bc-vrf.inet.0: 1 destinations, 1 routes (1 active, 0 holddown, 0 hidden) bc-vrf.inet.0:+ = Active Route, - = Last Active, * = Both 0.0.0.0/0 *[Static/5] 5d 17:34:57 via mo-4/0/0.1 > via mo-4/1/0.1 via mo-4/2/0.1 via mo-4/3/0.1 tcp-rt.inet.0: 13 destinations, 13 routes (12 active, 0 holddown, 1 hidden) + = Active Route, - = Last Active, * = Both 0.0.0.0/0 *[Static/5] 19:24:39 > via es-3/1/0.0 : <other interface routes> udp-rt.inet.0: 13 destinations, 13 routes (12 active, 0 holddown, 1 hidden) + = Active Route, - = Last Active, * = Both 0.0.0.0/0 *[Static/5] 19:24:39 > to 10.9.1.2 via fe-3/2/0.0 : <other interface routes>
Para todos los show passive-monitoring
comandos, el resultado obtenido al usar un comodín (como *) o la all
opción se basa en las interfaces configuradas enumeradas en el [edit forwarding-options monitoring group-name]
nivel de jerarquía. En el resultado del ejemplo de configuración, solo verá información para las interfaces mo-4/0/0
configuradas, mo-4/1/0
, mo-4/2/0
y mo-4/3/0
.
Muchas de las instrucciones que puede configurar en un grupo de supervisión, como engine-id
y engine-type
, están visibles en la salida de los show passive-monitoring
comandos.
Campo |
Explicación |
---|---|
Paquetes caídos (sin memoria) |
Número de paquetes caídos debido a la memoria. |
Paquetes caídos (no IP) |
Número de paquetes que no son IP caídos. |
Paquetes caídos (no IPv4) |
Número de paquetes caídos porque no se pudo comprobar la IPv4. |
Paquetes caídos (encabezado demasiado pequeño) |
Número de paquetes caídos porque la longitud del paquete o la longitud del encabezado IP era demasiado pequeña. |
Errores de asignación de memoria |
Número de errores de asignación de memoria de registro de flujo. Un pequeño número refleja fallas al reponer la lista de libres. Un gran número indica que la estación de monitoreo está casi fuera del espacio de memoria. |
Fallas sin memoria |
Número de libre de memoria de registro de flujo. |
Errores en la lista sin memoria |
Número de registros de flujo recibidos de la lista de errores. La memoria está casi agotada o se crean demasiados flujos nuevos superiores a 128K en un segundo. |
Advertencia de memoria |
Los flujos han superado un millón de paquetes por segundo (Mpps) en una PIC de servicios de supervisión o 2 Mpps en una PIC de servicios de supervisión II. La respuesta puede ser Sí o No. |
Sobrecarga de memoria |
La memoria se ha sobrecargado. La respuesta es Sí o No. |
Sobrecarga de PPS |
En paquetes por segundo, si la PIC está recibiendo más tráfico que el umbral configurado. La respuesta puede ser Sí o No. |
Sobrecarga de BPS |
En bytes por segundo, si la PIC recibe más tráfico que el umbral configurado. La respuesta puede ser Sí o No. |
user@host> show passive-monitoring error all Passive monitoring interface: mo-4/0/0, Local interface index: 44 Error information Packets dropped (no memory): 0, Packets dropped (not IP): 0 Packets dropped (not IPv4): 0, Packets dropped (header too small): 0 Memory allocation failures: 0, Memory free failures: 0 Memory free list failures: 0 Memory warning: No, Memory overload: No, PPS overload: No, BPS overload: No Passive monitoring interface: mo-4/1/0, Local interface index: 45 Error information Packets dropped (no memory): 0, Packets dropped (not IP): 0 Packets dropped (not IPv4): 0, Packets dropped (header too small): 0 Memory allocation failures: 0, Memory free failures: 0 Memory free list failures: 0 Memory warning: No, Memory overload: No, PPS overload: No, BPS overload: No Passive monitoring interface: mo-4/2/0, Local interface index: 46 Error information Packets dropped (no memory): 0, Packets dropped (not IP): 0 Packets dropped (not IPv4): 0, Packets dropped (header too small): 0 Memory allocation failures: 0, Memory free failures: 0 Memory free list failures: 0 Memory warning: No, Memory overload: No, PPS overload: No, BPS overload: No Passive monitoring interface: mo-4/3/0, Local interface index: 47 Error information Packets dropped (no memory): 0, Packets dropped (not IP): 0 Packets dropped (not IPv4): 0, Packets dropped (header too small): 0 Memory allocation failures: 0, Memory free failures: 0 Memory free list failures: 0 Memory warning: No, Memory overload: No, PPS overload: No, BPS overload: No
Campo |
Explicación |
---|---|
Paquetes de flujo |
Número de paquetes recibidos por una PIC operativa. |
Bytes de flujo |
Número de bytes recibidos por una PIC operativa. |
Paquetes de flujo de 10 segundos de velocidad |
Número de paquetes por segundo gestionados por la PIC y mostrados como un promedio de 10 segundos. |
Velocidad de bytes de flujo de 10 segundos |
Número de bytes por segundo gestionados por la PIC y mostrados como un promedio de 10 segundos. |
Flujos activos |
Número de flujos activos rastreados por la PIC. |
Flujos totales |
Número total de flujos recibidos por una PIC operativa. |
Flujos exportados |
Número total de flujos exportados por una PIC operativa. |
Flujos de paquetes exportados |
Número total de paquetes de flujo exportados por una PIC operativa. |
Flujos inactivos con tiempo de salida |
Número total de flujos que se exportan debido a la inactividad. |
Flujos activos con tiempo de salida |
Número total de flujos de larga duración que se exportan debido a un tiempo de espera activo. |
user@host> show passive-monitoring flow all Passive monitoring interface: mo-4/0/0, Local interface index: 44 Flow information Flow packets: 6533434, Flow bytes: 653343400 Flow packets 10-second rate: 0, Flow bytes 10-second rate: 0 Active flows: 0, Total flows: 1599 Flows exported: 1599, Flows packets exported: 55 Flows inactive timed out: 1599, Flows active timed out: 0 Passive monitoring interface: mo-4/1/0, Local interface index: 45 Flow information Flow packets: 6537780, Flow bytes: 653778000 Flow packets 10-second rate: 0, Flow bytes 10-second rate: 0 Active flows: 0, Total flows: 1601 Flows exported: 1601, Flows packets exported: 55 Flows inactive timed out: 1601, Flows active timed out: 0 Passive monitoring interface: mo-4/2/0, Local interface index: 46 Flow information Flow packets: 6529259, Flow bytes: 652925900 Flow packets 10-second rate: 0, Flow bytes 10-second rate: 0 Active flows: 0, Total flows: 1599 Flows exported: 1599, Flows packets exported: 55 Flows inactive timed out: 1599, Flows active timed out: 0 Passive monitoring interface: mo-4/3/0, Local interface index: 47 Flow information Flow packets: 6560741, Flow bytes: 656074100 Flow packets 10-second rate: 0, Flow bytes 10-second rate: 0 Active flows: 0, Total flows: 1598 Flows exported: 1598, Flows packets exported: 55 Flows inactive timed out: 1598, Flows active timed out: 0
Campo |
Explicación |
---|---|
Recuento de asignación |
Número de registros de flujo asignados. |
Recuento libre |
Número de registros de flujo liberados. |
Cantidad máxima asignada |
Número máximo de registros de flujo asignados desde el inicio de la estación de monitoreo. Este número representa el número máximo de registros de flujo asignados a la vez. |
Asignaciones por segundo |
El flujo registra la asignación por segundo durante el último intervalo de estadísticas en la PIC. |
Liberaciones por segundo |
El flujo registra los registros liberados por segundo durante el último intervalo de estadísticas en la PIC. |
Total de memoria utilizada |
Cantidad total de memoria utilizada actualmente (en bytes). |
Total libre de memoria |
Cantidad total de memoria libre actualmente (en bytes). |
user@host> show passive-monitoring memory all Passive monitoring interface: mo-4/0/0, Local interface index: 44 Memory utilization Allocation count: 1600, Free count: 1599, Maximum allocated: 1600 Allocations per second: 3200, Frees per second: 1438 Total memory used (in bytes): 103579176, Total memory free (in bytes): 163914184 Passive monitoring interface: mo-4/1/0, Local interface index: 45 Memory utilization Allocation count: 1602, Free count: 1601, Maximum allocated: 1602 Allocations per second: 3204, Frees per second: 1472 Total memory used (in bytes): 103579176, Total memory free (in bytes): 163914184 Passive monitoring interface: mo-4/2/0, Local interface index: 46 Memory utilization Allocation count: 1600, Free count: 1599, Maximum allocated: 1600 Allocations per second: 3200, Frees per second: 1440 Total memory used (in bytes): 103579176, Total memory free (in bytes): 163914184 Passive monitoring interface: mo-4/3/0, Local interface index: 47 Memory utilization Allocation count: 1599, Free count: 1598, Maximum allocated: 1599 Allocations per second: 3198, Frees per second: 1468 Total memory used (in bytes): 103579176, Total memory free (in bytes): 163914184
Campo |
Explicación |
---|---|
Estado de la interfaz |
Indica si la interfaz está supervisando (funciona correctamente), deshabilitada (deshabilitada administrativamente) o si no está supervisada (no está configurada). |
Índice de grupo |
Entero que representa el grupo de monitoreo del cual la PIC es miembro. (Esto no indica la cantidad de grupos de monitoreo.) |
Intervalo de exportación |
Intervalo de exportación configurado para registros de flujo, en segundos. |
Formato de exportación |
Formato de exportación configurado (actualmente solo se admite v5). |
Protocolo |
Protocolo que la PIC está configurada para supervisar (actualmente solo se admite IPv4). |
Tipo de motor |
Tipo de motor configurado que se inserta en los paquetes de flujo de salida. |
ID del motor |
ID de motor configurado que se inserta en los paquetes de flujo de salida. |
Recuento de registros de rutas |
Número de rutas registradas. |
Recuento de índices IFL a SNMP |
Número de interfaces lógicas asignadas a un índice SNMP. |
Recuento de AS |
Número de límites del AS que el flujo ha cruzado. |
Tiempo establecido |
Indica si la marca de hora está en su lugar. |
Conjunto de configuración |
Indica si la configuración de supervisión está establecida. |
Conjunto de récords de ruta |
Indica si se están registrando rutas. |
Conjunto de mapas SNMP IFL |
Indica si se asignan interfaces lógicas a un índice SNMP. |
user@host> show passive-monitoring status all Passive monitoring interface: mo-4/0/0, Local interface index: 44 Interface state: Monitoring Group index: 0 Export interval: 15 secs, Export format: cflowd v5 Protocol: IPv4, Engine type: 1, Engine ID: 1 Route record count: 13, IFL to SNMP index count: 30, AS count: 1 Time set: Yes, Configuration set: Yes Route record set: Yes, IFL SNMP map set: Yes Passive monitoring interface: mo-4/1/0, Local interface index: 45 Interface state: Monitoring Group index: 0 Export interval: 15 secs, Export format: cflowd v5 Protocol: IPv4, Engine type: 1, Engine ID: 2 Route record count: 13, IFL to SNMP index count: 30, AS count: 1 Time set: Yes, Configuration set: Yes Route record set: Yes, IFL SNMP map set: Yes Passive monitoring interface: mo-4/2/0, Local interface index: 46 Interface state: Monitoring Group index: 0 Export interval: 15 secs, Export format: cflowd v5 Protocol: IPv4, Engine type: 1, Engine ID: 3 Route record count: 13, IFL to SNMP index count: 30, AS count: 1 Time set: Yes, Configuration set: Yes Route record set: Yes, IFL SNMP map set: Yes Passive monitoring interface: mo-4/3/0, Local interface index: 47 Interface state: Monitoring Group index: 0 Export interval: 15 secs, Export format: cflowd v5 Protocol: IPv4, Engine type: 1, Engine ID: 4 Route record count: 13, IFL to SNMP index count: 30, AS count: 1 Time set: Yes, Configuration set: Yes Route record set: Yes, IFL SNMP map set: Yes
Campo |
Explicación |
---|---|
Uptime |
Tiempo, en milisegundos, de que la PIC ha estado operativa. |
Tiempo de interrupción |
Tiempo acumulado que la PIC pasó en el procesamiento de paquetes desde el último restablecimiento de PIC. |
Carga (5 segundos) |
La carga de CPU en la PIC se promedía en 5 segundos. El número es un porcentaje que se obtiene dividiendo el tiempo dedicado a las tareas activas entre el tiempo total transcurrido. |
Carga (1 minuto) |
La carga de CPU en la PIC promedía más de 1 minuto. El número es un porcentaje que se obtiene dividiendo el tiempo dedicado a las tareas activas entre el tiempo total transcurrido. |
user@host> show passive-monitoring usage * Passive monitoring interface: mo-4/0/0, Local interface index: 44 CPU utilization Uptime: 653155 milliseconds, Interrupt time: 40213754 microseconds Load (5 second): 20%, Load (1 minute): 17% Passive monitoring interface: mo-4/1/0, Local interface index: 45 CPU utilization Uptime: 652292 milliseconds, Interrupt time: 40223178 microseconds Load (5 second): 22%, Load (1 minute): 15% Passive monitoring interface: mo-4/2/0, Local interface index: 46 CPU utilization Uptime: 649491 milliseconds, Interrupt time: 40173645 microseconds Load (5 second): 22%, Load (1 minute): 10098862% Passive monitoring interface: mo-4/3/0, Local interface index: 47 CPU utilization Uptime: 657328 milliseconds, Interrupt time: 40368704 microseconds Load (5 second): 1%, Load (1 minute): 15%