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:
修改/etc/hosts之後,ping百度的效果如下圖所示: