• snmp中载入第三方mib库(转载)


    一般我们下载回来的mib文件可能后缀名为.mib,为了清晰起见,可能需要改名。一般改成 MIB_NAME.txt 这样的形式。

    例如/usr/share/snmp/mibs/IP-MIB.txt 中包含如下一行

    IP-MIB DEFINITIONS ::= BEGIN

    这个MIB_NAME具体的定义是在mib文件中第一个包含 DEFINITIONS 的行,在DEFINITIONS之前的那个词就是MIB_NAME。

    不过这个mib文件的名字是什么其实不重要,重要的是包含DEFINITIONS 的行中所定义的"Module"名字。

    网上有一些文档说增加一个新的mib文件就是把mib文件复制到'/usr/share/snmp/mibs/'中就可以了,其实这是不对的!

    首先,我们要将mib文件复制到'/usr/share/snmp/mibs/'中

    但是光复制过去还不能生效,'snmpget'是不会自动加载所有在/usr/share/snmp/mibs/目录中的mib文件的!

    如果不能正确加载mib文件的话,就会出现 "Unknown Object Identifier" 这样的错误。

    因此在复制了mib文件到'/usr/share/snmp/mibs/'中以后,需要修改/usr/share/snmp/snmp.conf,加入下边一行:

    mibfile /usr/share/snmp/mibs/DS11INTEG-MIB.txt

    或者

    mibs +DS11INTEG-MIB

    或者也可以在提示符下输入

    # export MIBS=ALL

    这样就可以引用我们新加入的mib文件了。例如:

    # snmpget -v1 -c public 192.168.49.253 BREEZECOM-DOT11EXT-MIB::roamQuality.1
      BREEZECOM-DOT11EXT-MIB::roamQuality.1 = INTEGER: 3

    或者这样也可以

    # snmpget -v1 -c public 192.168.49.253 roamQuality.1
      BREEZECOM-DOT11EXT-MIB::roamQuality.1 = INTEGER: 3

    使用'snmptranslate' 命令可以获得一个文本项对应的OID值

    # snmptranslate -On BREEZECOM-DOT11EXT-MIB::roamQuality
       .1.3.6.1.4.1.710.7.1.5.1.23.1.7

    也可以使用'snmptranslate' 命令查询一个指定的对象

    # snmptranslate -IR roamQuality
       BREEZECOM-DOT11EXT-MIB::roamQuality

    还可以用snmptranslate命令把OID转化成文字描述

    # snmptranslate .1.2.840.10036.2.2.1.12
       IEEE802dot11-MIB::dot11FCSErrorCount

    # snmptranslate -Of .1.2.840.10036.2.2.1.12
    .iso.member-body.us.ieee802dot11.dot11mac.dot11CountersTable.dot11CountersEntry.dot11FCSErrorCount

    也可用snmptranslate命令从mib文件获得某个对象的全部细节

    # snmptranslate -Td BREEZECOM-DOT11EXT-MIB:roamQuality
       BREEZECOM-DOT11EXT-MIB::roamQuality
       roamQuality OBJECT-TYPE
         -- FROM       BREEZECOM-DOT11EXT-MIB
         SYNTAX        Integer32
         MAX-ACCESS    read-only
         STATUS        current
         DESCRIPTION   "An indicator for the quality of the BSS. The quality is
                        calculated over the received Beacons of the BSS and depends
                        on the selected quality indicator. The semantics of the
                        indicator is 'low is good quality' and 'high is bad quality'."
       ::= { iso(1) org(3) dod(6) internet(1) private(4) enterprises(1) breezeCOM(710) ds11Products(7)    dot11ExtMIB(1) dot11ExtWBUObjs(5) roam(1) roamTable

    (23) roamEntry(1) 7 }

    另一个有用的命令是snmpwalk

      # snmpwalk -v1 -c public 192.168.49.253 dot11CountersTable
      IEEE802dot11-MIB::dot11TransmittedFragmentCount.1 = INTEGER: 122172497
      IEEE802dot11-MIB::dot11MulticastTransmittedFrameCount.1 = INTEGER: 45242
      IEEE802dot11-MIB::dot11FailedCount.1 = INTEGER: 4009
      IEEE802dot11-MIB::dot11RetryCount.1 = INTEGER: 1601483
      IEEE802dot11-MIB::dot11MultipleRetryCount.1 = INTEGER: 885859
      IEEE802dot11-MIB::dot11FrameDuplicateCount.1 = INTEGER: 543281
      IEEE802dot11-MIB::dot11RTSSuccessCount.1 = INTEGER: 0
      IEEE802dot11-MIB::dot11RTSFailureCount.1 = INTEGER: 0
      IEEE802dot11-MIB::dot11ACKFailureCount.1 = INTEGER: 3971754
      IEEE802dot11-MIB::dot11ReceivedFragmentCount.1 = INTEGER: 108826417
      IEEE802dot11-MIB::dot11MulticastReceivedFrameCount.1 = INTEGER: 31359
      IEEE802dot11-MIB::dot11FCSErrorCount.1 = INTEGER: 831325
      IEEE802dot11-MIB::dot11TransmittedFrameCount.1 = INTEGER: 122156588
      IEEE802dot11-MIB::dot11WEPUndecryptableCount.1 = INTEGER: 0

    需要注意的是,在使用snmpget命令的时候,需要在查询的OID尾部增加.0 或者 .1,不然会报错。

       # snmpget -v1 -c public 192.168.49.253 dot11ACKfailureCount
       Error in packet
       Reason: (noSuchName) There is no such variable name in this MIB.
       Failed object: IEEE802dot11-MIB::dot11ACKFailureCount

       # snmpget -v1 -c public 192.168.49.253 dot11ACKFailureCount.1
       IEEE802dot11-MIB::dot11ACKFailureCount.1 = INTEGER: 3971912

    还有在unix系统中,系统是大小写敏感的,因此写OID的时候注意大小写不要写错。

  • 相关阅读:
    css-Less
    linux脚本启动应用
    Idea安装svn插件
    一、JSP九大内置对象 二、JAVAEE三层架构和MVC设计模式 三、Ajax
    一、HttpServletRequest接口 二、HttpServletReponse接口 三、POST和GET请求方式及其乱码处理 四、ServletContext对象和ServletConfig对象
    一、 JSP概述 二、JSP的语法结构 三、JSP内置对象
    一、动态网络编程的概念 二、Tomcat服务器搭建 三、Servlet组件介绍
    一、BOM 二、DOM
    一、JavaScript概述 二、JavaScript的语法 三、JavaScript的内置对象
    一、HTML概述 二、web相关的概念 三、HTML的常用标签
  • 原文地址:https://www.cnblogs.com/zhuzhenlong/p/12455690.html
Copyright © 2020-2023  润新知