Introducción
Este documento describe cómo configurar la utilidad de seguimiento de paquetes Cisco Nexus 9000.
Prerequisites
Requirements
Cisco recomienda tener conocimientos básicos sobre estos temas:
- Arquitectura de hardware de Cisco Nexus 9000
Componentes Utilizados
La información que contiene este documento se basa en las siguientes versiones de software y hardware.
- Cisco Nexus 9500
- Versión de software 7.0(3)I2(2a)
La información que contiene este documento se creó a partir de los dispositivos en un ambiente de laboratorio específico. Todos los dispositivos que se utilizan en este documento se pusieron en funcionamiento con una configuración verificada (predeterminada). Si tiene una red en vivo, asegúrese de entender el posible impacto de cualquier comando.
Antecedentes
Packet-tracer es una utilidad incorporada en el Nexus 9000 que se puede utilizar para rastrear la trayectoria del paquete a través del switch. Se puede invocar mediante la línea de comandos y se puede configurar para que coincida con la dirección IP o los atributos de la capa 4. No se puede utilizar para hacer coincidir el tráfico ARP.
Esta herramienta proporciona confirmación sobre si un flujo está atravesando el switch. También proporciona un contador para realizar el seguimiento de las estadísticas de flujo que puede ser útil para escenarios de pérdida intermitente/completa de paquetes.
Escenarios de casos prácticos
- Aplicable solo para flujos IPv4 (no se admite IPv6 ni IP)
- Esta herramienta no muestra los detalles internos del paquete tal como los muestra wireshark.
- Pérdida intermitente de paquetes: el ping o cualquier otra utilidad puede proporcionar un síntoma definitivo de la pérdida de paquetes
- Pérdida total de paquetes
Hardware compatible
Solo se admiten tarjetas de línea/módulos de fabric o TOR con asic Broadcom Trident II. La lista es la siguiente:
- N9K-C9372TX
- N9K-C9372PX
- N9K-C9332PQ
- N9K-C9396TX
- N9K-C9396PX
- N9K-C93128TX
- N9K-C9336PQ
- N9K-X9564PX
- N9K-X9564TX
- N9K-X9636PQ
Hardware no Soportado
- N9K-C93180YC-EX
- N9K-X9732C-EX
- N9K-C923C
- N9k-C9272Q
- N9k-C92160YC
Nota: Comuníquese con el TAC si no aparece una tarjeta de línea/TOR específica
Cómo utilizar Packet Tracer
Configuración
Los comandos Packet-Tracer son comandos de nivel EXEC.
N9K-9508#test packet-tracer src_ip <src_ip> dst_ip <dst_ip> <==== provide your src and dst ip
N9K-9508#test packet-tracer start <==== Start packet tracer
N9K-9508#test packet-tracer stop <==== Stop packet tracer
N9K-9508#test packet-tracer show <==== Check for packet matches
Los comandos anteriores programan el disparador en cada Broadcom Trident II Asic que existe en la tarjeta de línea o en los módulos de fabric. Cuando un flujo con los atributos coincidentes pasa a través de estos módulos, muestra los contadores que están siendo alcanzados, lo que ayuda a identificar la trayectoria dentro del switch (Módulo de ingreso—>Uno de los módulos de entramado---->Módulo de egreso).
Los contadores se pueden utilizar para correlacionar caídas.
Antecedentes
Los módulos de fabric interconectan las ranuras de los módulos de E/S. Todos los módulos de fabric están activos y transportan tráfico. Dos instancias de Broadcom Trident II ASIC (T2) por módulo de fabric.
Problema
PACL (lista de acceso a puertos) se utiliza para ver si una interfaz física en particular recibió nuestro tráfico interesado. Sin embargo, en la plataforma Nexus, algunas de las tarjetas de línea no tienen TCAM tallado para PACL. El tallado TCAM requiere recarga del módulo. En esos casos, utilice el rastreador de paquetes para hacer coincidir el tráfico interesado. También puede rastrear el paquete que asciende a los puertos de fabric y va hacia el módulo de salida. Por lo tanto, packet tracer le ofrece más información sobre cómo se reenvía el tráfico dentro del switch.
Packet Tracer utiliza entradas TCAM talladas para SPAN.
Solución
NS - ASIC de estrella del norte
T2 - ASIC Trident II
NFE - Motor de reenvío de red
ALE - Motor de hoja de ACI
Para obtener más información sobre la arquitectura de switches Nexus 9000, consulte este informe técnico.
Nota: hay hasta seis módulos de fabric en un chasis 9500. Mostrando solo un fabric en la imagen anterior para hacerlo más sencillo. El tráfico de los módulos puede afectar a cualquier módulo de fabric.
CASO PRÁCTICO: coincidencia del tráfico en el módulo de entrada, el tráfico que entra en un módulo de fabric y el tráfico que entra en T2 ASIC en el módulo de salida
Estos son los pasos básicos que se deben configurar para que coincidan con nuestro tráfico interesado:
switch#test packet-tracer {<src-ip>|<dst-ip>|<src-l4-port>|<dst-l4-port>} [<protocol>] [detail-fp|detail-hg]
Esta es la configuración que necesita:
switch#test packet-tracer src_ip <src_ip> dst_ip <dst_ip> protocol <> <==== provide your src and dst ip and protocol (protocol option 1 is for icmp)
switch#test packet-tracer start <==== Start packet tracer
switch#test packet-tracer show <==== Check for packet match statistics
No es necesario aplicarlo a ninguna interfaz en particular. Estas configuraciones instalan ACL de filtro en todas las LC/FM en todas las instancias de T2 ASIC.
Muestra el conteo de paquetes en el módulo en el que ingresó el tráfico. Esto coincide con nuestro tráfico interesado que entra en un módulo, tanto la tarjeta de línea como el fabric.
Este es un ejemplo de configuración:
N9K-9508# test packet-tracer src-ip 10.1.1.1 dst-ip 10.2.2.1 protocol 1 <=== Protocol 1 matches ICMP traffic
N9K-9508# test packet-tracer start
A continuación se muestra cómo interpretar la salida 'test packet-tracer show":
N9K-9508# test packet-tracer show
Packet-tracer stats
---------------------
Module 1: <=== Slot #. Same output will be displayed for other Linecards's and Fabric modules.
Filter 1 installed: src-ip 10.1.1.1 dst-ip 10.2.2.1 <==== Our filter #1
ASIC instance 0: <==== Trident ASIC instance #0
Entry 0: id = 7425, count = 0, active, fp, <==== pakcet match count on front panel port. it could be any port
Entry 1: id = 7426, count = 0, active, hg, <==== packet match count from fabric module to T2 ASIC on the linecard
ASIC instance 1:
Entry 0: id = 7425, count = 0, active, fp,
Entry 1: id = 7426, count = 0, active, hg,
Filter 2 uninstalled:
Filter 3 uninstalled:
Filter 4 uninstalled:
Filter 5 uninstalled:
Ejemplo de configuración:
Configurar Packet Tracer:
N9K-9508# test packet-tracer src-ip 10.1.1.1 dst-ip 10.2.2.1 protocol 1 <==== Filter to match echo traffic. Protocol 1 to match icmp traffic
N9K-9508# test packet-tracer src-ip 10.2.2.1 dst-ip 10.1.1.1 protocol 1 <=== Filter to match echo reply traffic
N9K-9508# test packet-tracer start <==== Start packet tracer
N9K-9508# test packet-tracer show non-zero <==== Command to see packet statistics
Packet-tracer stats
---------------------
Module 1:
Filter 1 installed: src-ip 10.1.1.1 dst-ip 10.2.2.1
Filter 2 installed: src-ip 10.2.2.1 dst-ip 10.1.1.1
Filter 3 uninstalled:
Filter 4 uninstalled:
Filter 5 uninstalled:
Module 2:
Filter 1 installed: src-ip 10.1.1.1 dst-ip 10.2.2.1
Filter 2 installed: src-ip 10.2.2.1 dst-ip 10.1.1.1
Filter 3 uninstalled:
Filter 4 uninstalled:
Filter 5 uninstalled:
Module 22:
Filter 1 installed: src-ip 10.1.1.1 dst-ip 10.2.2.1
Filter 2 installed: src-ip 10.2.2.1 dst-ip 10.1.1.1
Filter 3 uninstalled:
Filter 4 uninstalled:
Filter 5 uninstalled:
Module 23:
Filter 1 installed: src-ip 10.1.1.1 dst-ip 10.2.2.1
Filter 2 installed: src-ip 10.2.2.1 dst-ip 10.1.1.1
Filter 3 uninstalled:
Filter 4 uninstalled:
Filter 5 uninstalled:
Module 24:
Filter 1 installed: src-ip 10.1.1.1 dst-ip 10.2.2.1
Filter 2 installed: src-ip 10.2.2.1 dst-ip 10.1.1.1
Filter 3 uninstalled:
Filter 4 uninstalled:
Filter 5 uninstalled:
Module 25:
Filter 1 installed: src-ip 10.1.1.1 dst-ip 10.2.2.1
Filter 2 installed: src-ip 10.2.2.1 dst-ip 10.1.1.1
Filter 3 uninstalled:
Filter 4 uninstalled:
Filter 5 uninstalled:
Prueba: Ejecute ping desde SRC IP Connected Off del Módulo 1 a un DST IP Connected Off del Módulo 2:
Router# ping 10.1.1.1 source 10.2.2.1
PING 10.1.1.1 (10.1.1.1) from 10.2.2.1: 56 data bytes
64 bytes from 10.1.1.1: icmp_seq=0 ttl=253 time=0.77 ms
64 bytes from 10.1.1.1: icmp_seq=1 ttl=253 time=0.43 ms
64 bytes from 10.1.1.1: icmp_seq=2 ttl=253 time=0.408 ms
64 bytes from 10.1.1.1: icmp_seq=3 ttl=253 time=0.398 ms
64 bytes from 10.1.1.1: icmp_seq=4 ttl=253 time=0.383 ms
--- 10.1.1.1 ping statistics ---
5 packets transmitted, 5 packets received, 0.00% packet loss
round-trip min/avg/max = 0.383/0.477/0.77 ms
Verificar: Verificar conteo de trazador de paquetes:
N9K-9508# test packet-tracer show non-zero <==== Command to see packet statistics
Packet-tracer stats
---------------------
Module 1:
Filter 1 installed: src-ip 10.1.1.1 dst-ip 10.2.2.1 protocol 1
ASIC instance 0:
Entry 0: id = 7425, count = 5, active, fp, <===== 5 Echo packets ingress on Module 1
Filter 2 installed: src-ip 10.2.2.1 dst-ip 10.1.1.1 protocol 1
Filter 3 uninstalled:
Filter 4 uninstalled:
Filter 5 uninstalled:
Module 2:
Filter 1 installed: src-ip 10.1.1.1 dst-ip 10.2.2.1 protocol 1
Filter 2 installed: src-ip 10.2.2.1 dst-ip 10.1.1.1 protocol 1
ASIC instance 0:
Entry 0: id = 7457, count = 5, active, fp, <===== 5 Echo reply packets ingress on Module 2
Filter 3 uninstalled:
Filter 4 uninstalled:
Filter 5 uninstalled:
Module 3:
Filter 1 installed: src-ip 10.1.1.1 dst-ip 10.2.2.1 protocol 1
Filter 2 installed: src-ip 10.2.2.1 dst-ip 10.1.1.1 protocol 1
Filter 3 uninstalled:
Filter 4 uninstalled:
Filter 5 uninstalled:
Module 4:
Filter 1 installed: src-ip 10.1.1.1 dst-ip 10.2.2.1 protocol 1
Filter 2 installed: src-ip 10.2.2.1 dst-ip 10.1.1.1 protocol 1
Filter 3 uninstalled:
Filter 4 uninstalled:
Filter 5 uninstalled:
Module 22:
Filter 1 installed: src-ip 10.1.1.1 dst-ip 10.2.2.1 protocol 1
ASIC instance 0:
Entry 0: id = 7425, count = 4, active, hg, <==== Fabric module 22 received 4 echo packets
Filter 2 installed: src-ip 10.2.2.1 dst-ip 10.1.1.1 protocol 1
Filter 3 uninstalled:
Filter 4 uninstalled:
Filter 5 uninstalled:
Module 23:
Filter 1 installed: src-ip 10.1.1.1 dst-ip 10.2.2.1 protocol 1
ASIC instance 0:
Entry 0: id = 7425, count = 1, active, hg, <==== Fabric module 23 received 1 echo packets
Filter 2 installed: src-ip 10.2.2.1 dst-ip 10.1.1.1 protocol 1
ASIC instance 0:
Entry 0: id = 7425, count = 3, active, hg, <==== Fabric module 23 received 3 echo reply packets
Filter 3 uninstalled:
Filter 4 uninstalled:
Filter 5 uninstalled:
Module 24:
Filter 1 installed: src-ip 10.1.1.1 dst-ip 10.2.2.1 protocol 1
Filter 2 installed: src-ip 10.2.2.1 dst-ip 10.1.1.1 protocol 1
ASIC instance 0:
Entry 0: id = 7425, count = 2, active, hg, <==== Fabric module 23 received 2 echo reply packets
Filter 3 uninstalled:
Filter 4 uninstalled:
Filter 5 uninstalled:
Module 26:
Filter 1 installed: src-ip 10.1.1.1 dst-ip 10.2.2.1 protocol 1
Filter 2 installed: src-ip 10.2.2.1 dst-ip 10.1.1.1 protocol 1
Filter 3 uninstalled:
Filter 4 uninstalled:
Filter 5 uninstalled:
N9K-9508#
Otros comandos de utilidad:
test packet-tracer remove-all <=== Elimina todos los filtros configurados
test packet-tracer clear <filter #> <=== Clear counters for all filters or specified filter
test packet-tracer src_ip <.> dst_ip <> l4-dst-port <dst_port> | l4-src-port <src_port> | protocol <=== Coincide según L4 src_port, L4 dst_port o protocol.