Основная проблема таких программок - как раз снять маки по snmp. У одного производителя, в разных версиях прошивки, могут быть разные способы. А дальше - все просто, беги рекурсивно по портам-вланам. Питон/перл в руки.
По делу - lantopolog неплох. Он в демо-версии некоторые порты не показывает. Но можно ещё раз запустить - он другие не покажет :) Не дорогой он