SNMP - получить полную таблицу Mac за один звонок - PullRequest
2 голосов
/ 03 мая 2011

Для моего проекта мне нужно скачать mac table с коммутатора и сделать это как можно быстрее.Официальное решение довольно медленное.Требуется получить список всех Vlan'ов, и для каждого запускается отдельный вызов snmpwalk с OID=.1.3.6.1.2.1.17.4.3.1.1 и строкой сообщества, индексированной с помощью номера VLAN.Это может занять значительное количество времени, так как количество vlan на наших коммутаторах составляет десятки.Есть ли способ получить все mac-адреса из таблицы mac одновременно (какой-то специальный индекс сообщества, представляющий все доступные индексы vlan)?Заранее спасибо ..

Ответы [ 2 ]

7 голосов
/ 24 июля 2013

Я думаю, BRIDGE-MIB::dot1dTpFdbTable (1.3.6.1.2.1.17.4.3) выполнит эту работу. Можно просто получить dot1dTpFdbPort (1.3.6.1.2.1.17.4.3.1.2), чтобы получить learn MAC -> PORT table. Для моего DLINK DGS-1216T я могу получить таблицу mac-to-port из моего окна Linux с помощью этой команды:

$ snmpwalk -O0sUX -v2c -Cc -c public 192.168.0.1 BRIDGE-MIB::dot1dTpFdbPort

Кроме того, я нашел дополнительный (17-й) номер порта для технического обслуживания MAC.

1 голос
/ 03 мая 2011

Вы пытаетесь получить ipNetToMediaTable ({iso (1) идентифицированная организация (3) dod (6) интернет (1) mgmt (2) mib-2 (1) ip (4) ipNetToMediaTable (22)} или 1.3.6.1.2.1.4.22) с вашего адреса управления коммутатором.Он представляет собой таблицу трансляции IP-адресов, используемую для сопоставления IP-адресов с физическими адресами.

---- EDIT ----

Если вы хотите Используйте SNMP для поискаНомер порта с MAC-адреса на коммутаторе Catalyst с минимальным количеством кадров, вы можете использовать Get-Bulk PDU, он предполагает, что вы переключаетесь на SNMP V2c.

...