Thursday, August 23, 2007

DNS Web Interface

A long time ago I had searched around for a tool that would let you update DNS through a web interface. There were a few commercial products that wanted to run their own database - but nothing that just made existing DNS infrastructure easier. Sometimes it just doesn't make sense to have folks editing files with vim and hoping that there are no mistakes. I know I am often guilty of adding a forward entry without a reverse too. This was my attempt to solve this problem - and to automate some things that were being done manually. I say make the computers do the work.

This package is a collection of perl CGIs that use Net::DNS to dynamically update DNS. Now in theory this could be any name server, but this was only tested with BIND. You will need to enable dynamic updates to these zones for this to work. You could add in security as well. Here is what it provides:

  • Forward and reverse entries created (and removed) with one simple form - type, click, done


  • TACACS+ authentication of users


  • Audit trail of all entries


  • New records show up instantly - no need to rndc reload or any of that jazz


  • Search tool to look through a zone for an existing record


  • Advanced configuration tool that can allow you to add/delete records such as NS, MX, or TXT




There was also an automated piece to this that would automatically discover and create entries. That was not at all generic so I have not included it. It would be trivial to add your own script to pull from a ordering database or scan the network to find new devices - go nuts.

That's all for now. Comment if you find this useful.