First, let me repeat part of what I said, in case some readers might have missed it:
Which means: I do not have RouterOS, on some devices by choice, on most devices because they are of the CSS variety which is not capable of running anything other than SwOS.
One other random datapoint: I’m explicitly posting this in the SwOS forum to focus on answers involving SwOS and to avoid answers that drag in RouterOS needlessly.
Actually, I do, but the problem is, the number of switches in the network exceeds 50 devices (of which 48 are CSS, 2 are CRS, all running SwOS).
Even though I have a topology map, I cannot be certain if the map is up to date, because we have multiple engineers fixing network issues, and regularly adhoc solutions are performed by adding/replacing/removing switch devices, or rearranging the interconnections between the switches in order to route around cabling issues.
So I need a way to verify the topology in real time, and be certain which switch connects on which port with which other switch (even if it was temporarily changed a few seconds ago).
This mostly is needed to verify that anything that is changed in the network is changed as intended and not accidentally plugged in the wrong port.
I’ll go out on a limb here and guess that you are referring to ROS/RouterOS, which I do not have.
A small TAB in the SwOS menu called LLDP which displays a very simple list with in column one the name of the port, and in column two the LLDP advertised name and IP address of the device attached to that port (as reported by the LLDP packet received on that port).
MNDP is broadcast so visible to everything within the layer 2 network, it doesn’t provide information as to where it is within the network. LLDP requires special handling as each port on a device has to transmit different information, as it includes the port identity, and the device must not forward received information.
I suspect that SWOS mainly relies on functionality and storage within the switch chip itself, such as various counters, host and VLAN tables, hence no neighbours display as this is an unknown number of variable sized items.
As SWOS has SNMP and supposedly implements BRIDGE-MIB you should be able to retrieve the host table showing which MAC addresses have been learned on each port, although this appears to be missing in the original RB260s running v1.x.
I see. If I’d want to see these packets using tcpdump, which filter would I need to apply? Or, put differently, where can I read the network definition of MNDP so that I can construct that filter myself?
Correct. Then again, the switch must already be capable of NOT forwarding LLDP, so that part should not be complicated.
I agree that SwOS mainly leans on the basic functionality of the switch chip (as it should).
Then again, if the LLDP/direct neighbours display would be implemented as a fixed-size array (per Port store only a single neighbour (the last one seen)) that would be perfectly fine.
There might be a way around this using the native link.b SwOS API.