
2015-10-27 09:15, Mike Stupalov wrote:
try with latest r7130.
Hmm, where can I get hold of it? I'm on a CE edition.
I'm added more correct detection of remote ports (accordind to MIB descriptions).
Nice, thanks.
But hardcoded search ifIndex as 1000+$id not approved, because it's single platform or your device specific.
Sure, it was just an ad-hoc fix for our particular case.
A more general solution for Extreme switches is needed to take into account a chassis number. Unfortunately none of our switches is stackable, so I can only provide information for a standalone unit.
Send to me output for debug discovery for local and remote devices (I will check ifIndexes and other ports params) ./discovery.php -d -h <local_device> ./discovery.php -d -h <remote_device>
Will send it privately, There's lots of stuff there and a couple of different cases with different local/remote pairs. Need to figure out some way for you to make sense of it.
Tom Laermans wrote:
- a fallback mechanism which tries to find a match on an interface's MAC address produces a wrong match, because typically all ports on larger switches have the same MAC address and the heuristics just picks the first match, which is almost always wrong. In case of multiple matches the matching on MAC should just fail, which at least would not produce a senseless match causing operators to scratch their heads and wonder who crossed the cables. The comment in lldp-mib.inc.php : // Find the device by MAC address, still matches multiple ports sometimes, we use the first one and hope we're lucky if very much misguided, as all port MAC addresses on a switch are typically the same, at least on all device types that I checked.
This worked for quite a number of devices I've checked, which all had different MACs per port. Indeed I have one that sees at least one other port as "port 1", and was planning on looking into that, pretty convinced it had to do with this too. I'll see later if this fixes it :-)
It works when MAC addresses are distinct, it fails misleadingly when they are the same. Found another case, this one a mismatch on a *local* port in a 'neighbours' report.
It should not be difficult to see if the SQL SELECT returned a single or a number of matches on a MAC address. When more than one port matches a query the result should be discarded. It will still work reliably for devices where each port has a distinct MAC address.
Mark