I have a Windows 7 computer on my domain that is behaving oddly.
- It is possible to ping www.google.com
- It can ping internal hosts using their IP address
- It can ping the local Domain Controller/DNS server for that office using its hostname and IP address
- It cannot ping other internal hosts by their hostname or FQDN
- The client has not registered itself in DNS
nslookupcan resolve internal host names to their correct IP addresses and uses the correct DNS server
- The client gets its IP settings via DHCP the same as other clients - it has an address in the correct subnet, the correct DNS servers applied and has the correct suffix added to resolve hostnames
- The Local Area Connection network connection shows a SSID name that was previously used in the space that would be used to show the domain name or the WiFi status - see image
I'm really baffled as to why this might be happening. Because internal DNS resolution is not happening, the computer is not able to communicate with the domain properly, so Group Policy can't be applied and I doubt authentication is working properly.
I have tried clearing the DNS cache with
ipconfig /flushdns, disabling/restarting the cache with
netsh stop dnscache. I've reset Winsock and the IP stack, and rebooted numerous times with no difference. Other clients in the same network are working just fine.
The current workaround is to put entries in the hosts file for the most important hosts for services the user may need to use. This has worked ok, but isn't really sustainable long term, and doesn't address communication with Active Directory.
Any idea how to fix this, before I rebuild the thing?
I have installed Wireshark on the effected computer. When I do
nslookup domain.local I see all the DNS traffic as expected. When I do
ping domain.local I don't see any DNS traffic at all - no request and no reply. When I do
ping www.google.com I see both DNS request and reply.
Also, this is a laptop with both Wired LAN and Wireless. I get exactly the same issue when connected via Wired LAN or via WiFi to the internal network.
An odd thing I noticed is that under the name of the network connection (Local Area Network) rather than displaying the domain name as I would expect, but rather the name of a VLAN we used to use. I'm hesitant to remove the computer from the domain, in case I cannot join it again. I'd rather try some other things before I go down a route that might involve reinstalling Windows.
Update this looks relevent
Update I have tried
netsh winsock reset catalog,
netsh int ip reset, and
sfc scannow none of which have fixed the behaviour. The computer cannot leave and rejoin the domain, as it can't communicate with a domain controller.
ifconfig /registerdns also doesn't work for the same reason. I've also tried stopping the dns client service to no avail.