MJL85 / natlas

natlas - Network Discovery and Auto-Diagramming
GNU General Public License v2.0
514 stars 111 forks source link

Nexus 5672 root switch not seeing it's neighbor via LLDP #13

Closed refriedjello closed 7 years ago

refriedjello commented 7 years ago

I have two core switches directly connected to each other - named crsw01 and crsw02. They are Cisco Nexus 5672UP running 7.1(0)N1(1a). Pointing mnet at crsw01 as the root, with CDP enabled on both crsw01/02 and everything seems to work fine. If I disable CDP and just leave LLDP, crsw02 is never discovered.

Snmpwalks show all the neighbors, but I did notice some things that may be throwing the script off:

-- entry showing neighbor name of crsw02

LLDP-MIB::lldpRemSysName.0.436383744.0 = STRING: crsw02.company.com

-- the other switches are IOS and have a different string ... this is crsw02 neighbor (not working) ....

LLDP-MIB::lldpRemSysDesc.0.436383744.0 = STRING: Cisco Nexus Operating System (NX-OS) Software 7.1(4)N1(1) TAC support: http://www.cisco.com/tac Copyright (c) 2002-2016, Cisco Systems, Inc. All rights reserved.

-- ... and here is IOS neighbor (is working) - i remember seeing references to "Version" somewhere, which the NXOS switch lacks, not sure if that is relevant

LLDP-MIB::lldpRemSysDesc.0.436215808.0 = STRING: Cisco IOS Software, Catalyst 4500 L3 Switch Software (cat4500-ENTSERVICESK9-M), Version 15.0(2)SG10, RELEASE SOFTWARE (fc1) Technical Support: http://www.cisco.com/techsupport Copyright (c) 1986-2015 by Cisco Systems, Inc. Compiled Tue 07-Apr-15 09:46 by

-- and then there is this .... this port is the only "all802" sub-tree entry - the rest are ipV4.

LLDP-MIB::lldpRemManAddrIfSubtype.0.436383744.0.all802.".`OZYS" = INTEGER: ifIndex(2)

LLDP-MIB::lldpRemManAddrIfId.0.436383744.0.all802.".`OZYS" = INTEGER: 83886080

LLDP-MIB::lldpRemManAddrOID.0.436383744.0.all802.".`OZYS" = OID: SNMPv2-SMI::zeroDotZero.0

Let me know if there is additional info I can provide or testing I can do. Thank you!

refriedjello commented 7 years ago

I discovered what the issue is. The other core Nexus is not sending the proper management IP in LLDP. This can be seen by running "show lldp neighbors detail" and finding the neighbor info. In this case, it is sending a MAC address, not an IPv4 address.

There is an interface-level command "lldp tlv-set management-address" where you can set what address to send. But I am still trying to determine on what models/versions its supported - because it's not on my 5672's running 7.1(4)N1(1).

Here is a link to Cisco document talking about that command - link

refriedjello commented 7 years ago

Confirmed that the 3000 and 9000 series support that command in the 7.x code train. Command is not supported at all in the 5500/5600 series.