Yeah, I’ll be the first to coin the term Vistary. I’ll use it to reflect the many, many issues Vista still has that crop up at seemingly random intervals with no warning or explanation.
Lately, the most enjoyable problem has been intermittent DNS failure requiring a full restart. At seemingly random intervals, I’d be happily plugging away at whatever it was that I was doing, only to have Vista take a crap and refuse to do any more named translations. Here’s a real-world scenario from this morning:
While chatting with Eric Butera on IRC and simultaneously bopping around the web on Chrome, BAM! Once again, the DNS drops out. Aside from my vast, genius-level knowledge of every single aspect of the world around me, how did I know it was just DNS? Elementary, my dear Watson: as in all of the other occurrences, IP-based connections continue to operate normally, while all name-based connections (including connections to MSN’s Messenger service, Gmail, etc.) all start to fail and die off.
For the life of me, I couldn’t figure out what the issue was, nor how to recreate it to debug it. Searching Google did little more than to reveal others who had the same issue, with some suggestions as to what may be the cause and solution (all of which were later denied to solve the problem). My router was fine, UPnP wasn’t an issue, and the parity-error-checking device between the chair and the keyboard was operating at relatively sane levels at the moment.
After getting to the point where this system was about to join its ancestors in the grave, I found my own solution.
Even though I’m using WiFi, which – on here – has no option to share the connection, it was causing an error for some reason. Perhaps something in the networking section of the Windows kernel causes its internal (and proprietary closed-source) BIND-like implementation of a DNS client to die.
Restarting the network interface has no effect.
“Repairing” the network connection has no effect.
The only way to get DNS to Just Work™ again is to reboot the machine…. so it seems.
However, I found that – even though I had my ethernet interface disabled – Internet Connection Sharing (ICS) was still causing the interruption there. So here’s what I did:
Go to Start -> Control Panel [-> Classic View] -> Network and Sharing Center -> Manage Network Connections.
Right-click on any interfaces listed as being “Shared” (even if they’re disabled) and click Properties.
Click on the “Sharing” tab if it’s available. (If not, move on to the next interface in your list and repeat the steps above. If this was your only interface, stop reading…. this won’t work for you, sorry.)
Uncheck the boxes on that panel and click OK.
If you enabled the interface above, don’t forget to disable it again (if you want).
Voila! It’s a hotfix, so if your system was acting up due to a problem with ICS as well, then you don’t have to restart or anything, your DNS lookups will go back to their Just Works™ status. If it’s not immediately back to working, make sure you didn’t disable the interface you were using to access the Internet.