Я кодирую на C какой-то инструмент для мониторинга коммутатора Ethernet с помощью snmp v1 и Net-SNMP lib. На одном из шагов я получаю таблицу FDB от коммутатора. Доставляется по запросу getnext
с OID .1.3.6.1.2.1.17.7.1.2.2.1
. После того, как получу, например:
getnext .1.3.6.1.2.1.17.7.1.2.2.1 answer .1.3.6.1.2.1.17.7.1.2.2.1.2.1.144.2.166.50.206.43 3
getnext .1.3.6.1.2.1.17.7.1.2.2.1.2.1.144.2.166.50.206.43 answer .1.3.6.1.2.1.17.7.1.2.2.1.2.1.144.2.166.50.206.63 6
getnext .1.3.6.1.2.1.17.7.1.2.2.1.2.1.144.2.166.50.206.63 answer .1.3.6.1.2.1.17.7.1.2.2.1.2.1.144.2.166.50.206.126 4
getnext .1.3.6.1.2.1.17.7.1.2.2.1.2.1.144.2.166.50.206.126 answer .1.3.6.1.2.1.17.7.1.2.2.1.2.41.0.21.100.59.187.78 26
getnext .1.3.6.1.2.1.17.7.1.2.2.1.2.41.0.21.100.59.187.78 answer NULL
К сожалению, некоторые порты коммутатора имеют очень большое количество строк и полный цикл getnext
занимает много времени.
Есть ли способ получить все строки getnext
OID .1.3.6.1.2.1.17.7.1.2.2.1
и т.д. по одному запросу?
Или могут быть другие методы для более быстрого получения запросов?