Contenido

Introducción

Antecedentes

Requisito Previo

Topología

Cómo solucionar problemas

Configuración

Verificación

Otras plataformas

Enlaces útiles

Introducción

Este documento describe cómo resolver problemas cuando hay mac move en Nexus 9000 y cómo evitarlo.

Antecedentes

2018 Nov 14 15:53:26.943 N9K %-SLOT1-5-BCM_L2_LEARN_DISABLE: MAC Learning Disabled unit=0

2018 Nov 14 15:53:27.769 N9K %-SLOT1-5-BCM_L2_LEARN_ENABLE: MAC Learning Enabled unit=0

Usted entiende el concepto de aprendizaje de MAC y cómo se mantiene una tabla en un switch, cuando el switch recibe una trama, y asocia la dirección MAC del remitente con el puerto LAN donde se recibió. En una condición de loop, puede ocurrir que el mismo MAC se detecte a través de dos puertos diferentes en el switch.

Requisito Previo

Comprender el concepto de mac-learning en la configuración del switch y NX-OS

Solución de problemas de switching de capa 2

Topología

+-----------+ Po6      +------------+

|   N9K_1   +----------+   N9K_2    |

|           +----------+            |

+-----------+          +--+---------+

1/3 |               | 2/1

|               |

|               |

+-+---------------+--+

|       Server       |

+--------------------+

0000.117d.e02e

Cómo solucionar problemas

Cuando BCM ASIC aprende demasiadas direcciones MAC en una corta duración, BCM_USD puede inhabilitar/habilitar el aprendizaje de MAC en el hardware y puede ver este mensaje que aparece. Podría ser causado si hay demasiados mac-move/flaps/loops o los nuevos mac learn/move exceden un cierto umbral. De forma predeterminada, en Nexus9K, no puede ver los registros, lo que le indica específicamente que el switch experimenta movimientos mac. Sin embargo, en caso de que estos movimientos sean altos, terminas viendo estos registros.

2018 Nov 14 15:53:26.943 N9K %-SLOT1-5-BCM_L2_LEARN_DISABLE: MAC Learning Disabled unit=0

2018 Nov 14 15:53:27.769 N9K %-SLOT1-5-BCM_L2_LEARN_ENABLE: MAC Learning Enabled unit=0

2018 Nov 14 15:53:27.863 N9K %-SLOT1-5-BCM_L2_LEARN_DISABLE: MAC Learning Disabled unit=0

2018 Nov 14 15:53:28.770 N9K %-SLOT1-5-BCM_L2_LEARN_ENABLE: MAC Learning Enabled unit=0

Estos mensajes son indicativos de un evento en la tabla mac. Cuando tiene movimientos mac continuos en el entorno, estos mensajes se pueden ver. Básicamente, el switch recibió tramas con la misma fuente MAC en dos o más interfaces a una velocidad muy alta. El switch tiene un mecanismo para contar el número de "devoluciones de movimiento" MAC y ponderarlas en función del número de veces que se mueve la dirección MAC. El switch desactiva el aprendizaje dinámico de MAC para proteger el plano de control.

En este punto, puede comprobar el recuento de mac-move para comprender, si y cuántos mac-move se han experimentado en el dispositivo,

N9K# sh mac address-table  notification mac-move

MAC Move Notify Triggers: 1

Number of MAC Addresses added: 612336

Number of MAC Addresses moved: 612328

Number of MAC Addresses removed: 0

El resultado de "Número de direcciones MAC movidas" sugiere que el switch experimenta movimientos mac.

Configuración

Lo siguiente obvio es averiguar la dirección MAC que causa este problema, y las vlan, y la información de la interfaz donde se experimenta esto. Para buscar esta información, debe aumentar el nivel de registro de L2FM desde el valor predeterminado de 2 hasta 5 en la plataforma N9K.

N9K# sho logging level l2fm

Facility        Default Severity        Current Session Severity

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

l2fm                    2                       2

0(emergencies)          1(alerts)       2(critical)

3(errors)               4(warnings)     5(notifications)

6(information)          7(debugging)

N9K# conf t

Enter configuration commands, one per line. End with CNTL/Z.

N9K(config)# logging level l2fm 5

N9K(config)# end

N9K# sho logging level l2fm

Facility        Default Severity        Current Session Severity

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

l2fm                    2                       5

0(emergencies)          1(alerts)       2(critical)

3(errors)               4(warnings)     5(notifications)

6(information)          7(debugging)

Any mac moves at this point can be seen in the syslogs:

2018 Nov 14 16:04:23.881 N9K %L2FM-4-L2FM_MAC_MOVE2: Mac 0000.117d.e02e in vlan 741 has moved between Po6 to Eth1/3

2018 Nov 14 16:04:23.883 N9K %L2FM-4-L2FM_MAC_MOVE2: Mac 0000.117d.e02e in vlan 741 has moved between Po6 to Eth1/3

En tal caso, puede detectar y limitar el número de veces que una dirección MAC se mueve de un puerto a otro.

Hasta la versión 6.0(2)U3(1) de Cisco NX-OS, cuando se detectó un bucle entre dos puertos, el aprendizaje de MAC estaba desactivado durante 180 segundos.

Sin embargo, a partir de 7.0(3)I7(3), ahora puede configurar el switch para que baje el puerto con el índice de interfaz inferior, cuando se detecta un loop de este tipo cuando utiliza el comando "mac address-table loop-detect port-down".

N9K# conf t

Enter configuration commands, one per line. End with CNTL/Z.

N9K(config)# mac address-table loop-detect port-down

N9K(config)# exit

