Contents

Introdução

Pré-requisitos

Requisitos

Componentes Utilizados

Topologia

Background

Verificar Regravação de MAC

Verificar o MAC do próximo salto

Verificar tabela de roteamento

Verificar a decisão de encaminhamento do Nexus (regravação de MAC)

Verificar o próximo MAC de origem

Verificação final

Introdução

Este documento descreve como verificar a regravação do Nexus MAC em switches baseados em Tahoe.

Pré-requisitos

Requisitos

A Cisco recomenda que você tenha conhecimento destes tópicos:

- Plataforma NXOS

- Roteamento

- ELAM

Componentes Utilizados

Nome

Plataforma

Versão

N9K1

N9K-C93108TC-EX

9.3(10)

N9K2

N9K-C93108TC-EX

9.3(10)

N9K3

N9K-C93108TC-EX

9.3(10)

As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.

Topologia

Background

No processo de roteamento IP, à medida que os pacotes atravessam a rede da origem para o destino, os endereços mac origem e destino são atualizados a cada salto, enquanto os endereços IP origem e destino permanecem inalterados. Quando um pacote chega a um roteador, o roteador examina o endereço IP de destino para determinar o próximo salto no caminho para seu destino final. Em seguida, o roteador encaminha o pacote para o próximo salto, trocando o endereço mac de destino pelo endereço mac da interface de próximos saltos e atualizando o endereço mac de origem para seu próprio endereço mac de interfaces de saída.

Essa permuta garante que o pacote possa ser entregue corretamente ao próximo roteador ou ao destino final na rede local. Enquanto isso, os endereços IP origem e destino permanecem constantes durante toda a jornada, pois são usados para manter o caminho fim-a-fim e garantir que o pacote atinja o destino correto através de vários segmentos de rede potenciais.

Verificar Regravação de MAC

Para verificar se a regravação de mac é feita corretamente nos switches baseados em Tahoe do Nexus 9K, dois componentes precisam ser verificados, o endereço mac do próximo salto e a decisão de encaminhamento do Nexus.

Para este exemplo, o Nexus está recebendo o pacote com os macs de origem e destino mostrados, esses macs devem ser reescritos para chegar ao destino:

N9K2# debug platform  internal  tah  elam

N9K2(TAH-elam)# trigger init

Slot 1: param values: start asic 0, start slice 0, lu-a2d 1, in-select 6, out-select 0

N9K2(TAH-elam-insel6)# set outer ipv4 dst_ip 172.16.1.2

N9K2(TAH-elam-insel6)# start

N9K2(TAH-elam-insel6)# report

SUGARBOWL ELAM REPORT SUMMARY

slot - 1, asic - 0, slice - 0

============================

Incoming Interface: Eth1/1

Src Idx : 0x1, Src BD : 4100

Outgoing Interface Info: dmod 1, dpid 17

Dst Idx : 0x5, Dst BD : 4101

Packet Type: IPv4

Dst mac address: 70:0F:6A:95:1C:F9

Src mac address: 70:0F:6A:5E:6A:3F

Dst IPv4 address: 172.16.1.2

Src IPv4 address: 172.16.1.1

Ver     =  4, DSCP    =    0, Don't Fragment = 0

Proto   =  1, TTL     =  255, More Fragments = 0

Hdr len = 20, Pkt len =   84, Checksum       = 0x9ebb

L4 Protocol  : 1

ICMP type    : 8

ICMP code    : 0

Verificar o MAC do próximo salto

Neste documento, para verificar o endereço MAC do próximo salto , as tabelas de roteamento e ARP podem ser verificadas.

Para este exemplo, em N9K2 será examinado como ele regrava o endereço mac para o destino 172.16.1.2.

Verificar tabela de roteamento

N9K2# show ip route 172.16.1.2

<Snipped>

172.16.1.2/32, ubest/mbest: 1/0

*via 192.168.1.2, [1/0], 00:09:30, static

A rota para o próximo salto precisa ser verificada até que uma interface física seja encontrada como interface de saída.

N9K2# show ip route 192.168.1.2

<Snipped>

192.168.1.2/32, ubest/mbest: 1/0, attached

*via 192.168.1.2, Eth1/2, [250/0], 00:12:23, am

Depois que uma rota anexada é observada e aprendida pelo Adjacency Manager (am), você pode continuar verificando a entrada ARP para o próximo salto

N9K2# show ip arp 192.168.1.2

<Snipped>

IP ARP Table

Total number of entries: 1

