Linux hosts文件詳解及配置
1、名詞解析
主機(jī)名:
無(wú)論是在局域網(wǎng)還是在INTERNET上,每臺(tái)主機(jī)都有一個(gè)IP地址,用來(lái)區(qū)分當(dāng)前是那一臺(tái)機(jī)器(其實(shí)底層是使用機(jī)器的物理地址),也就是說(shuō)IP地址就是一個(gè)主機(jī)的門(mén)牌號(hào),唯一的標(biāo)示這一臺(tái)機(jī)子。
公網(wǎng):
IP地址不方便記憶,所以又有了域名。域名只是在公網(wǎng)(INTERNET)中存在,每個(gè)域名對(duì)應(yīng)著一個(gè)IP地址,但一個(gè)IP地址可以對(duì)應(yīng)多個(gè)域名。
局域網(wǎng):
每臺(tái)機(jī)器都有一個(gè)主機(jī)名,用于主機(jī)與主機(jī)之間區(qū)別。我們可以為每一臺(tái)機(jī)器設(shè)置主機(jī)名,便于以容易的方法來(lái)互相訪問(wèn)。比如我們?cè)诰钟蚓W(wǎng)中可以根據(jù)每臺(tái)機(jī)的功用來(lái)為其命名。
用途:例如我們可以通過(guò)主機(jī)名,通過(guò)ssh命令遠(yuǎn)程得登錄別人的電腦。
2、關(guān)于/etc/host,主機(jī)名和IP配置文件
Hosts - The static table lookup for host name(主機(jī)名查詢靜態(tài)表)
用途:
hosts文件是Linux系統(tǒng)中一個(gè)負(fù)責(zé)IP地址與域名快速解析的文件,
存儲(chǔ):
以ASCII格式保存在“/etc”目錄下,文件名為“hosts”(不同的linux版本,這個(gè)配置文件也可能不同。比如Debian的對(duì)應(yīng)文件是/etc/hostname)。
內(nèi)容:
hosts文件包含了IP地址和主機(jī)名之間的映射,還包括主機(jī)名的別名。
作用:
在沒(méi)有域名服務(wù)器的情況下,系統(tǒng)上的所有網(wǎng)絡(luò)程序都通過(guò)查詢?cè)撐募?lái)解析對(duì)應(yīng)于某個(gè)主機(jī)名的IP地址,否則就需要使用DNS服務(wù)程序來(lái)解決。通??梢詫⒊S玫挠蛎虸P地址映射加入到hosts文件中,實(shí)現(xiàn)快速方便的訪問(wèn)。
3、優(yōu)先級(jí)
優(yōu)先級(jí) : dns緩存 > hosts > dns服務(wù)
4、配置hosts文件
這個(gè)文件可以配置主機(jī)ip及對(duì)應(yīng)的主機(jī)名,對(duì)于服務(wù)器類型的linux系統(tǒng)其作用還是不可忽略的。在局域網(wǎng)或是INTERNET上,每臺(tái)主機(jī)都有一個(gè)IP地址,它區(qū)分開(kāi)每臺(tái)主機(jī),并可以根據(jù)ip進(jìn)行通訊。但I(xiàn)P地址不方便記憶,所以又有了域名。在一個(gè)局域網(wǎng)中,每臺(tái)機(jī)器都有一個(gè)主機(jī)名,用于區(qū)分主機(jī),便于相互訪問(wèn)。
Linux主機(jī)名的相關(guān)配置文件就是/etc/hosts;這個(gè)文件告訴本主機(jī)哪些域名對(duì)應(yīng)那些ip,那些主機(jī)名對(duì)應(yīng)哪些ip:
比如文件中有這樣的定義
192.168.1.100 linumu100 test100
假設(shè)192.168.1.100是一臺(tái)網(wǎng)站服務(wù)器,在網(wǎng)頁(yè)中輸入http://linumu100或http://test100就會(huì)打開(kāi)192.168.1.100的網(wǎng)頁(yè)。
通常情況下這個(gè)文件首先記錄了本機(jī)的ip和主機(jī)名:
127.0.0.1 localhost.localdomain localhost
這就是在我們?cè)谡{(diào)試web項(xiàng)目的時(shí)候,我們明明在瀏覽器的地址欄中輸入的是localhost,他會(huì)知道我們是本地調(diào)試,因?yàn)樗成涞搅?27.0.0.1(即本機(jī))。
5、配置文件格式說(shuō)明
但這種映射只是本地機(jī)的映射,也就是說(shuō)每臺(tái)機(jī)器都是獨(dú)立的,只有在hosts文件中進(jìn)行了配置才能使用主機(jī)名來(lái)訪問(wèn)。
在hosts文件中,我們會(huì)看到類似下面的內(nèi)容
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4127.0.0.1 localhost.localdomain localhost192.168.1.195 debian.localdomain debian
一般情況下hosts的內(nèi)容關(guān)于主機(jī)名(Hostname)的定義,每行為一個(gè)主機(jī),每行由三部份組成,每個(gè)部份由空格隔開(kāi)。其中#號(hào)開(kāi)頭的行做說(shuō)明(即注釋的作用),不被系統(tǒng)解釋。
hosts文件格式:
ip地址 主機(jī)名/域名 (主機(jī)別名)
第一部份:網(wǎng)絡(luò)IP地址;
第二部份:主機(jī)名或域名;
第三部份:主機(jī)名別名;
當(dāng)然每行也可以是兩部份,即主機(jī)IP地址和主機(jī)名;比如 192.168.1.100 linmu100。
主機(jī)名(hostname)和域名(Domain)的區(qū)別:
主機(jī)名通常在局域網(wǎng)內(nèi)使用,通過(guò)hosts文件,主機(jī)名就被解析到對(duì)應(yīng)ip;
域名通常在internet上使用,但如果本機(jī)不想使用internet上的域名解析,這時(shí)就可以更改hosts文件,加入自己的域名解析。
6、hosts文件的用途
6.1 解決遠(yuǎn)程登錄linux主機(jī)過(guò)慢問(wèn)題
有時(shí)客戶端想遠(yuǎn)程登錄一臺(tái)linux主機(jī),但每次登錄輸入密碼后都會(huì)等很長(zhǎng)一段時(shí)間才會(huì)進(jìn)入,這是因?yàn)閘inux主機(jī)在返回信息時(shí)需要解析ip,如果在linux主機(jī)的hosts文件事先加入客戶端的ip地址,這時(shí)再?gòu)目蛻舳诉h(yuǎn)程登錄linux就會(huì)變很快。
注:這里所說(shuō)的遠(yuǎn)程登錄不僅僅是ssh,還可能是mysql遠(yuǎn)程登錄,或是文件共享的查詢等。
6.2 雙機(jī)互連
當(dāng)兩臺(tái)主機(jī)只是雙機(jī)互連時(shí),這時(shí)兩臺(tái)主機(jī)都需要設(shè)置自己的ip,同時(shí)在對(duì)方的hosts文件里加入自己的ip和主機(jī)名。
7、修改主機(jī)名
其實(shí)主機(jī)名的修改也有專用工具,就是hostname
hostname - show or set the system’s host name
顯示主機(jī)名:
# hostnamezhengcanrui
此主機(jī)的主機(jī)名是zhengcanrui,不加參數(shù)是用來(lái)顯示當(dāng)前主機(jī)的主機(jī)名;
臨時(shí)設(shè)置主機(jī)名:
# hostname test100# hostname 注:顯示主機(jī)名test100
通過(guò)hostname 工具來(lái)設(shè)置主機(jī)名只是臨時(shí)的,下次重啟系統(tǒng)時(shí),此主機(jī)名將不會(huì)存在;
顯示主機(jī)IP:
# hostname -i192.168.1.100
致謝:感謝您的閱讀!
本文永久更新鏈接地址:http://www.linuxidc.com/Linux/2016-10/135886.htm
*博客內(nèi)容為網(wǎng)友個(gè)人發(fā)布,僅代表博主個(gè)人觀點(diǎn),如有侵權(quán)請(qǐng)聯(lián)系工作人員刪除。
pa相關(guān)文章:pa是什么
脈沖點(diǎn)火器相關(guān)文章:脈沖點(diǎn)火器原理