I am in charge of SNMP module in an embedded Linux-based NAS (Network Attached Storage). The SNMP module is net-snmp-based, wrapped by customized OIDs. It works fine before I took over it. I added handlers of some new OIDs and built it. The strange phenomenon occurred:
- It works fine at my x64_g3 platform against iReasoning MIB Browser, Paessler's SNMP Tester and PRTG.
- When I tested it at arm64rt platform: 2.1 iReasoning MIB Browser works fine. 2.2 when testing against SNMP Tester or PRTG, the SNMP module prompted lots of "Error: Connection failure: Connection refused". I analyzed it using WireShark, I found the response status of the OIDs which cause the above error message are "No such instance".
Reference data:
- It's built from same source, either at x64_g3 or arm64rt platforms. The codes of either net-snmp or customized modules are high level C programs. In my opinion, the behavior shouldn't be different in the two platforms.
- I can't locate the source codes which prompted " Error: Connection failure: Connection refused". It could be the whole message is not an literal string among the source files. It could be combined at run-time, hard to locate it.
I can turn on net-snmp's debugging message, but I don't know how to figure out such issue. Any idea to help me?