Feed Icon  


  • Bryant Likes
  • Send mail to the author(s) E-mail
  • twitter
  • View Bryant Likes's profile on LinkedIn
  • del.icio.us
Get Microsoft Silverlight
by clicking "Install Microsoft Silverlight" you accept the
Silverlight license agreement

Hosting By

Hot Topics


Open Source Projects



Running a Home Office Web Server with a Dynamic IP

Posted in General | Windows Server 2008 | Community Server at Tuesday, February 10, 2009 2:19 AM Pacific Standard Time

I’ve blogged about my server closet in my home office before. I used to have three servers running in my home office and for Internet service I had AT&T DSL with 5 static IP addresses. That all changed by accident when I was looking into current pricing and found I could upgrade my speed and I would get a lower cost. However, someone over at AT&T DSL misread my order and changed me from static to dynamic, so yesterday morning I got knocked offline. I spent over 2 hours on the phone with them and they told me it could take up to 48 hours before they could get me static IP addresses again. So I started looking into getting my blog back online with a dynamic IP.

One of my goals for last year was to outsource most of my home network to external servers because I didn’t like dealing with it. So last year I did outsource email to Google Apps, DNS and some websites to Godaddy, and Subversion to Dreamhost. Because of that I was able to downsize to a single server which I run a few websites on. I also had been having network speed issues so I had just purchased a new router+dsl modem, the D-Link DSL 2540B which happens to support Dynamic DNS.

Setting it up:

  1. You need to make sure your router supports Dynamic DNS and you need an account with a Dynamic DNS service. I used dyndns.com since they have free accounts. I setup mine to be bryantlikes.dyndns.org.
  2. Delete the A record for your DNS (if you have one) and then create a new CNAME for your domain that points to the Dynamic DNS name. So, for example, blogs.sqlxml.org has a CNAME that points to bryantlikes.dyndns.org. If you have other CNAME records already (for example, www), then point those to your dynamic DNS entry as well.
  3. Forward port 80 to your web server in your router settings. This is different for each router, D-Link calls it Virtual Servers under the advanced tab.

At this point your website should be available from the Internet. However, internally you won’t be able to hit it. The port forwarding only happens from the WAN interface and not the LAN one. In order to get it working internally you have to take a couple more steps.

  1. Setup DNS on your web server if it isn’t already on there. Then add a new domain for the domain that you used in your dynamic DNS. For example, I added the bryantlikes.dyndns.org domain and then created an A record for the root that points to my web server’s local IP address.
  2. Make sure your DHCP clients all point to your web server as their DNS. It is the only DNS Server that redirects the dynamic DNS entry to your local server.

That’s it! You should now have your dynamic IP serving up web pages both internally and externally. This caused me a bunch of headaches and googling yesterday so I thought it was worth blogging about. I glossed over lots of setup in each of the steps so if you want more information let me know and I’ll try to add it.

Tuesday, February 10, 2009 7:39:13 PM (Pacific Standard Time, UTC-08:00)
Thanks for sharing this, Bryant. Great information and written in a clear, direct style.
Lee Reed
Tuesday, October 13, 2009 6:09:26 PM (Pacific Daylight Time, UTC-07:00)
Hi Bryant

Great to see others who who want to run stuff from their own home.

Its not that difficult when you know how, but I think that A records and CNAMEs and the like must really put people off.

A simple thing for Windows - edit the hosts file and add your "well-known" domain name and the local LAN IP address on all machines on the inside - then they can always browse to the server using the name, not the IP address. This has served me quite well.

As soon as I take my laptop outside of my local network, I just remark (put a #) in front of the entry that points to my home server, and the good old Internet does the rest!

Dyndns has been good to me too - love their service and their automatic client update tool always keeps my domain name and dynamic IP address in sync.

Looking forward to more!

Comments are closed.