linkDown SNMP陷阱没有所需的varbinds

时间:2017-07-10 07:36:56

标签: snmp cisco snmp-trap networkmanager

有两种类型的linkDown警报

linkDown(CISCO-GENERAL-TRAPS)1.3.6.1.2.1.11.0.2 linkDown(IF-MIB)1.3.6.1.6.3.1.1.5.3

来自CISCO-GENERAL-TRAPS mib的

linkDown包含以下varbinds 1.ifIndex 2.ifDescr 3.ifType 4.locIfReason

来自If-MIB mib的

linkDown包含以下varbinds 1.ifIndex 2.ifAdminStatus 3.ifOperStatus

但是我从ME1200设备收到的linkDown有以下varbinds 1.IfIndex 2.IfDesc 3.IfType 的 4.lifTable ,由于SNMP陷阱不包含locIfReason和IfAdminStatus,我无法处理此linkDown陷阱。 lifTable varbind包含Admin Status相关信息,但我的问题是为什么locIfReason和IfAdminStatus varbind都不可用?如何从设备获取IfAdminStatus varbind?

2 个答案:

答案 0 :(得分:0)

linkDown linkUp 陷阱是通用。这些陷阱在标准RFC中定义,并具有预定义的变量绑定集:

    linkDown NOTIFICATION-TYPE
    OBJECTS { ifIndex, ifAdminStatus, ifOperStatus }
    STATUS  current
    DESCRIPTION
            "A linkDown trap signifies that the SNMP entity, acting in
            an agent role, has detected that the ifOperStatus object for
            one of its communication links is about to enter the down
            state from some other state (but not from the notPresent
            state).  This other state is indicated by the included value
            of ifOperStatus."
    ::= { snmpTraps 3 }

linkUp NOTIFICATION-TYPE
    OBJECTS { ifIndex, ifAdminStatus, ifOperStatus }
    STATUS  current
    DESCRIPTION
            "A linkUp trap signifies that the SNMP entity, acting in an
            agent role, has detected that the ifOperStatus object for
            one of its communication links left the down state and
            transitioned into some other state (but not into the
            notPresent state).  This other state is indicated by the
            included value of ifOperStatus."
    ::= { snmpTraps 4 }

思科不应该修改这些陷阱,因为它是不允许的。相反,他们应该定义所谓的企业特定陷阱。

答案 1 :(得分:0)

CISCO-GENERAL-TRAPS的OID(实际上是CISCOTRAP-MIB?)linkDown似乎不正确。另外,我找到了一个SMIv1 TRAP-TYPE定义,而不是NOTIFICATION-TYPE,这意味着它是用整数(不是OID)定义的,其OID将由RFC 2576转换规则确定。在我发现的SMIv1 MIB中,他们的linkDown版本是用ENTERPRISE" snmp"定义的,(正如Andrew上面所述)意味着他们宁愿重新定义该MIB中的标准陷阱;他们应该使用他们自己的企业OID,这将使其独一无二。

RFC 2576转换规则要求使用ENTERPRISE" snmp"被映射到标准OID之一。根据这些规则,1.3.6.1.2.1.11.0.2将不是CISCO-GENERAL-TRAPS的正确OID:linkDown,它将与标准(1.3.6.1.6.3.1.1.5.3)相同。

也就是说,如果模块已导入(或以其他方式定义" snmp"标准OID),但它没有,所以我只能假设这是MIB的修改版本这已被修复。 1.3.6.1.2.1.11是" snmp"的OID,因此如果根据陷阱其他的规则转换,则1.3.6.1.2.1.11.0.2将是OID than ENTERPRISE" snmp"。除了重载标准陷阱的定义之外,它还在某处被错误地转换了。