We’re in the process of moving DHCP service to our IPA LDAP server. IN our environment it makes sense to include DHCP as part of our centralized system management scheme, which is based on IPA. We seem to be getting about a DHCP request per second, so I don’t see this causing a performance problem.
As part of this I’ve created a plugin file that defines most of the DHCP commands (global config, subnets, hosts, groups, and pools — not IPV6, classes or subclasses, but they wouldn’t be hard to add following the examples in the file). Because adding a subnet requires restarting the server, I’m concerned about changes in LDAP having errors that would prevent a server start. For that reason, the plugin writes a file with the object whose configuration is changing, and calls dhcpd in test mode to verify that the configuration is OK. If not, the error information is returned to the user. This isn’t necessary for host entries, as they are read directly from LDAP. So changes that have to be checked are comparatively rare.
We don’t currently using dynamic address allocation, so we don’t have to worry about coordinating leases. If we did, we’d using the DHCP server’s standard mechanism, and wouldn’t try to put leases into LDAP.
freeipa-users@lists.fedorahosted.org