org.snmp4j.MessageException: Cannot assign requested address: Datagram send failed

Problem background

When I tested sending SNMP Trap V3 version alarm data locally, the program reported the following error:

org.snmp4j.MessageException: Cannot assign requested address: Datagram send failed
    at org.snmp4j.MessageDispatcherImpl.sendPdu(MessageDispatcherImpl.java:514)
    at org.snmp4j.Snmp.sendMessage(Snmp.java:1005)
    at org.snmp4j.Snmp.send(Snmp.java:885)
    at org.snmp4j.Snmp.send(Snmp.java:878)
    at org.snmp4j.Snmp.send(Snmp.java:843)
    at mirale.luna.snmp.trap.SnmpSendTrapV3.sendPDU(SnmpSendTrapV3.java:80)
    at mirale.luna.snmp.trap.SnmpSendTrapV3.main(SnmpSendTrapV3.java:88)

Insert image description here

problem causes

When setting the Trap receiver address, the IP was set to 0.0.0.0 , which resulted in an error!

Address targetAddress = GenericAddress.parse("udp:0.0.0.0/162");

solution

Because it is a local test to send and receive Trap alarms, just change the receiver IP from 0.0.0.0 to 127.0.0.1.

After modification:

Address targetAddress = GenericAddress.parse("udp:127.0.0.1/162");

The SNMP Trap V3 alarm data can be successfully sent.
Insert image description here


Guess you like

Origin blog.csdn.net/aikudexiaohai/article/details/133509389