OpenNMS обеспечивает обнаружение layer2 через коллекцию SNMP (как я уверен, делают другие подобные инструменты).
OpenNMS будет получать информацию о MAC, VLAN и STP с управляемых устройств и использовать ее для построения топологии l2, которую он затем сможет отобразить. (Нативное отображение в настоящее время работает только для IE, но следующая стабильная версия - 1.8 - я думаю, будет иметь лучшую поддержку отображения). Вы можете увидеть, какие узлы подключены к данному узлу для каждого порта.
В качестве альтернативы, если вам удобно писать что-то самостоятельно, snimpy предоставляет отличный программный интерфейс для SNMP, минуя большую часть затрат на программирование для SNMP. Я использовал его недавно, чтобы генерировать оперативную сводку vlans для порта, что наши коммутаторы не сообщали чисто.