coldStart陷阱的参数 - 什么是正在进行的以及如何找出它们应该是什么

时间:2013-10-17 13:08:21

标签: linux snmp net-snmp

coldStart陷阱的参数 - 发生了什么以及如何找出它们应该是什么

你好,我是SNMP新手,有一个简单的问题。我正在尝试将coldStart陷阱发送到另一个系统。 coldStart陷阱的OID是1.3.6.1.6.3.1.1.5.1

以下是mib中的coldStart描述:

  

coldStart NOTIFICATION-TYPE           状态当前           描述                   “coldStart陷阱表示SNMP实体,                   支持通知发起人申请,是                   重新初始化自己以及它的配置可能                   已被改变。“           :: = {snmpTraps 1}

到目前为止清楚。现在,我将尝试发送陷阱:

# snmptrap -v 2c -c public otherLinuxSystem SNMPv2-MIB::coldStart

并且此命令返回:

 Missing trap-oid parameter

什么?关于参数的mib中没有任何内容。所以,我用谷歌搜索,我发现在这种情况下添加一个值0:

    # snmptrap -v 2c -c public otherLinuxSystem SNMPv2-MIB::coldStart 0

作品。 1或2也有效。继承了我的问题:

所有陷阱都有一个参数,它只是暗示?这是在我错过的地方定义的吗?我怎么知道什么值代表什么?在这种情况下0,1和2是什么意思,我怎么能在将来自己找到它?谢谢。

1 个答案:

答案 0 :(得分:2)

您观察到的问题并不是coldStart特有的问题,而只是错误地使用net-snmp的snmptrap命令的问题。如果你在没有参数的情况下调用“snmptrap”来查看使用信息的底部,你会看到:

  -v 1 TRAP-PARAMETERS:
         enterprise-oid agent trap-type specific-type uptime [OID TYPE VALUE]...
  or
  -v 2 TRAP-PARAMETERS:
         uptime trapoid [OID TYPE VALUE] ...

您在参数中指定了-v 2c,因此snmptrap需要第二种形式。也就是说,在目标地址之后需要两个参数(在您的示例中为otherLinuxSystem):sysUpTime.0的值和将包含在陷阱中的snmpTrapOID.0的值(我怀疑在第二个示例中交换了参数)。

第一个表示陷阱何时发生,第二个表示陷阱本身。两者都是所有SNMPv2c / v3陷阱中的必需变量;只是发生了net-snmp的snmptrap要求你指定这两个(而不是,例如,如果未指定,则默认为主机的sysUpTime.0正常运行时间。)