SNMP ходит только на одном уровне

Есть ли способ пройти только один уровень дерева с помощью SNMP?

Пример: я хочу знать, сколько таблиц есть в моем дереве, но я не хочу просматривать каждую запись. Было бы неплохо пройтись только по родительскому уровню и вернуть все OID для корневого узла таблицы.


person Schwimo    schedule 03.09.2015    source источник


Ответы (1)


Вместо того, чтобы использовать snmpwalk (который, я не думаю, поддерживает одноуровневую прогулку, упомянутую в вопросе), может быть проще получить такую ​​информацию из файла MIB (вместо опроса агента).

Может быть удобно использовать такой инструмент, как, например. нетснмп snmptranslate. Например. чтобы увидеть, какие таблицы находятся в SNMPv2-MIB::system, т.е. 1.3.6.1.2.1.1, вы можете...

snmptranslate  -M +.  -m +ALL -Tp -On SNMPv2-MIB::system 
+--system(1)
   |
   +-- -R-- String    sysDescr(1)
   |        Textual Convention: DisplayString
   |        Size: 0..255
   +-- -R-- ObjID     sysObjectID(2)
   +-- -R-- TimeTicks sysUpTime(3)
   |  |
   |  +--sysUpTimeInstance(0)
   |
   +-- -RW- String    sysContact(4)
   |        Textual Convention: DisplayString
   |        Size: 0..255
   +-- -RW- String    sysName(5)
   |        Textual Convention: DisplayString
   |        Size: 0..255
   +-- -RW- String    sysLocation(6)
   |        Textual Convention: DisplayString
   |        Size: 0..255
   +-- -R-- INTEGER   sysServices(7)
   |        Range: 0..127
   +-- -R-- TimeTicks sysORLastChange(8)
   |        Textual Convention: TimeStamp
   |
   +--sysORTable(9)
      |
      +--sysOREntry(1)
         |  Index: sysORIndex
         |
         +-- ---- INTEGER   sysORIndex(1)
         |        Range: 1..2147483647
         +-- -R-- ObjID     sysORID(2)
         +-- -R-- String    sysORDescr(3)
         |        Textual Convention: DisplayString
         |        Size: 0..255
         +-- -R-- TimeTicks sysORUpTime(4)
                  Textual Convention: TimeStamp
person k1eran    schedule 03.09.2015