Dynamic DNS update from .C# and .net

I was setting up a local server at home and wanted it to be publicly accessible from a domain name. Unfortunately my ISP refuses to give a static IP and my only option was to use a dynamic DNS server. After checking some out I decided to go with ZoneEdit.

The setup process for smooth but I still needed a script to update the dynamic IP assigned to my connection with ZoneEdit. I wrote this script in C# and set it up to run every 1 min on the system. Hope you can find some use for it.

string Domain = "*.mydomain.com";
string URL = "http://dynamic.zoneedit.com/auth/dynamic.html?host=" + Domain + "&dnsto=" + IP.ToString();
HttpWebRequest HWR = (HttpWebRequest)HttpWebRequest.Create(URL);
HWR.Method = "GET";

SetBasicAuthHeader(HWR, "USERNAME", "PASSWORD");
StreamReader SR = new StreamReader(HWR.GetResponse().GetResponseStream());
string Response = SR.ReadToEnd();

SR.Close();

This is just the core snippet. There was more code around it but I have stripped it to keep it simple.

Replace
1) mydomain – with your domain name
2) USERNAME & PASSWORD – with your zoneedit username and password

Hope this helps you.

Leave a Reply

Your email address will not be published. Required fields are marked *