B002 hosts文件詳解及配置

1、關於/etc/host,主機名和IP配置文件

  Hosts - The static table lookup for host name(主機名查詢靜態表)

  用途:

  hosts文件是Linux系統中一個負責IP地址與域名快速解析的文件,

  存儲:

  以ASCII格式保存在“/etc”目錄下,文件名爲“hosts”(不同的linux版本,這個配置文件也可能不同。比如Debian的對應文件是/etc/hostname)。

  內容:

  hosts文件包含了IP地址和主機名之間的映射,還包括主機名的別名。

  作用:

  在沒有域名服務器的情況下,系統上的所有網絡程序都通過查詢該文件來解析對應於某個主機名的IP地址,否則就需要使用DNS服務程序來解決。通常可以將常用的域名和IP地址映射加入到hosts文件中,實現快速方便的訪問。

 

2、優先級

  優先級 : dns緩存 > hosts > dns服務

 

3、配置hosts文件

  這個文件可以配置主機ip及對應的主機名,對於服務器類型的linux系統其作用還是不可忽略的。在局域網或是INTERNET上,每臺主機都有一個IP地址,它區分開每臺主機,並可以根據ip進行通訊。但IP地址不方便記憶,所以又有了域名。在一個局域網中,每臺機器都有一個主機名,用於區分主機,便於相互訪問。

  Linux主機名的相關配置文件就是/etc/hosts;這個文件告訴本主機哪些域名對應那些ip,那些主機名對應哪些ip:

  比如文件中有這樣的定義

192.168.1.100 linumu100 test100

  假設192.168.1.100是一臺網站服務器,在網頁中輸入http://linumu100或http://test100就會打開192.168.1.100的網頁。

  通常情況下這個文件首先記錄了本機的ip和主機名:

127.0.0.1 localhost.localdomain localhost

  這就是在我們在調試web項目的時候,我們明明在瀏覽器的地址欄中輸入的是localhost,他會知道我們是本地調試,因爲他映射到了127.0.0.1(即本機)。

 

4、配置文件格式說明

  但這種映射只是本地機的映射,也就是說每臺機器都是獨立的,只有在hosts文件中進行了配置才能使用主機名來訪問。

  在hosts文件中,我們會看到類似下面的內容

  127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4

  127.0.0.1 localhost.localdomain localhost

  192.168.1.195 debian.localdomain debian

  一般情況下hosts的內容關於主機名(Hostname)的定義,每行爲一個主機,每行由三部份組成,每個部份由空格隔開。其中#號開頭的行做說明(即註釋的作用),不被系統解釋。

 

  hosts文件格式:

  ip地址 主機名/域名 (主機別名)

  第一部份:網絡IP地址;

  第二部份:主機名或域名;

  第三部份:主機名別名;

  當然每行也可以是兩部份,即主機IP地址和主機名;比如 192.168.1.100 linmu100。

  主機名(hostname)和域名(Domain)的區別:

  主機名通常在局域網內使用,通過hosts文件,主機名就被解析到對應ip;

  域名通常在internet上使用,但如果本機不想使用internet上的域名解析,這時就可以更改hosts文件,加入自己的域名解析。

 

5、hosts文件的用途

  5.1 解決遠程登錄linux主機過慢問題

  有時客戶端想遠程登錄一臺linux主機,但每次登錄輸入密碼後都會等很長一段時間纔會進入,這是因爲linux主機在返回信息時需要解析ip,如果在linux主機的hosts文件事先加入客戶端的ip地址,這時再從客戶端遠程登錄linux就會變很快。

  注:這裏所說的遠程登錄不僅僅是ssh,還可能是mysql遠程登錄,或是文件共享的查詢等。

  5.2 雙機互連

  當兩臺主機只是雙機互連時,這時兩臺主機都需要設置自己的ip,同時在對方的hosts文件里加入自己的ip和主機名。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章