diff --git a/napalm_linux/linux.py b/napalm_linux/linux.py index 14f5323..04143b4 100644 --- a/napalm_linux/linux.py +++ b/napalm_linux/linux.py @@ -257,10 +257,15 @@ class LinuxDriver(OSDriver): entries.setdefault(iface, {})[subkey] = value for iface, data in entries.items(): - neighbors.setdefault(iface, []).append({ + entry = { "hostname": data.get("chassis.name", ""), "port": data.get("port.ifname", data.get("port.id.value", "")), - }) + } + if data.get("chassis.id.subtype") == "mac": + mac = data.get("chassis.id.value", "") + if re.match(r"^([0-9A-Fa-f]{2}:){5}[0-9A-Fa-f]{2}$", mac): + entry["mac"] = mac.lower() + neighbors.setdefault(iface, []).append(entry) return neighbors