Introduction: A Remote Dynamic IP Tracker for (almost) Free!

There was a time (in the good old days) when dyn.com provided some basic dynamic dns functionality for (almost) free.

This has led to the situation where many router manufacturers have made their routers such, that ONLY dyndns accounts from dyn.com can be used to publish the WAN address of the router.

The fact that dyn.com now charge substantial money (JUST $40 per year?!) to provide their services, has tempted me to develop an alternative way to know the WAN-IP of the router on my holiday-home to be able to reach the device for maintenance when I'm at home.

The program is designed to be used on an Arduino with an Ethernet shield, and has been tested to work fine on a Mega and Uno board.

This dynamic IP tracker will cost you a lot less than one year of dyndns service, and will last much longer.....

Step 1: Get Yourself an Arduino and an Ethernet Shield

In order to run your very own dyndns information service, you will need to lay hands on an Arduino Board (The Mega and Uno boards have been tested) and you'll need to have the Arduino Integrated Development Environment installed.

The Adruino Sketch that is included in this instructable provides debug code to be able to see what's happening through the serial monitor of your Arduino IDE, but in order to use the debug functions you'll have to de-REM the lines you'll want to see on the monitor (like to see what is coming from the webserver...)

Step 2: Mount the Ethernet Shield on the Arduino Board

When you have mounted the Ethernet Shield onto your Arduino board, the total rig should look like the picture.

You may now want to connect the USB cable and the Ethernet cable to the equipment to start working.

Step 3: Setting Up Your Webpage for Testing

The textfile included in this instructable shows the PHP code to be included in the webpage you will use to get the WAN ip address of your internet-connection to be tested.

Please be aware that the webserver page will need the .php extension, and that your webserver will have to be able to execute PHP code.

The .ino file with the sketch to be used as a start shows you the url of the little serverpage I have set up to cater for my need to test the wan-ip.

Please feel free to use it for your own test, but please do not swamp my little server with millisecond interval request-repeats :-)

The picture shows what has to be visible on the webpage, the simpler you keep the page, the more reliable the service will be.

Step 4: Adapt the Arduino Sketch and GO!

You ill need to add the following specific items to the sample sketch to make things work for you:

* Add the smtp server you will use to get your reporting mails sent. Please be aware that no authentication or encryption is provided in the sketch.

Most cableproviders will allow you to do this when you are on their segment and use their smtp server.

* Add your FROM mailaddress and the TO mailaddress instead of the you@ examples provided

* When you have installed your own testpage, change the example url in the ddnsserver string toshow your url.

You can now compile and load the sketch to your Arduino board, and start following the WAN IP address of the location you want.

When you want to see what's going on, you can use the serial monitor to do so.

Once started, this dynamic IP tracker will check for a change in IP once every 30 minutes, and report with an e-mail if the IP address has changed.

Have fun saving at least $ 40 a year!