Getting DD-WRT to Dynamic DNS properly to DNS Made Easy

UPDATE: See the comment at the bottom for something easier to try.

For those that have read my article on DNS Made Easy, you know that I love it. One fee, and DNS that isn’t terrible!

Previously I had used no-ip.com to get Dynamic DNS. But that was annoying because left and right they tried to hook you with some “monthly package deal” and demanded you log in regularly if you didn’t pay. If you didn’t log in every 30 days, they would cancel your DNS records.

DNS Made Easy, on the other hand, is a FULL dns service which ALSO has Dynamic DNS. The only problem is that it’s not on the “standard” list of Dynamic DNS providers.

Screen Shot 2013-08-11 at 11.21.18 AM
Notice DNS Made Easy is definitely not listed.

So in order to make this work properly, you have to get a little inventive. I was unable to make this properly work from within the Web GUI, maybe you’ll have better luck. I did, however, have success with this crontab entry:

*/2 * * * * root wget -qO - "http://www.dnsmadeeasy.com/servlet/updateip?username=[USERNAME]&password=[DNSPassword]&id=[DDNS ID]&ip=`wget -q -O - http://checkip.dyndns.org|sed -e \s/.*Current IP Address: //\ -e \s/<.*$//\`"

The holdup, as I learned, was that DD-WRT’s bastardized version of wget does not work (at all) without an http:// prefix on your URLs. Furthermore, it does not print any error at all. It just sits there and does nothing.

Regardless, place that in your Administration->CRON section and then execute:

stopservice cron && startservice cron

in your commands. You should be set to go! This updates every even minute (as that’s what */2 means). For more about this, you’ll have to know about cron and whatnot.

4 thoughts on “Getting DD-WRT to Dynamic DNS properly to DNS Made Easy”

  1. dd-wrt has the ability

    DDNS Service: Custom

    DYNDNS Server: http://www.dnsmadeeasy.com

    Username: your dnsmadeeasy username

    Password: Password you specified in the dynamic A record

    Hostname: The ID from DNSmadeeasy dynamic a record 11619577

    URL:/servlet/updateip?username=USERNAME&password=PASSWORD&id=DOMAIN&ip=

    and way you go..

    1. Thanks! I’ll check that out. What source of documentation do you use to find this? Doesn’t the Username/Password refer to HTTP authentication?

      I suppose it’s trivial to test using a simple php script.

Leave a Reply