ADSL users with dynamically allocated addresses can use the service of DynDNS to have a "static" DNS record point to their IP. DynDNS provides several clients for a number of platforms that can access their service and update the DNS record every time the PC boots with a new IP. The specification for using the DynDNS service is open to the public, so I decided to write my own client.

The DynDNS record updates consist only of a single HTTP GET request and such a simple task should not require much coding. Actually I wanted to keep it very simple and easily adjustable. For this purpose I choose to write it in a Windows batch script since the command prompt (CMD.EXE) is available on all Windows platforms and requires no configuration or special setup. I didn't want to use VBScript, WSH or anything like that since these scripting implementations are quite unsecure/buggy and a number of security advisories suggest to disable them. On the contrary the plain old batch scripting is available in most Windows environments.

A drawback of this choice is that a batch script cannot issue HTTP requests on its own, so I had to use an external tool for that. Of course my choice for this was wget which is imho the most popular command line tool for HTTP requests. Smile

The usage of the batch script is quite straightforward. It has a number of adjustable parameters with detailed descriptions at the start. Most users will have to set only the first three parameters (dd_username, dd_password, dd_hostname).

I do not promise to support this stuff anymore (since I use an ADSL router now which supports DynDNS updates by itself), but if you've got a problem, then add a comment here (or send a message through my contact form) and I'll see what I can do. Smile

mddns-1.2.cmd16.85 KB