可能让snmpwalk自动步行供应商的MIB?

使用net-snmp,我已经设置了我的snmp.conf来查看供应商的MIB,我可以通过“snmpwalk -Cc -v 2c -c <community> <device> <MIB name> ”来引导它们。 是否有可能得到snmpwalk自动步行供应商的MIB时,我走的是一个设备,而不是专门调用供应商的MIB?

它看起来不像。 用作漫游根的默认OID被硬编码到应用程序中。

我会build议创build一个小包装shell脚本。

例如。

vendor-snmpwalk.sh:

 #!/bin/sh /path/to/snmpwalk -Cc -v 2c -c <community> $1 <root vendor OID> 

然后你直接调用你的包装脚本而不是snmpwalk

 /path/to/vendor-snmpwalk.sh <device> 

作为参考,下面是处理根节点的相关代码(从net-snmp代码库 ):

 74 oid objid_mib[] = { 1, 3, 6, 1, 2, 1 }; 

 233 * get the initial object and subtree 234 */ 235 if (arg < argc) { 236 /* 237 * specified on the command line 238 */ 239 rootlen = MAX_OID_LEN; 240 if (snmp_parse_oid(argv[arg], root, &rootlen) == NULL) { 241 snmp_perror(argv[arg]); 242 exit(1); 243 } 244 } else { 245 /* 246 * use default value 247 */ 248 memmove(root, objid_mib, sizeof(objid_mib)); 249 rootlen = sizeof(objid_mib) / sizeof(oid); 250 }