Dynamic DNS updating – no PC required

arduino_ddns

[Boris] from Open Electronics recently wrote us to share their latest creation. Like many of us, he uses DynDNS to keep his home network a FQDN’s reach away. While DynDNS is quite a convenient service, many people don’t like the idea of leaving their computer on all the time to keep the IP updated. That’s where the Arduino DDNS module comes into play.

Built using a standard ATMega328 with the Arduino bootloader installed, the module periodically checks to see if the user’s IP has changed, updating the DynDNS entry as needed. The Arduino talks to the network via a WIZnet Ethernet breakout board, contacting DynDNS’ servers to check and update the user’s IP over a series of standard HTTP requests.

We are aware that several router firmware packages such as DD-WRT have this functionality built-in, but this project makes for a nice alternative when those resources are not available.

As always, a bill of materials, PCB layouts, and Arduino Sketch code are all available for download over at the Open Electronics site.

Comments

  1. Scott says:

    now THAT’S clever!

  2. sneakypoo says:

    The last four routers (Linksys, D-Link, Thomson and … dammit what was it, bleh, can’t remember) I’ve owned had this functionality built in with the standard firmware. I thought it was sort of a standard thing to have.

  3. Joey Joe Joe Shabadoo says:

    I can’t think of a single router on the market that doesn’t have this built in already.

  4. MrP says:

    Well done project. Maybe not the most cost effective way to do it, as almost all modern routers have this built in, but it can be a nice learning tool that can be reused later.

  5. nes says:

    Nice, but if his computer’s off why does he need a FQDN? Can the AVR switch it on when it’s needed?

  6. cdkr says:

    Pretty cool,
    but yeah i agree, all the last couple of routers i’ve had, have had that functionality in the stock firmware.
    Not that I ever used them much, as they where all promptly flashed with DD-WRT or tomato, or replaced with somthing that could run it.

  7. ds2ktj says:

    My 5 year old WRT54G has it built in….but this is an interesting project still.

  8. tim says:

    Very nice project, but if you are connected to internet you have a routeur, and all routeur have this built in.

    anyway interesting for learning.

  9. MrBishop says:

    Like others have said, its pretty standard for most of us. But I like the concept, and I can just think of other ways we could use this mini DNS updater. Just wondering, does anyone know a way to get DynDNS be to allowed behind a firewall you can’t port forward on? I am currently living at a university and want to be able to access my files form elsewhere, remote in, acess my personal web-server (its private), ect.

  10. Gregg says:

    @ds2ktj: So does mine,which is a WRT54G2. And it is an interesting project.

    However the one thing that most people aren’t aware of is that the DDNS people, in this case the largest of the providers, which is DynDNS wants people to run some sort of wizard on their hosts to automatically update them. Even if the router does do that. The one I use fortunately provides several different binaries, including one for Linux and Solaris on SPARC.

  11. bemis says:

    While it is built into many routers, not all routers support the DDNS service you might choose to work with.

    Specifically, the Verizon FIOS router that I have does not work with no-ip (or at least, didn’t last time I looked).

    I could use my own router w/ the service, but then I lose caller-id and remote DVR functions if I hide the Verizon router behind my own.

    I can see this as being useful in certain situations.

  12. GameboyRMH says:

    A lot of factory routers only use the DynDNS service provided by the manufacturer, but open source firmwares like DD-WRT definitely support regular DynDNS. Still, this is a cool idea, and could perform other useful network services that don’t require a lot of computing power: Tor exit node, SSL notary, VPN host, etc.

    @MrBishop: DynDNS itself works fine without port forwarding, getting back into your network using that address is another matter…if you can’t port-forward you’re out of luck. The only other thing you could try is setting up a VPS and using a VPN or reverse SSH tunnels to route traffic from that VPS to your home (dorm?) server.

  13. Mike Nathan says:

    bemis, I agree.

    To be honest, the last router I purchased didn’t have a DDNS option though that was a while ago. Once I flashed it with DD-WRT, I was good to go.

    Since then, I switched from Comcast to ATT U-verse, and their Residential Gateway (also the router) has no ability to utilize DDNS that I have seen.

    That said, I leave my computer on 24×7 anyhow, and I simply use the DynDNS client. If I didn’t, something like this would do the job nicely.

  14. Roberto says:

    I dont see the point of having DynDNS without having an active server (usually a powered on Linux PC) inside your house LAN.

  15. YaBa says:

    Most of the routers use DynDNS and eventually No-IP, however, this may be a good start to use other providers that routers manufacturers doesn’t like. Nice hack.

  16. HackerK says:

    I agree with DDWRT and most router has this feature build in. But I look at this as an interesting sample for those who if you are learning how to use uC to interface with network, HTTP protocol etc. A similar project I have in mind is a standalone device to use a DS3231 and ntp to act as a stand alone time server on the network.

  17. mark says:

    Perhaps it could also be used to broadcast wake-on-LAN packets?

  18. Chris says:

    Nice !
    i’d like to see some wake-on-lan relay that could be connected to set-top boxes that don’t have this functionality.

  19. yetihehe says:

    If you don’t run your computer at least once a month, you don’t really need a dyndns account. If you run it more often, just get a script which runs when system starts. It’s just a matter of pinging one site and it’s done.

  20. zombiejebus says:

    Neat. I like the fact that the project has some documentation; given the fact that a lot of commercial routers have some dynamic dns feature built in; or dd-wrt /pfsense/m0n0 have this built in. .or that any computer thats always on can do this. .or that a linux based nas device or similar can be setup to do this. .or your 20 year old mac/pc/etc can be setup to do this. . eh.

    makes me wonder what the total part cost is to build one of these. You could probably find a super cheap dd-wrt capable router and set it up just to be a dyndns client device for ~40 dollars. Might be a better solution simply due to the device having a case + power supply.

  21. drn74 says:

    Nice tool usefull!

  22. AC says:

    Almost all the consumer routers already support DynDNS and TZO (especially the cameras). A few still support no-ip and some other small providers.

    What’s interesting though is you might have a router-less network with just a camera (a dumb one without DDNS). Here, that works fine.

    Also, you could combine this with some event based on IP change (wake on lan or flip a power switch).

    I’ve looked at the code though, and it does not implement DDNS correctly. There’s a lot of stuff you need to do besides watch for an IP change and post an update (and assume it works).

    This is a neat toy, but use a more complete updater if you depend on the domain not getting blocked.

  23. Pilotgeek says:

    Me gusta.

  24. Phaux says:

    Actually, something like this would be useful to me because I don’t have a router on my network that has this feature.

    Though my arguement is invalid, because I have a linux box acting as my router, therefore I have a computer that’s on 24/7 that can update my domain.

    Now, a valid reason to do this, would be on a Arduino project that uses a GSM shield and is remote. Say, a weather balloon or similar.

  25. Mike says:

    Wow, a dozen or more comments all saying how they don’t need this. Good Job. The fact that it is useful to a minority doesn’t make it useless, and really the same could be said about most projects here.

    If nothing else, I like the pcb layout that I could use for other sketches. Thank you, Boris, for including a nice parts list, sketch, and pcb layout. Nice work.

  26. Giuseppe says:

    Useful, but many modern ADSL modems already implement this function.

    Giuseppe

  27. Stevie says:

    I dont get it. What’s the point in having the DDNS updated with your IP if there’s no computer actually turned on and using that IP anyway? What a ridiculous thing.

  28. Rick says:

    Those that say why use this if you do not have a computer.. I need something just like this for my fathers cabin. The provided ISDN modem does not have DDNS and I have a IP camera that only uses a pay service. I wanted to use it with DynDNS, but to do so I had to place a DDWRT router JUST for DynDNS functionality. Waste of a DDWRT router in my opinion.

    So bravo.

  29. Every time I’ve used the DynDNS updater built into my routers/modems it’s gotten my host blocked for updating it when the IP hasnt changed :(

  30. Cookiesworld says:

    If you live in the UK and have a Virgin media super hub, you do not have dyndns built in. Virgin actually removed it when they re-branded a linksys router.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 92,427 other followers