Earlier I wrote about DHCP failover, but there's another thing I thought I might mention that could be useful to others....
I had a problem in that one of my servers' CMOS clocks tends to be a bit off, maybe 90 seconds. When
dhcpd starts up, it is unable to enter a normal failover state because of the time difference between it and the other
ntpdate_enable="YES" ntpdate_flags="-b x.x.x.x"
/etc/rc.conf, along with running
openntpd, but for some reason
ntpdate wasn't setting the clock at boot time, and by the time
openntpd got the clock tuned up,
dhcpd had given up on trying to re-establish failover. Restarting
dhcpd by hand later on always worked OK.
I think what was happening was that the network jack this server was plugged into wasn't coming alive quick enough to be up and running when
ntpdate tried to do its thing. Something to do with the Cisco switch not having portfast enabled.
I don't have access to do anything about the switches, so I came up with the workaround of adding a simple script
/usr/local/etc/rc.d/000.afterboot.sh to schedule a job to run a few minutes after the machine boots - to adjust the clock and restart
dhcpd. It looks something like:
#!/bin/sh at now + 5 minutes <<EOF /etc/rc.d/ntpdate restart /usr/local/etc/rc.d/isc-dhcpd restart EOF
It's a bit of a kludge, but seems to do the trick.