A mystery including ping, nslookup and unresolvable issues

Today at work I noticed that when I logged in on my Windows 7 client laptop, the network shares had not been mapped. That’s weird, was my first reaction.
So I went ahead and tried to ping the server the share resides on, with a standard ping servername from command prompt. I simply got a “Ping request could not find host servname. Please check the name and try again.”.
Ok, I then tried the FQDN, ping servername.mycompany.com. Same reply, “Ping request could not find the hostname..” Could it be a DNS issue? Nslookup servername gave me the IP address, so the DNS was working ok. Then I tried ping -a <IP of server> and it gave me the hostname. Why could ping not resolve the hostname if the DNS was working?

Of course my browser was also not working, since it was configured to download a proxy script from a server, which name it could not resolve. When I tried to ping that server’s IP, I did not get any reply. Coincidence? But why should ping rely on the proxy script file? It appeared far fetched, but I pursued this lead nevertheless.

The proxy script is served by a server which is load balanced by two Cisco ACE modules in two separate C6500 routers. Since I did not have access to the ACE modules, I contacted a colleague to check them. The response I got was positive, he could not log in to one of the modules, could not even ping it. His network shares were working ok though, but his browser could not download the proxy script. When I checked the module status in the router it said Major Error on that specific ACE module. Nothing in the syslog server logs, except it had logged that the module could not sync the time. No errors. Anyways, we decided that I should restart it (power cycle module 8) and then we waited.. After a few minutes it was back online with a status of OK. And it replied to ping and he could log in to to it. Now the web browsers began to work correctly when they could access the proxy script. Also (imagine my surprise), ping started to work properly. How interesting!

I still don’t know exactly how Windows resolves host names and why the dependency on the proxy script?