Apparently, XP will cache nameserver lookup errors. This is really stupid. I was making some changes last night and adding some entries to zones. I forgot to restart named, and was getting errors when attempting to connect to the host by name. I restarted named, still no joy, and then I started browsing logs to find out what I had mis-configured. I spent five minutes looking at everything before realizing named was fine, it was the client that had the issue.
It was only five minutes, but I’ll never get it back. I wonder what genius thought that was a good idea? I realize the client is acting like it’s own nameserver, as it uses the TTL from the domain to refresh the info, and have no problem with that. It’s the caching of errors which is stupid.
ipconfig /flushdns is your friend, should you ever run into this. ipconfig /displaydns will show a complete list of all the info in your DNS cache. I was surprised by how much info was in the cache – there’s potential there for people to track where you’ve been going from the cached lookups if you leave your computer on all the time. Clearing all the normal stuff (history, cookies, file cache, etc.) won’t clear the resolver cache, which contains a list of everywhere you and your browser have gone. Food for thought.
See also: netsh