Implement a way to disable Reverse DNS lookups
Description
Environment
Acceptance / Success Criteria
Lucidchart Diagrams
Activity
Brynjar Eide October 1, 2018 at 4:05 AM
When rescanExisting is false or dbonly, the only reverse DNS lookups seem to originate from SaveOrUpdateOperation.java, which tries to look up the hostname of the primary SNMP interface.
As far as I can tell, these hostnames will only ever be stored when rescanExisting is dbonly
, since IPInterfaceTableTracker.java and/or IPAddressTableTracker.java will override whatever hostname is saved during the auditing Auditing Phase
when rescanExisting is true
(or false
for new nodes).
Nevertheless, this behaviour can be disabled by disabling an undocumented property called org.opennms.provisiond.reverseResolveRequisitionIpInterfaceHostnames, which currently defaults to true
.
As for this particular issue, it could probably be solved by documenting the existing setting, but I'd say the current implementation doesn't seem to be ideal.
Details
Details
Assignee
Reporter
Doc Backlog Status
Doc Backlog Grooming Date
Components
Affects versions
Due date
Priority
PagerDuty
PagerDuty Incident
PagerDuty

There's currently no way to disable Reverse DNS Lookups performed by o.o.n.p.s.DefaultHostnameResolver when forwarded to minions and by o.o.n.p.d.c.r.DnsLookupClientRpcModule when not forwarded.
Furthermore, when a node is added through a requisition and with a nodelabel set, the result of this Reverse DNS lookup is not used at all, so it is completely unnecessary.
Finally, everytime you synchronize a requisition, reverse DNS lookups are performed for every node in the requisition even while using RescanExisting = false. This is also the only moment in which they are performed.
In a scenario of thousands of nodes added with large requisitions, all of these things combined have a really negative impact for the provisioning adapter.