Address         Age       mac Address     Interface       Flags

192.168.1.2     00:14:56  700f.6a5e.6d5b  Ethernet1/2

700f.6a5e.6d5b é o mac que o Nexus deve usar como Destination mac para a reescrita de roteamento.

Verificar a decisão de encaminhamento do Nexus (regravação de MAC)

Para verificar a decisão de encaminhamento do Nexus, é necessário realizar uma captura de ELAM. Especificamente, o relatório detalhado é usado na seção RW.

N9K2# debug platform internal tah elam

N9K2(TAH-elam)# trigger init

Slot 1: param values: start asic 0, start slice 0, lu-a2d 1, in-select 6, out-select 0

N9K2(TAH-elam-insel6)# set outer ipv4 dst_ip 172.16.1.2

N9K2(TAH-elam-insel6)# start

Um ping em direção ao destino precisa ser executado

N9K1# ping 172.16.1.2  source 172.16.1.1

PING 172.16.1.2 (172.16.1.2) from 172.16.1.1: 56 data bytes

64 bytes from 172.16.1.2: icmp_seq=0 ttl=253 time=0.906 ms

64 bytes from 172.16.1.2: icmp_seq=1 ttl=253 time=0.599 ms

64 bytes from 172.16.1.2: icmp_seq=2 ttl=253 time=0.589 ms

64 bytes from 172.16.1.2: icmp_seq=3 ttl=253 time=0.556 ms

64 bytes from 172.16.1.2: icmp_seq=4 ttl=253 time=0.55 ms

--- 172.16.1.2 ping statistics ---

5 packets transmitted, 5 packets received, 0.00% packet loss

round-trip min/avg/max = 0.55/0.64/0.906 ms

Uma vez que o pacote atingiu N9K2, o Nexus deve fazer uma consulta (lu) na tabela de adjacências Tah L3 para reunir o mac de destino, o Nexus deve colocar esse mac na reescrita (rw).

N9K2(TAH-elam-insel6)# report detail | i i lurw_vec.dst_addr

GBL_C++:  [MSG]   sug_lurw_vec.dst_addr: 0x700F6A5E6D5B

O Nexus está determinando o uso do mac 700F6A5E6D5B como o endereço mac de destino para a reescrita do pacote, com essas informações, pode-se confirmar que o Nexus está executando a reescrita correta, pois corresponde ao endereço mac de destino tomado de saídas anteriores (70:0f:6a:5e:6d:5b).

Verificar o próximo MAC de origem

Para o endereço mac de origem do pacote, o Nexus deve usar o endereço mac da interface de saída que está sendo usada para acessar 172.16.1.2. Neste exemplo, o Nexus usará o endereço mac da interface ethernet 1/2.

N9K2# show interface ethernet 1/2 mac-address

--------------------------------------------------------------------------------

Interface                  mac-Address     Burn-in mac-Address

--------------------------------------------------------------------------------

Ethernet1/2                700f.6a95.1cf9  700f.6a95.1cfb

Verificação final

A verificação pode ser feita no dispositivo do próximo salto, por exemplo, um ELAM pode ser executado em N9K3

Para este exemplo com saídas anteriores, espera-se que o Nexus use:

Origem mac: 700f.6a95.1cf9

MAC de destino: 70:0f:6a:5e:6d:5b

N9K3# debug platform internal  tah elam

N9K3(TAH-elam)# trigger init

Slot 1: param values: start asic 0, start slice 0, lu-a2d 1, in-select 6, out-select 0

N9K3(TAH-elam-insel6)# set outer ipv4 dst_ip 172.16.1.2

N9K3(TAH-elam-insel6)# start

N9K3(TAH-elam-insel6)# report

SUGARBOWL ELAM REPORT SUMMARY

slot - 1, asic - 0, slice - 0

============================

Incoming Interface: Eth1/1

Src Idx : 0x5, Src BD : 4101

Outgoing Interface Info: dmod 0, dpid 0

Dst Idx : 0x5bf, Dst BD : 4101

Packet Type: IPv4

Dst mac address: 70:0F:6A:5E:6D:5B

Src mac address: 70:0F:6A:95:1C:F9

Sup hit: 1,  Sup Idx: 2788

Dst IPv4 address: 172.16.1.2

Src IPv4 address: 172.16.1.1

Ver     =  4, DSCP    =    0, Don't Fragment = 0

Proto   =  1, TTL     =  254, More Fragments = 0

Hdr len = 20, Pkt len =   84, Checksum       = 0x9fc0