This is a simple patch to the DHCP BETA-5.16 from www.isc.org. With this patch, the DHCP server write a simple log /var/run/dhcp-ip.log. Each time it replies to a query, it add to the file the IP number and name of the host. The script dhcp2dns.sh should be run once in a while (every 5 minutes) using the cron. It will read the log and update the DNS and trigger a named.reload. All very simple and effective. The script rely on the dnsconf --setfromip command of linuxconf. This command use the IP as the key instead of the name. It will delete all records associated with this IP (reverse lookup also) and install the new information. This means that the DNS cleanup itself. For example, if an IP number is allocated to a new host, the trace from the previous owner of the IP number will vanish from the DNS. Shortcoming of this strategy ============================ -The DNS must be on the same server and the DHCP server. With the remote management system and the concept of virtual server in linuxconf (stay tuned), this won't be true anymore. -The domain name must be entered in the script at the beginning. Normally the fully qualified name of the host is available in the DHCP server, but I have failed to locate the information so for now you must enter this in the script. -The DNS is updated asynchronously. Not that much of a problem but ideally, this could be automated. Maybe the dhcp server could do a dns lookup to find out if the IP of the host is the same. If not linuxconf could be called immediatly to do the job. This trick would solve the problem below -the DNS is updated for no reason. The dhcp server is updating the log all the time. And linuxconf update the DNS blindly without checking if the DNS already have the proper information. The serial number is changing uselessly. Not that a problem, but could be better. This patch is in use at various place. Give it a try and get back to me at jack@solucorp.qc.ca