Network discovery uses default "public" instead of configured SNMP community

Started by justrest, September 09, 2026, 12:20:44 PM

Previous topic - Next topic

justrest

Hello,

I'm running NetXMS 6.2.4.

Network discovery does not use the SNMP community string (stonewell2000) configured in SNMP credentials. It always uses the default "public" instead.

Every discovered device needs manual correction of the SNMP community string before it can get SNMP data properly.

Please help check this issue. Thanks so much.

Alex Kirhenshtein

Hi,

Confirmed bug, not a configuration problem - your community is configured in the right place. Filed as https://github.com/netxms/netxms/issues/3639

Discovery does try the communities from Network Credentials and does find the working one, but it is discarded before the node object is created, so every discovered node starts on the default "public". Affects all versions since 6.1.0.

Normally this repairs itself: the configuration poll that runs right after node creation tests "public", fails, falls back to the credentials list and writes the correct community back. It does not repair when the device answers "public" as well - the poll tests the node's current community first and stops as soon as it gets any response. That is most likely what you are hitting, since it happens on every device. Worth confirming on one:

nxsnmpget -v 2c -c public 10.61.200.26 .1.3.6.1.2.1.1.2.0
Anything other than a timeout means the device accepts "public" and the automatic correction will never kick in.

Correcting the community on the node stays the workaround until the fix ships - Node::setSNMPCommunity() is available in NXSL if you want to fix existing nodes in bulk.

Unrelated: SNMP.Agent.CommunityString is the community for the server's own built-in SNMP agent (disabled on your server), not for polling, so it has no effect on discovery.