This how to describes how to combine Bind9 and DHCP3 to allow dynamic IP addressing and dns:

I personally used it to set up my server and found that it worked as shown.
The key is that you generate a secret communicate file that is shared between the DHCP and the DNS that allows it to update automatically.

One word of caution, be careful when setting up the TTL values in your DHCP. I accidentally set mine too short on one of the systems and it was renewing the IP address every 4 minutes.