Linux操作系統下/etc/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服務程序來解決。
2、配置文件
這個文件可以配置主機ip及對應的主機名,對於服務器類型的linux系統其作用還是不可忽略的。
在局域網或是INTERNET上,每臺主機都有一個IP地址,它區分開每臺主機,並可以根據ip進行通訊。
但IP地址不方便記憶,所以又有了域名。在一個局域網中,每臺機器都有一個主機名,用於區分主機,便於相互訪問。
Linux主機名的相關配置文件就是/etc/hosts;這個文件告訴本主機哪些域名對應那些ip,那些主機名對應哪些ip:
比如文件中有這樣的定義
192.168.1.100 linumu100 test100
通常情況下這個文件首先記錄了本機的ip和主機名:
127.0.0.1 localhost.localdomain localhost
3、配置文件格式說明
一般/etc/hosts 的內容一般有如下類似內容:
127.0.0.1 localhost.localdomain localhost
192.168.1.100 linmu100.com linmu100
192.168.1.120 ftpserver ftp120
一般情況下hosts文件的每行為一個主機,每行由三部份組成,每個部份由空格隔開。其中#號開頭的行做說明,不被系統解釋。
IP地址 主機名/域名
第一部份:網絡IP地址;
第二部份:主機名或域名;
第三部份:主機名別名;
當然每行也可以是兩部份,即主機IP地址和主機名;比如 192.168.1.100 linmu100。
這裏可以稍微解釋一下主機名(hostname)和域名(Domain)的區別:主機名通常在局域網內使用,
通過hosts文件,主機名就被解析到對應ip;域名通常在internet上使用,但如果本機不想使用internet上的域名解析,
這時就可以更改hosts文件,加入自己的域名解析。
4、hosts文件可以幫助解決哪些問題
4.1 遠程登錄linux主機過慢問題
有時客戶端想遠程登錄一臺linux主機,但每次登錄輸入密碼後都會等很長一段時間才會進入,這是因為linux主機在返回信息時需要解析ip,
如果在linux主機的hosts文件事先加入客戶端的ip地址,這時再從客戶端遠程登錄linux就會變很快。
註:這裏所說的遠程登錄不僅僅是ssh,還可能是mysql遠程登錄,或是文件共享的查詢等。
4.2 雙機互連
當兩臺主機只是雙機互連時,這時兩臺主機都需要設置自己的ip,同時在對方的hosts文件裏加入自己的ip和主機名。
5、主機名修改工具hostname;
其實主機名的修改也有專用工具,就是hostname
hostname - show or set the system’s host name
顯示主機名:
# hostname
linmu100
此主機的主機名是linmu100,不加參數是用來顯示當前主機的主機名;
臨時設置主機名:
# hostname test100
# hostname 註:顯示主機名
test100
通過hostname 工具來設置主機名只是臨時的,下次重啟系統時,此主機名將不會存在;
顯示主機IP:
# hostname -i
192.168.1.100
Linux操作系統下/etc/hosts文件配置方法