Inhalt

Einleitung

Hintergrundinformationen

Voraussetzung

Topologie

Fehlerbehebung

Konfiguration

Überprüfung

Andere Plattformen

Nützliche Links

Einleitung

In diesem Dokument wird beschrieben, wie Sie bei MAC-Verschiebungen auf dem Nexus 9000 eine Fehlerbehebung durchführen und diese verhindern.

Hintergrundinformationen

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

Sie verstehen das Konzept des MAC Learning und wie eine Tabelle auf einem Switch verwaltet wird, wenn der Switch einen Frame empfängt und die MAC-Adresse des Absenders dem LAN-Port zuordnet, an dem er empfangen wurde. Unter Schleifenbedingungen kann es vorkommen, dass dieselbe MAC-Adresse über zwei verschiedene Ports am Switch erfasst wird.

Voraussetzung

Verstehen des Konzepts von Mac-Learning auf dem Switch und der NX-OS-Konfiguration

Layer-2-Switching-Probleme beheben

Topologie

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

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

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

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

1/3 |               | 2/1

|               |

|               |

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

|       Server       |

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

0000.117d.e02e

Fehlerbehebung

Wenn BCM ASIC zu viele MAC-Adressen in kurzer Zeit erkennt, kann BCM_USD das MAC-Lernen in der Hardware deaktivieren/aktivieren. Diese Meldung wird angezeigt. Es kann verursacht werden, wenn zu viele MAC-Moves/Flaps/Loops vorhanden sind oder neue MAC-Learning/Moves einen bestimmten Grenzwert überschreiten. Standardmäßig werden auf Nexus9K die Protokolle nicht angezeigt, die Ihnen ausdrücklich mitteilen, dass sich der Switch in Mac OS X bewegt. Falls diese Bewegungen jedoch hoch sind, sehen Sie am Ende diese Protokolle.

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

Diese Meldungen weisen auf ein Ereignis in der MAC-Tabelle hin. Wenn in der Umgebung ständig Mac-Verschiebungen stattfinden, sind diese Meldungen sichtbar. Im Grunde empfing der Switch Frames mit derselben Quell-MAC-Adresse an zwei oder mehr Schnittstellen mit einer sehr hohen Rate. Der Switch verfügt über einen Mechanismus zum Zählen der Anzahl von MAC-"Move-backs" und zum Wiegen dieser Backups anhand der Anzahl der Verschiebungen der MAC-Adresse. Das dynamische MAC-Learning wird vom Switch deaktiviert, um die Kontrollebene zu schützen.

An diesem Punkt können Sie die Anzahl der MAC-Verschiebungen überprüfen, um zu ermitteln, ob und wie viele MAC-Verschiebungen auf dem Gerät aufgetreten sind.

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

Die Ausgabe von "Number of MAC Addresses move" (Anzahl verschobener MAC-Adressen) deutet darauf hin, dass der Switch sich in einem Mac befindet.

Konfiguration

Als Nächstes müssen wir die MAC-Adresse herausfinden, die dieses Problem verursacht, und die VLANs und die Schnittstelleninformationen, über die das Problem auftritt. Um nach diesen Informationen zu suchen, müssen Sie die Protokollierungsebene von L2FM auf der N9K-Plattform von 2 auf 5 erhöhen.

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

In diesem Fall können Sie die Anzahl der Verschiebungen einer MAC-Adresse von einem Port zu einem anderen erkennen und begrenzen.

Vor der Cisco NX-OS-Version 6.0(2)U3(1), in der eine Schleife zwischen zwei Ports erkannt wurde, wurde das MAC Learning 180 Sekunden lang deaktiviert.

Ab 7.0(3)I7(3) können Sie den Switch jedoch jetzt so konfigurieren, dass der Port mit dem niedrigeren Schnittstellenindex deaktiviert wird, wenn eine solche Schleife erkannt wird, wenn Sie den Befehl "mac address-table loop-detect port-down" verwenden.

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#

Nachdem dieser Befehl aktiviert wurde, führt die weitere Schleifenerkennung dazu, dass die Schnittstelle mit niedrigerem Schnittstellenindex deaktiviert wird.

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)

Überprüfung

Verwenden Sie diesen Befehl, um die aktuell konfigurierte Aktion zu überprüfen.

N9K# show mac address-table loop-detect

Port Down Action Mac Loop Detect : disabled

Sie können den Index der Schnittstelle bestätigen, um zu überprüfen, ob die richtige Schnittstelle gemäß der Funktion deaktiviert wurde.

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)

Andere Plattformen

Mit diesen Befehlen können Sie die MAC Move-Benachrichtigung auf den anderen Nexus-Plattformen aktivieren.

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.

Diese Befehle sind auch in Nexus5K/6K verfügbar, auf denen Version 6.0(2)N2(1) und höher ausgeführt werden, um den Port herunterzufahren:

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

Mit NX-OS 6.0(2)A8(1) auf Nexus 3000 können Sie die Aktion so konfigurieren, dass der Port mit dem niedrigeren Schnittstellenindex heruntergefahren wird, wenn eine solche Schleife erkannt wird.

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

Nützliche Links

Nexus L2FM-4-L2FM_MAC_MOVE - Syslog-Erläuterung

Häufig gestellte Fragen zum Nexus 5000: Wie gehen Sie vor, wenn ein Nexus 5000-Switch die Meldung "FWM-2-STM LOOP DETECT" im Protokoll anzeigt?