ZenDMD Tip - Zet manageIp via Host Lookup (A record)
From Zenoss Wiki
This is the approved revision of this page, as well as being the most recent.
The following code will iterate through all devices and perform a lookup of the IP. If the devices manageIp attribute doesn't match its A record it will be updated. Set makeChanges = True if the script does what you expect.
debugIt = True makeChanges = False for d in dmd.Devices.getSubDevices(): sync() ipAddr = socket.gethostbyname(d.titleOrId()) if d.manageIp != ipAddr or debugIt == True: print 'Device ID: ' + str(d.titleOrId()) print 'Device current IP: ' + str(d.manageIp) print 'Device new ID: ' + str(ipAddr) if makeChanges == True: d.setManageIp(ipAddr) print 'IP to: ' + str(ipAddr) commit() else: print 'IP to: Unchanged' print '-'*80