2

In my home network I have a dhcp server and a dns server running on a router. Dhcp and internet access are working fine.

I have for each device on my home network a dns record that associate some name to the device ip address.

For example mycomputer resolves to 192.168.0.111.

However when I issue at command line in Windows 10:

ping mycomputer

I'm getting

Ping request could not find host mycomputer. Please check the name and try again.

I think this is a windows problem, not a router or configuration problem. This is because:

  • ping mycomputer works perfectly from ubuntu
  • if I create a dns record like mycomputer.local or even mycomputer.bla and assign this to the same ip address I can ping mycomputre.local or ping mycomputre.bla from Windows 10 without an issue.
  • Finally, ping mycomputer. (note the dot at the end) also works in Windows 10.
  • If I look at the traffic in Wireshark, I can see that ping mycomputer.local results in a DNS request while ping mycomputer does not.

It appears that if the target computer name is not multi-part, windows will not resolve it unless I add the dot at the end. This effect does not happen for multi-part names.

I would like to understand: Why is this the case?

1 Answers1

1

You probably do not have a WINS server on the network. Windows first tries WINS server for single part names, because it assumes that these are NetBIOS names and when it fails it does not try DNS.

According to Resolving names article, WINS is the first thing to check, however a subsequent step are supposed to make a DNS query. It's possible that since this particular article does not go into a lot of details, there are some conditions that are being met, that aborts the resolution process before it reaches the DNS step.

This is a longer article on the subject.