Power Pack 3 improves WHS when using OpenDNS

by Alex Kuretz on December 12, 2009 · 1 comment

in News

opendns-400-400

The Windows Home Server Blog is featuring a guest article by a member of the WHS team that describes a long-lived issue with Windows Home Server and the popular OpenDNS and other similar services. When users or their Internet Service Provider switch to using OpenDNS, this can cause connection failures between the clients and the server. It can also make it impossible to configure a new client to work with Windows Home Server.

The root cause behind this is the name resolution solution mechanism of OpenDNS does not work well with windows home server. When a home computer looks for resolving the IP address for a computer name (for example, your home server), it follows the steps below:

1. It looks up the HOSTS file in the system. If not found, going to step 2.

2. It consults the DNS server for the name. If not found, going to step 3.

3. It asks NETBIOS if there is a name exists in local network.

The home server connector software depends on step 3, because the Windows Home Server is located in the local network and shouldn’t be resolved by any DNS server. However it never has a chance to go to step 3 because OpenDNS will always respond ”yes” and point to an external IP in step 2. As a result, your connector software would try to connect to an external IP, which always results in failure.

In Windows Home Server Power Pack 3, the problem is addressed and resolved. The solution is simple: the connector service running on the home computer updates its HOSTS file, adding an entry for the Windows Home Server in the network. The IP address in the entry is what windows home server announces via UPnP broadcast. The workflow is as follows:

1. Connector software gets the home server IP from UPnP.

2. Connector software tries to resolve the home server’s name via DNS name resolution.

3. If the IP from UPnP matches the IP from DNS name resolution, it’s taken as the real IP address of the home server.

4. If they don’t match, connector software knows there is potentially an OpenDNS problem in the network. It will update the HOSTS file on the home computer by adding the home server entry (with the IP from UPnP) in this case.

Looking at the steps above, there is a question though: why doesn’t the client just connect to the server by the IP it gets from UPnP? In most cases this will work, but unfortunately in scenarios related with Windows Home Server’s certificate, it will not work because certificates are bound with computer names instead of IP addresses.

This is good news for existing users, however new customers of Windows Home Server will still have issues joining their client PCs to Windows Home Server since all the OEM systems currently do not ship with Power Pack 3. In this case, your best solution is most likely to manually create a hosts file entry to allow your client to correctly locate your server.

If you’re an OpenDNS user and have seen any changes in behavior with PP3, please post in the comments and let us know how things are working out for you.





Article by

I'm Alex Kuretz, and I'm the founder of MediaSmartServer.net. I was the Lead Test and Integration Engineer at HP for the MediaSmart Server until April 2008 when I moved on to other opportunities outside HP. I've kept active in the Windows Home Server community, creating several add-ins and helping users make the most of their Home Servers.


{ 1 comment }

element December 22, 2009 at 2:22 am

Pretty neat. A little late though.

Let’s hope that this feature is built in to Windows Home Server 2 (whenever that’s released) before any power packs are developed for it.

Comments are closed, visit the forums to continue the discussion.

Previous post:

Next post: