有没有办法只使用SNMP走一层树?
实施例: 我想知道我的树有多少桌子,但我不想走每一个入口。最好只走父层并返回表的根节点的所有OID。
答案 0 :(得分:1)
而不是使用snmpwalk
(我不认为支持所讨论的一个级别的步行),从MIB文件中获取此类信息可能更容易(而不是询问代理)。
使用例如工具可能很方便。 netsnmp snmptranslate
。例如。要查看哪些表存在于SNMPv2-MIB ::系统中,即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