This was a strange issue I ran into a while back…
We had a user who was having issue connecting to some web apps that resided on an old web server. I connected to his computer and his IP settings looked ok and we flushed his DNS cache. We could still not ping the server by hostname or by IP from his computer (from my computer and everyone else’s it worked fine). We logged into the web server and could not ping his PC either!
We eventually found that if we ran arp –a there were several static arp entries (they link IP address with MAC address). These are typically set dynamically and you never have to mess with them. There was one for his IP (which was a statically set IP) and it had the incorrect MAC address listed. We deleted the entry (arp –d <ip address>) and the server recreated it dynamically and all was well. I verified with the end user and he was able to use his web app.
The static arp entries were there from a long time ago and he just happened to get assigned a static IP that matched one of the stagnant arp entries. We kept running into this occasionally as other users would pick up dynamic addresses that matched the few arp entries and we would just simple delete the arp entry and they would be good to go.
This was a very tricky one as all typical network troubleshooting failed. It’s not every day you have to mess with the arp table!