N9K#

Ahora, una vez que se ha habilitado este comando, la detección de loop adicional detiene la interfaz con un índice de interfaz inferior.

2018 Nov 13 19:33:54.773 N9K %ETHPORT-5-IF_DOWN_NONE: Interface port-channel6 is down (None)

2018 Nov 13 19:33:59.046 N9K %ETH_PORT_CHANNEL-5-PORT_DOWN: port-channel6: Ethernet2/1 is down

2018 Nov 13 19:33:59.049 N9K %ETH_PORT_CHANNEL-5-PORT_DOWN: port-channel6: Ethernet2/2 is down

2018 Nov 13 19:33:59.166 N9K %ETH_PORT_CHANNEL-5-FOP_CHANGED: port-channel6: first operational port changed from Ethernet2/1 to none

2018 Nov 13 19:33:59.235 N9K %ETHPORT-5-IF_DOWN_ERROR_DISABLED: Interface port-channel6 is down (Error disabled. Reason:error)

2018 Nov 13 19:33:59.244 N9K %ETHPORT-5-IF_DOWN_CFG_CHANGE: Interface Ethernet2/2 is down(Config change)

2018 Nov 13 19:33:59.252 N9K %ETHPORT-5-IF_DOWN_CFG_CHANGE: Interface Ethernet2/1 is down(Config change)

2018 Nov 13 19:34:05.269 N9K %ETHPORT-5-IF_DOWN_CHANNEL_ERR_DISABLED: Interface Ethernet2/2 is down (Channel error disabled)

2018 Nov 13 19:34:05.303 N9K last message repeated 1 time

2018 Nov 13 19:34:05.303 N9K %ETHPORT-5-IF_DOWN_CHANNEL_ERR_DISABLED: Interface Ethernet2/1 is down (Channel error disabled)

Verificación

Utilice este comando para verificar la acción configurada actualmente.

N9K# show mac address-table loop-detect

Port Down Action Mac Loop Detect : disabled

Puede confirmar el índice de la interfaz para verificar si se ha deshabilitado la interfaz correcta, según la función.

N9K# show system internal l2fm l2dbg macdb address 0000.117d.e02e vlan 741

Legend

------

Db:  0-MACDB, 1-GWMACDB, 2-SMACDB, 3-RMDB,    4-SECMACDB  5-STAGEDB

Src: 0-UNKNOWN, 1-L2FM, 2-PEER, 3-LC, 4-HSRP

5-GLBP, 6-VRRP, 7-STP, 8-DOTX, 9-PSEC 10-CLI 11-PVLAN

12-ETHPM, 13-ALW_LRN, 14-Non_PI_MOD, 15-MCT_DOWN, 16 - SDB

17-OTV, 18-Deounce Timer, 19-AM, 20-PCM_DOWN, 21 - MCT_UP

22-VxLAN, 23-L2RIB 24-CTRL, 25-UFDM

Slot:0 based for LCS 31-MCEC 20-OTV/ORIB

VLAN: 741 MAC: 0000.117d.e02e

Time                     If/swid    Db Op     Src Slot FE

Wed Nov 14 16:04:28 2018 0x16000005 0  UPDATE 3   0    0

Wed Nov 14 16:04:28 2018 0x16000005 0  REFRESH_DETECT 3   0    15

Wed Nov 14 16:04:28 2018 0x1a000400 0  UPDATE 3   0    0

Wed Nov 14 16:04:28 2018 0x1a000400 0  REFRESH_DETECT 3   0    15

Wed Nov 14 16:04:28 2018 0x16000005 0  UPDATE 3   0    0

N9K# show int snmp-ifindex

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

Port             IFMIB Ifindex (hex)

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

mgmt0           83886080   (0x5000000 )

Eth1/1          436207616  (0x1a000000)

Eth1/2          436208128  (0x1a000200)

Eth1/3          436208640  (0x1a000400)

<snip>

Po6             369098757  (0x16000005)

Otras plataformas

Puede activar la notificación de movimiento de Mac en las otras plataformas Nexus con estos comandos.

N3K:

mac address table notification mac-move

logging level fwm 6

logging monitor 6

N5K/N6K:

mac address table notification mac-move

logging level fwm 6

logging monitor 6

N7K/N9K:

logging level l2fm 5

IOS:

mac address table notification mac-move

Note: To revert/remove these commands, simply use the `no` version of each command.

Estos comandos también están disponibles en Nexus5K/6K que ejecutan las versiones 6.0(2)N2(1) y posteriores para apagar el puerto:

N5K(config)# mac address-table loop-detect ?

port-down  Take port-down action for mac loop detection

N5K(config)# mac address-table loop-detect port-down

Further, the following command is available on the platform to err-disable the edge-port on the MAC move loop detection,

N5K(config)# mac address-table loop-detect port-down edge-port

Con NX-OS versión 6.0(2)A8(1) en Nexus 3000, puede configurar la acción para reducir el puerto con el índice de interfaz inferior cuando se detecta un loop de este tipo.

N3K(config)# mac address-table loop-detect ?

port-down  Take port-down action for mac loop detection

N3K(config)# mac address-table loop-detect port-down

The following command is available on this platform as well, to err-disable the edge-port on the MAC move loop detection,

N5K(config)# mac address-table loop-detect port-down edge-port

Enlaces útiles

Explicación del registro del sistema Nexus L2FM-4-L2FM_MAC_MOVE

Preguntas frecuentes sobre Nexus 5000: ¿Qué hace cuando un switch Nexus 5000 muestra el mensaje "FWM-2-STM LOOP DETECT" en el registro?