陷阱OID陷阱名称-snmp

时间:2018-08-02 00:06:01

标签: python snmp pysnmp snmp-trap

有一组来自不同供应商设备的snmp陷阱OID,例如Cisco / Juniper / Arista等...

例如:1.3.6.1.4.1.6101.1.8.8.2.1

我们想知道每个OID的陷阱名称。有超过300个OID。


通过编程,我们使用python将所有陷阱OID存储在集中。

检索陷阱名称的最佳方法是什么?是否有任何公共存储库提供陷阱OID到陷阱名称的映射?

2 个答案:

答案 0 :(得分:1)

您可以在所有MIB上运行mibbuild.py --destination-format json工具。您将为每个MIB文件获得一个JSON文档。 JSON文档的外观为like this

"coldStart": {
  "name": "coldStart", 
  "oid": "1.3.6.1.6.3.1.1.5.1", 
  "class": "notificationtype", 
  "status": "current"
}, 

您可以从此处将JSON加载到Python中,创建一个像dict这样的新{json[key]['oid']: key for key in json},可用于通过OID查找TRAP名称。

如果您的MIB集合正在更改并且需要不断更新,则可以通过调用pysmi函数将上述过程构建到应用程序中。

编辑:

如果需要将任何TRAP OID解析为其MIB名称,则可以获取Internet上找到的MIB数量,并对它们运行以上过程。但是,您仍然可能无法解决您在野外遇到的所有TRAP OID。在您的软件正在管理的所有设备上都有MIB更为常见。

mibdump工具的默认设置是从http://mibs.snmplabs.com/asn1/网站提取请求的MIB。

答案 1 :(得分:0)

1.3.6.1.4.1.6101.1.8.8.2.1==>

1.3.6.1.4.1。 == ...民营企业(值得记忆)

6101 == 趋势科技公司的 private.enterprise 编号,这些#s 保持在 https://www.iana.org/assignments/enterprise-numbers/enterprise-numbers

1.8.8.2.1 == 需要从 Trend Micro, Inc. 直接获取 MIB。

--显然,您需要加载所有需要解码的 MIB,python 才能工作。 MIB 也可以引用其他 MIB,因此它可能会变得混乱。我一直都是手动完成的,所以我不能谈论任何工具来做到这一点。但是我不需要对 SNMP 做太多事情。您的情况可能有所不同。