-
Type:
New Feature Request
-
Resolution: Unresolved
-
Priority:
High
-
None
-
Affects Version/s: None
-
Component/s: None
-
None
When two or more SNMPv3 hosts polled by the same Zabbix server or proxy present an identical snmpEngineID, polling becomes unreliable or fails entirely. That is because the underlying net-snmp USM layer caches engine boots/time and localized keys per engineID. When two different IP endpoints response with the same engineID but different engineBoots/engineTime values, the library treats responses as out-of-time-window or spoofed and discards them.
Please conside one or more of the following:
- Isolate SNMPv3 USM state (engineID/boots/time cache and localized keys) per host interface rather than per poller process, so that duplicate engineIDs on different IP:port endpoints do not collide. Since Zabbix 7.0 introduced its own asynchronous SNMP polling implementation, this may now be feasible without being fully constrained by net-snmp's shared LCD behavior.
- Alternatively, provide a per-interface or per-host option (e.g. a macro or interface flag) to disable engineID caching / force engine rediscovery per request for affected hosts, accepting the minor overhead.
- If neither is feasible short-term: add anti-affinity rules to proxy groups (e.g. "these hosts must never be assigned to the same proxy"), so HA pairs can at least coexist with automatic load balancing.