关于添加本地MIB库可以参考:https://blog.csdn.net/baidu_35401736/article/details/83583167
本文主要介绍如何添加网页的MIB库
MIB查询网站
Asn1Mib网页库:http://mibs.snmplabs.com/asn1/
OID便捷查询(树结构):http://oid-info.com/
文字/OID查询:http://cric.grenoble.cnrs.fr/Administrateurs/Outils/MIBS/
头文件
from pysnmp.hlapi import *
from pysnmp.proto.rfc1902 import ObjectName
SNMP报格式
# 发送SNMP格式请求信息
g = nextCmd(SnmpEngine(),
# community代表团体名,version代表版本号
CommunityData(community, mpModel=int(version)),
# ip_add代表发送目的地址,port代表端口号(161)
UdpTransportTarget((ip_add, port)),
ContextData(),
# oid为查找的编号
ObjectType(ObjectIdentity(oid))
)
添加自定义MIB(网页链接)
本文以查找 LLDP-MIB的 lldpRemChassisId 为例子进行说明
- 在Asn1Mib网页库中查找需要的MIB文件和内容
- 将想要的模块名称和查找对象记录并填入程序中
可以将ObjectIdentity(oid)替换为下面两种格式
# 'LLDP-MIB'为整个模块名称(@mib@在搜索时将替换为MIB模块名称),'lldpRemChassisId'为查找的对象
ObjectIdentity('LLDP-MIB', 'lldpRemChassisId').addAsn1MibSource('http://mibs.snmplabs.com/asn1/@mib@')
# 或者将oid编号直接填入ObjectIdentity内
ObjectIdentity('1.0.8802.1.1.2.1.4.1.1.5').addAsn1MibSource('http://mibs.snmplabs.com/asn1/@mib@')
本文参考PySNMP官网函数:http://snmplabs.com/pysnmp/docs/api-reference.html#pysnmp.smi.rfc1902.ObjectIdentity