详解Linux系统下的hosts文件

时间:2021-10-29 05:50:24

hosts文件

hosts —— the static table lookup for host name(主机名查询静态表)。

hosts文件是Linux系统上一个负责ip地址与域名快速解析的文件,以ascii格式保存在/etc/目录下。hosts文件包含了ip地址与主机名之间的映射,还包括主机的别名。在没有域名解析服务器的情况下,系统上的所有网络程序都通过查询该文件来解析对应于某个主机名的ip地址,否则就需要使用dns服务程序来解决。通过可以将常用的域名和ip地址映射加入到hosts文件中,实现快速方便的访问。

优先级 : dns缓存 > hosts > dns服务

hosts格式配置

hosts文件可以配置主机ip与对应的主机名。在局域网或者是万维网上,每台主机都有一个ip地址,它区分开每台主机,并可以根据ip进行通讯。但是Ip地址不符合人脑的记忆规律,因此出现了域名,例如www.baidu.com.在一个局域网中,每台机器都有一个主机名,用于区分主机,便于相互访问。

hosts文件格式

ip地址 主机名/域名 (主机别名)

主机名和域名的区别在于:

主机名通常在局域网内使用,通过hosts文件,主机名就被解析到对应的ip。

域名通常在internet上使用,但是优先级低于hosts文件中内容,因此如果你不想使用internet上的域名解析,可以更改自己的hosts文件,加入自己的域名解析。

hosts文件作用

一个主要的作用是:线下环境模拟,通信双方在同一个局域网内想通过internet上的域名相互访问,则只需要修改自己的/etc/hosts文件内容即可。

例如,修改www.baidu.com的ip为127.0.0.1:

详解Linux系统下的hosts文件

修改/etc/hosts之后,ping百度的效果如下图所示:

详解Linux系统下的hosts文件