Take the 2-minute tour ×
Server Fault is a question and answer site for professional system and network administrators. It's 100% free, no registration required.

I have a little problem that I can't understand. We developed a new version of an existing website. This was developed locally, then transferred to a new server. The final change was to update the DNS of the domain name so that it would resolve to the IP of the new server. My client says he can see the site now, but I can't. I thought it was weird, but maybe the change was not fully spread around the internet, so I decided to wait. Then I decide to look at the site from my other computer, which runs ubuntu. The site works there, and I see the new version. This is even more weird, right? especially considering they are both connected to the same network and access the web with the same internet connection. So, I decided to take a look at the site on my tablet, and it also works. Then my phone, which connects to the internet using my carrier's internet service. The site also works on my phone.

The question is, why would it not work on one of the computers? Lets forget about the tablet, and the phone for a minute.

I have two computers, one runs Ubuntu, the other runs windows 7. The one running windows 7 point the domain name to it's old IP, and the one running ubuntu resolves the domain to the new IP. They are both connected to the same internet access point. I thought maybe I changed the DNS on Ubuntu at some point and I don't remember, but then I never changed them on the tablet, and it resolves to the new IP too. So, my only guess is that windows 7 has its own DNS, is that true? or what is going on?

share|improve this question

2 Answers 2

up vote 1 down vote accepted

Windows performs local DNS caching. Perform the following command at an elevated command prompt: ipconfig /flushdns and then try to go to your site.

In fact, if you want to verify, before flushing your local resolver cache, run the following command: ipconfig /displaydns. I'll bet the domain name in question is cached with the internal IP address.

To double verify, open up nslookup in an elevated command prompt, type server 208.67.222.222 and hit enter. Then type set type=all and hit enter. Finally, type domain.com and hit enter. You will likely see an A record with the proper IP address.

What does the above prove? That your local PC has the internal IP address cached and that external, public DNS servers have the proper, external IP address.

To turn off the Windows DNS caching facility (so that Windows behaves like a civilized operating system), go to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters\MaxCacheEntryTtlLimit and set the DWORD value to 1.

share|improve this answer
    
How often is this cache updated? It seems the problem solved by itself. Would the fact that I ran ipconfig /displaydns have anything t do with it? My guess this was the source of the problem, but it got solved while I was looking at the output of ipconfig /displaydns whick is quite lengthy. –  Buzu Apr 17 '12 at 6:28
    
I just ran ipconfig /displaydns | findstr domain.com and it returns nothing. Maybe it wasn't in the cache after all? –  Buzu Apr 17 '12 at 6:36
    
I don't know how long the cache is flushed. I don't think /displaydns by itself would have helped the situation. Perhaps it was a matter of odd timing. –  Wesley Apr 17 '12 at 16:03
    
hmmm... I guess I won't find out. At least I learned a few things :D Thanks –  Buzu Apr 17 '12 at 16:21

Check the hosts file on the Windows 7 machine: c:\Windows\System32\drivers\etc\hosts.

share|improve this answer
    
I have an edited hosts file, so I'm sure it is not the problem. Thanks :D –  Buzu Apr 17 '12 at 6:25

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.