« Macworld 2008 Show NotesDrupal installation on milton.com »

DIY Dynamic DNS

02/18/07

Permalink 11:42:23 pm, by Stephen Email , 349 words   English (US)
Categories: Open Source, Sysadmin Tricks

DIY Dynamic DNS

Since I control a server with a real public IP address, as well as having various computers that are assigned dynamic IP addresses, I wondered if I could setup my own dynamic DNS system similar to dyndns.org. I found an open source project called GNUdip that fit the bill.

The docs on GNUDIP were adequate for the installation, but I ran into a few things I had to do differently. The basic steps are as follows:

  1. Pick a server with a real public IP
  2. Disable or set to non-enforcing your SELinux (setenforce 0)
  3. Configure the BIND DNS server for basic operation. I did some special setup here that warrants noting. I setup my existing milton.com domain file hosted on ISOMEDIA's name servers to reference an external DNS server for ddns.milton.com. Here is the relevant section of my milton.com zone file:

    $ORIGIN milton.com.
    ns1.ddns IN A 207.115.64.96
    ddns IN NS ns1.ddns

    This causes any lookups to *.ddns.milton.com to be forwarded to the DNS server at 207.115.64.96 (my personal server).
  4. Configure Apache web server for basic operation (Note: in CentOS apache and bind don't run under the nobody user, they run under apache and named respectively.)
  5. Configure MySQL database server for basic ops
  6. Install GNUDIP tables into MysQL
  7. Configure BIND for secure DNS updates
  8. Edit the gnudip.conf file to reflect your setup
  9. I decided to use web updates exclusively, so I skipped the XINETD setup steps in the GNUDIP docs

So far I have left the public registration methods turned off, so only pre-configured users can update their DNS in my system. If you want me to add you to the system, drop me an email and I can set you up an account such that yourname.ddns.milton.com will always point at your dynamic DNS computer.

PS. If you're wondering why I didn't just use DYNDNS or some other publicly available FREE dns service, you aren't alone. I thought about it, but I prefer to control my own services, not rely on some other company to track my IP address registrations.

The goal for this blog is to have a place to document for posterity all the funky software, hardware, and sysadmin tricks I think up, look up, or mess up. It will also serve as a jumping off point for my own software projects, as well as my test bed for all the crazy open source projects that catch my eye on the net.


Posterity is me. I have a bad memory, and I have forgotten more of these types of tricks than I will ever remember to write down. I've got to start somewhere.

Follow my updates on Twitter

Search

XML Feeds

powered by b2evolution free blog software