关于snmp4j:SNMP:添加陷阱目标

SNMP : add a trap destination

我对SNMP来说还很陌生,我已经使用snmp4j库在Java中创建了一个SNMP代理。
在我的代码中,我已将localhost添加为陷阱目标。因此,我在端口162上收到了通知:

1
2
3
4
5
6
7
    targetMIB.addTargetAddress(new OctetString("notification"),
        TransportDomains.transportDomainUdpIpv4,
        new OctetString(new UdpAddress("127.0.0.1/162").getValue()),
        200, 1,
        new OctetString("notify"),
        new OctetString("v2c"),
        StorageType.permanent);

我现在想要做的是使用snmp浏览器(例如iReasoning MIB浏览器)从另一个IP地址接收陷阱。但是我无法在目标mib中添加条目。

我错过了什么吗?

谢谢。

编辑:

我想使用mib浏览器将条目添加到目标地址表。使用iReasoning Mib浏览器,我没有创建行按钮,而使用ManageEngine的工具,我没有添加按钮,但它似乎无能为力。

因此,我只在这里尝试更改使用代码创建的行:

以下是mib浏览器的屏幕截图:
Mib

当我尝试更改IP地址时,出现错误:
Set


有关更多信息,我使用NET-SNMP工具解决了我的问题。

我所做的是:

  • 下载net-snmp二进制文件
  • 确保mib位于默认文件夹中(请参阅自述文件)
  • 尝试snmpwalk:

    snmpwalk -v2c -c [READ_COMMUNITY] 127.0.0.1 targetaddrtable

    SNMP-TARGET-MIB :: snmpTargetAddrTDomain.'test'= OID:SNMPv2-TM :: snmpUDPDomain
    SNMP-TARGET-MIB :: snmpTargetAddrTAddress.'test'=十六进制字符串:00 00 00 00 00 A1
    SNMP-TARGET-MIB :: snmpTargetAddrTimeout.'test'=整数:1500
    SNMP-TARGET-MIB :: snmpTargetAddrRetryCount.'test'=整数:3
    SNMP-TARGET-MIB :: snmpTargetAddrTagList.'test'= STRING:v2c
    SNMP-TARGET-MIB :: snmpTargetAddrParams.'test'= STRING:
    SNMP-TARGET-MIB :: snmpTargetAddrStorageType.'test'=整数:nonVolatile(3)

  • 4)做一组:

    snmpset -v2c -c [COMMUNITY_WRITE] 127.0.0.1 snmpTargetAddrTAddress.'test' x 0000000000A1 snmpTargetAddrTDomain.'test' o 1.3.6.1.6.1.1 snmpTargetAddrTagList.'test' s notify snmpTargetAddrParams.'test' s v2c
    snmpTargetAddrRowStatus.'test' i 4

    1
    2
    3
    4
    5
    SNMP-TARGET-MIB::snmpTargetAddrTAddress.'test' = Hex-STRING: 00 00 00 00 00 A1
    SNMP-TARGET-MIB::snmpTargetAddrTDomain.'test' = OID: SNMPv2-TM::snmpUDPDomain
    SNMP-TARGET-MIB::snmpTargetAddrTagList.'test' = STRING: notify
    SNMP-TARGET-MIB::snmpTargetAddrParams.'test' = STRING: v2c
    SNMP-TARGET-MIB::snmpTargetAddrRowStatus.'test' = INTEGER: createAndGo(4)

    snmpTargetAddrTAddress是一个测试