前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SNMP学习笔记之iReasoning MIB Browser

SNMP学习笔记之iReasoning MIB Browser

作者头像
Jetpropelledsnake21
发布2018-12-04 16:28:32
6.2K0
发布2018-12-04 16:28:32
举报
文章被收录于专栏:JetpropelledSnakeJetpropelledSnake

0x00 MIB Browser

iReasoning MIB浏览器是一个强大和易于使用的工具由iReasoning SNMP API提供支持。 MIB浏览器是工程师管理启用SNMP的网络设备和应用程序不可或缺的工具。 它允许用户加载标准的,专有的MIB,甚至一些错误的MIB。 它还允许它们发出SNMP请求以检索代理的数据,或对代理进行更改。 内置陷阱接收器可以根据其规则引擎接收和处理SNMP陷阱。

下载地址:http://www.ireasoning.com/download.shtml

安装后界面

可以通过官网下载MIB库文件,导入ireasoning\mibbrowser\mibs目录下,通过MIB Browser可以查看设备的私有OID

0x01 如何获取CISCO设备OID值

思科的交换机snmp oid信息查询  http://tools.cisco.com/Support/SNMP/do/BrowseOID.do

1、通过交换机执行命令“show version”获取IOS名称,如下图标红的内容

2、根据系统信息进行官网页面查询

3、点击search后弹出新页面,列出这个IOS所有可用的MIB库,如下图

4、选择自己需要的MIB库,如CISCO环境监视器MIB文件,名称是CISCO-ENVMON-MIB,点击V2

我需要查看设备的温度值,找到具体的OBJECT-TYPE,如下图的 ciscoEnvMonTemperatureStatusTable

5、根据ciscoEnvMonTemperatureStatusTable 去官网查询它的OID

6、根据查询的OID,通过snmpwalk命令进行获取

7、cpu信息获取

下表显示他们替换的新的MIB和他们的对象在旧有MIB旁边和对象:

# sysDescr  CSICO-3560 系统信息
# ifNumber  CSICO-3560 接口总数
# ifTable  CSICO-3560  接口详细信息
# .1.3.6.1.4.1.9.9.13.1.3.1.3  CSICO-3560 温度
# .1.3.6.1.4.1.9.9.13.1.4.1.3  CSICO-3560 风扇状态
# .1.3.6.1.4.1.9.9.13.1.5.1.3  CSICO-3560 电源状态
# 1.3.6.1.4.1.9.9.48.1.1.1.1   CSICO-3560内存池名称,有多个,如Processor、I/O、Driver
# 1.3.6.1.4.1.9.9.48.1.1.1.5   CSICO-3560内存池使用
# 1.3.6.1.4.1.9.9.48.1.1.1.6   CSICO-3560内存池空闲,内存池总大小=使用+空闲

0x02 华为MIB库

如何下载华为设备MIB  http://support.huawei.com/huaweiconnect/enterprise/thread-228323.html

操作方法同以上思科

0x03 python代码实现获取snmp信息

# -*- coding: utf-8 -*-
 
 
import netsnmp
 
 
class SnmpClass(object):
    """
    SNMP
    """
    def __init__(self, oid="sysDescr", version=1, destHost="localhost", community="public"):
        self.oid = oid
        self.version = version
        self.destHost = destHost
        self.community = community
 
    @property
    def query(self):
        """
        snmpwalk
        """
        try:
            result = netsnmp.snmpwalk(self.oid,
                                      Version=self.version,
                                      DestHost=self.destHost,
                                      Community=self.community)
        except Exception, err:
            print err
            result = None
        return result
 
 
def main():
    test_obj = SnmpClass(oid="ifIndex", destHost="192.168.137.11")
    print test_obj.query
 
if __name__ == '__main__':
    main()
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018-10-29 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 0x00 MIB Browser
  • 0x01 如何获取CISCO设备OID值
  • 0x02 华为MIB库
  • 0x03 python代码实现获取snmp信息
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档