Have you ever attempted to host your own site only to discover that you need nameservers to point your domain name to? And then you discover that you cannot simply create your own DNS server to point at because registrars require at least two nameservers with different IP addresses. Then you need to check out EveryDNS.
They offer free nameservers, along with a variety of other tools. I’ve checked out other free nameserver sites, but they either never offered a dynamic update service or they just simply didn’t pass the test at DNS stuff. But these guys have a great service, and they are truly free to use!
After making your account and entering in your domain name, you will need to point your name from your registrar to their NS addresses. Once they’re pointed at their servers, you have the complete control over all DNS settings for your domain; including CNAME settings, MX records, and A records. Download their Linux client for dynamic updates and you’re all set! Personally I set up an entry in my crontab to run the linux client on an hourly basis to help combat downtime when there may be any changes to my IP.