Introduction
Packet-tracer é um utilitário incorporado no Nexus 9000 que pode ser usado para rastrear o caminho do pacote através do switch. Ele pode ser invocado usando a linha de comando e pode ser configurado para corresponder ao endereço IP e/ou aos atributos da camada 4. Ele não pode ser usado para corresponder ao tráfego ARP.
Essa ferramenta fornecerá confirmação de que um fluxo está atravessando o switch. Ele também fornece um contador para rastrear estatísticas de fluxo que podem ser úteis para cenários de perda intermitente/completa de pacotes.
Prerequisites
Requirements
A Cisco recomenda que você tenha conhecimento básico sobre estes tópicos:
- Arquitetura de hardware do Cisco Nexus 9000
Componentes Utilizados
As informações neste documento são baseadas nestas versões de software e hardware:
- Cisco Nexus 9500
- SW Versão 7.0(3)I2(2a)
Cenários de caso de uso
- Aplicável somente para fluxos IPv4 (não há suporte para IPv6 e não IP)
- Essa ferramenta não exibe os detalhes internos do pacote, como mostrado pelo wireshark.
- Perda intermitente de pacotes: O ping ou qualquer outro utilitário pode fornecer um sintoma definido de pacotes perdidos
- Perda completa de pacotes
Hardware suportado
Somente placas de linha/módulos de estrutura ou TORs com ASics Broadcom Trident II são suportados. A lista está abaixo:
- N9K-C9372TX
- N9K-C9372PX
- N9K-C933PQ
- N9K-C9396TX
- N9K-C9396PX
- N9K-C93128TX
- N9K-C933PQ
- N9K-X9564PX
- N9K-X9564TX
- N9K-X9636PQ
Hardware não suportado
- N9K-C93180YC-EX
- N9K-X9732C-EX
- N9K-C9232C
- N9k-C9272Q
- N9k-C92160YC
Note: Entre em contato com o TAC se uma placa de linha/TOR específica não estiver listada
Como usar o Packet Tracer
Configuração
Os comandos do Packet Tracer são de nível 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 <==== Start packet tracer
N9K-9508#test packet-tracer show <==== Check for packet matches
Os comandos acima programam o gatilho em cada placa de linha ou módulos de estrutura Trident II Broadcom existente na placa de linha. Quando um fluxo com os atributos correspondentes passa por esses módulos, ele mostra os contadores sendo atingidos, ajudando assim a identificar o caminho dentro do switch (módulo de entrada—>Um do módulo de estrutura—>módulo de saída).
Os contadores podem ser usados para correlacionar quedas.
Informações de Apoio
Os módulos de estrutura interconectam slots de módulo de E/S. Todos os módulos de estrutura estão ativos e transportam tráfego. Duas instâncias de ASIC Trident II (T2) Broadcom por módulo de estrutura.
Problema
A PACL (Port Access-list, lista de acesso à porta) é usada para ver se uma interface física específica recebeu nosso tráfego interessado. No entanto, na plataforma Nexus, algumas das placas de linha não têm TCAM gravado para PACL. A gravação de TCAM requer recarga do módulo. Nesses casos, use o packet tracer para corresponder ao tráfego interessado. Você também pode rastrear o pacote indo até as portas de estrutura e indo para o módulo de saída. O packet tracer fornece mais informações sobre como o tráfego está sendo encaminhado dentro do switch.
O Packet Tracer usa entradas TCAM gravadas para SPAN.
Solução
NS - North Star ASIC
T2 - Trident II ASIC
NFE - Network Forwarding Engine
ALE - ACI Leaf Engine
Para obter mais informações sobre a arquitetura do switch Nexus 9000, consulte:
http://www.cisco.com/c/en/us/products/collateral/switches/nexus-9000-series-switches/white-paper-c11-729987.html

Note:
Há até seis módulos de estrutura em um chassi 9500. Mostrar apenas uma malha acima da imagem para torná-la simples. O tráfego dos módulos pode atingir qualquer módulo de estrutura
CASO DE USO: combine o tráfego no módulo de entrada, a entrada de tráfego em um módulo de estrutura e o tráfego que ingressa no módulo de saída T2
Aqui estão as etapas básicas que precisam ser configuradas para corresponder ao nosso tráfego interessado:
switch#test packet-tracer {<src-ip>|<dst-ip>|<src-l4-port>|<dst-l4-port>} [<protocol>] [detail-fp|detail-hg]
Esta é a configuração necessária:
switch#test packet-tracer src_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
Você não precisa aplicá-lo a nenhuma interface específica. Acima da configuração, a ACL de filtragem é instalada em todos os LCs/FMs em todas as instâncias do ASIC T2.
Ele mostrará a contagem de pacotes no módulo no qual o tráfego entrou. Isso corresponde ao nosso tráfego de ingresso em um módulo , tanto na placa de linha quanto na estrutura.
Aqui está um exemplo de configuração:
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
Veja como interpretar a saída '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:
Exemplo de configuração:
Configurar o 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:
Teste: Execute o ping do IP SRC conectado do Módulo 1 a um IP DST conectado do 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
Verifique: Verificar a contagem do 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 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#
Outros comandos úteis:
test packet-tracer remove-all <=== remove todos os filtros configurados
test packet-tracer clear <filter #> <==== Limpar contadores para todos os filtros ou filtro especificado
test packet-tracer src_ip <.> dst_ip <> l4-dst-port <dst_port> | l4-src-port <src_port> | protocol <==== Corresponde com base em L4 src_port, L4 dst_port ou protocol.