Table des matières

Introduction

Informations générales

Préalable

Topologie

Dépannage : procédure

Configuration

Vérifier

Autres plates-formes

Liens utiles

Introduction

Ce document décrit comment dépanner quand il y a mac move sur Nexus 9000 et comment l'empêcher.

Informations générales

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

Vous comprenez le concept d’apprentissage MAC et la manière dont une table est mise à jour sur un commutateur, lorsque ce dernier reçoit une trame, et vous associez l’adresse MAC de l’expéditeur au port LAN sur lequel elle a été reçue. En mode de boucle, il peut arriver que le même MAC soit appris via deux ports différents sur le commutateur.

Préalable

Comprendre le concept de l'apprentissage mac sur le commutateur et la configuration NX-OS

Dépannage des problèmes de commutation de couche 2

Topologie

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

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

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

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

1/3 |               | 2/1

|               |

|               |

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

|       Server       |

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

0000.117d.e02e

Dépannage : procédure

Lorsque BCM ASIC apprend trop d'adresses MAC en peu de temps, BCM_USD peut désactiver/activer l'apprentissage MAC dans le matériel et vous pouvez voir ce message qui apparaît. Cela peut être dû à un trop grand nombre de mac-move/flaps/loops ou à un nouveau mac apprenant/move dépassant un certain seuil. Par défaut, sur Nexus9K, vous ne pouvez pas voir les journaux qui vous indiquent spécifiquement que le commutateur subit des mac-move. Cependant, si ces mouvements sont élevés, vous finissez par voir ces journaux.

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

Ces messages indiquent un événement dans la table mac. Lorsque vous avez des déplacements Mac continus dans l'environnement, ces messages peuvent être vus. Fondamentalement, le commutateur a reçu des trames avec le même MAC source sur deux interfaces ou plus à un débit très élevé. Le commutateur dispose d’un mécanisme pour compter le nombre de « déplacements » MAC et les pondérer en fonction du nombre de déplacements de l’adresse MAC. L'apprentissage MAC dynamique est désactivé par le commutateur afin de protéger le plan de contrôle.

À ce stade, vous pouvez vérifier le nombre de mac-move pour comprendre, si et combien de mac-move ont été expérimentés sur le périphérique,

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

Le résultat de « Number of MAC Addresses Move » suggère que le commutateur subit des mac-move.

Configuration

L’étape suivante consiste à trouver l’adresse MAC à l’origine de ce problème, ainsi que les VLAN et les informations d’interface. Pour rechercher ces informations, vous devez augmenter le niveau de journalisation de L2FM de la valeur par défaut de 2 à 5 sur la plate-forme 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

Dans ce cas, vous pouvez détecter et limiter le nombre de déplacements d'une adresse MAC d'un port à un autre.

Jusqu'à la version 6.0(2)U3(1) de Cisco NX-OS, lorsqu'une boucle était détectée entre deux ports, l'apprentissage MAC était désactivé pendant 180 secondes.

Cependant, en commençant par 7.0(3)I7(3), vous pouvez maintenant configurer le commutateur pour désactiver le port avec l'index d'interface le plus bas, quand une telle boucle est détectée quand vous utilisez la commande « 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#

Une fois cette commande activée, la détection de boucles supplémentaires désactive l'interface dont l'index d'interface est le plus faible.

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)

Vérifier

Utilisez cette commande pour vérifier l'action actuellement configurée.

N9K# show mac address-table loop-detect

Port Down Action Mac Loop Detect : disabled

Vous pouvez confirmer l'index de l'interface pour vérifier si l'interface correcte a été désactivée, conformément à la fonctionnalité.

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)

Autres plates-formes

Vous pouvez activer la notification de déplacement mac sur les autres plates-formes Nexus à l'aide de ces commandes.

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.

Ces commandes sont également disponibles dans Nexus5K/6K qui exécute les versions 6.0(2)N2(1) et ultérieures, pour arrêter le port :

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

Avec NX-OS version 6.0(2)A8(1) sur Nexus 3000, vous pouvez configurer l'action pour désactiver le port dont l'index d'interface est le plus bas lorsqu'une telle boucle est détectée.

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

Liens utiles

Explication du journal système Nexus L2FM-4-L2FM_MAC_MOVE

FAQ sur Nexus 5000 : Que faire lorsqu'un commutateur Nexus 5000 affiche le message « FWM-2-STM LOOP DETECT » dans le journal