What is a host file?
A host file or
/etc/hosts in Linux, it’s a locally administrated text file which is used by the operating system to translate host names into IP addresses. Keep in mind that the
hosts file has a bigger priority then DNS by default, consequently the hosts are first resolved from here. The behavior can be changed via /etc/nsswitch.conf.
127.0.0.1 myserver.example.com myserver 192.168.0.1 myrouter
In this example we have defined two hosts.
1) myserver with the IP address 127.0.0.1 and the FQDN is myserver.example.com.
2) myrouter with the IP address 192.168.0.1, without a domain name, this is not a FQDN.
Just use the simple
ping command, as you see in the example from below, the host is successfully translated.
ping myserver -c 1
PING myserver (127.0.0.1) 56(84) bytes of data. 64 bytes from myserver (127.0.0.1): icmp_seq=1 ttl=64 time=0.045 ms
What is FQDN?
FQDN is the abbreviation for Fully Qualified Domain Name, a domain name which must include at least a second-level domain and a top-level domain.
In our example myserver.example.com:
– host name is myserver
– second level-domain is example
– top-level domain is .com.
So.. the correct entry of a FQDN would be:
Local system’s host name
Some apps or services like Kerberos requires that the local system’s host name to be FQDN.
/etc/hostname file stores the system’s host name, if is modified the change will be effective only after reboot.
Check if local system’s host name is FQDN
You need to make sure that the local host name has a valid FQDN entry in
cat /etc/hosts | grep `hostname`
127.0.0.1 myserver.example.com myserver
You can also check with the
Display the host name
Display the domain name
Display the FQDN