微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何在 pysnmp 代理端的自定义 MIB 文件中设置值?

如何解决如何在 pysnmp 代理端的自定义 MIB 文件中设置值?

我已经准备了一个 MIB 文件 (MY-SMI.mib),我已经在 SNMP 代理端使用 pysnmp lib 代码成功加载了该 MIB 文件

mibBuilder = snmpContext.getMibInstrum().getMibBuilder()
compiler.addMibCompiler(mibBuilder,sources = ['/home/mib_file/'])
mibBuilder.addMibSources(builder.DirMibSource('/home/mib_file/'))
mibBuilder.loadModules('MY-SMI') # MY-SMI.mib is the mib file pasted below
mibInstrum = snmpContext.getMibInstrum()

但我无法在 snmp 代理端的 mib 结构内为 hrSWOSIndex(1,3,6,1,1),hrSWOSValue(1,2) 设置任何值.

mibInstrum.writeVars(
      (((1,67),((1,2),22)))

调用 writeVars() 出错

"pysnmp.smi.error.NoAccessError: NoAccessError({'idx': 0,'name': (1,1)})"

下面的 MIB 文件是否有问题或

直接使用 OID 调用 writeVars() 时我做错了什么?

我想在加载此 MIB 文件 (MY-SMI.mib) 后设置 hrSWOSIndex 和 hrSWOSValue 的值,以便我可以从 SNMP 管理器端查询这些值。

下面是我的 MIB 文件

MY-SMI DEFinitioNS ::= BEGIN

IMPORTS
    OBJECT-GROUP           FROM SNMPv2-CONF
    MODULE-IDENTITY,enterprises,Integer32 FROM SNMPv2-SMI;
-- the path to the root

org            OBJECT IDENTIFIER ::= { iso 3 }  --  "iso" = 1
dod            OBJECT IDENTIFIER ::= { org 6 }
internet       OBJECT IDENTIFIER ::= { dod 1 }


nets              OBJECT IDENTIFIER ::= {internet 1}
hr                OBJECT IDENTIFIER ::= {internet 2}
-- textual conventions
hrSWOSIndex object-type
    Syntax     Integer32
    MAX-ACCESS read-only
    STATUS     current
    DESCRIPTION
        "The value of the hrSWRunIndex for the hrSWRunEntry
        that represents the primary operating system running
        on this host.  This object is useful for quickly and
        uniquely identifying that primary operating system."
    ::= { nets 1 }
        
hrSWOSValue object-type
    Syntax     Integer32
    MAX-ACCESS read-only
    STATUS     current 
    DESCRIPTION
        "The value of the hrSWRunIndex for the hrSWRunEntry
        that represents the primary operating system running
        on this host.  This object is useful for quickly and
        uniquely identifying that primary operating system."
    ::= { nets 2 }

hrSWRunGroup OBJECT-GROUP
    OBJECTS {
        hrSWOSIndex,hrSWOSValue
    }
    STATUS current
    DESCRIPTION
        "The Host Resources Running Software Group."
    ::= { hr 1 }
    
    
END

我使用的是 pysnmp 版本 4.4.12

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。