Linux下hosts、host.conf、resolv.conf的區別 -开发者知识库

Linux下hosts、host.conf、resolv.conf的區別 -开发者知识库,第1张

/etc/resolv.conf

該文件是DNS域名解析的配置文件,它的格式很簡單,每行以一個關鍵字開頭,后接配置參數。
resolv.conf的關鍵字主要有四個,分別是:
nameserver   #定義DNS服務器的IP地址
domain         #定義本地域名
search          #定義域名的搜索列表
sortlist         #對返回的域名進行排序

詳細說明:
nameserver 表明DNS服務器的IP地址。可以有很多行的nameserver,每一個帶一個IP地址。在查詢時就按nameserver在本文件中的順序進行,
                    且只有當第一個nameserver沒有反應時才查詢下面的nameserver。

domain       聲明主機的域名。很多程序用到它,如郵件系統;當為沒有域名的主機進行DNS查詢時,也要用到。
                    如果沒有域名,主機名將被使用,刪除所有在第一個點( .)前面的內容。

search   它的多個參數指明域名查詢順序。當要查詢沒有域名的主機,主機將在由search聲明的域中分別查找。
                   domain和search不能共存;如果同時存在,后面出現的將會被使用。

sortlist   允許將得到域名結果進行特定的排序。它的參數為網絡/掩碼對,允許任意的排列順序。

  
/etc/resolv.conf的一個示例:
domain centoscn.com
search  www.centocn.com www.wgjlb.com
nameserver 202.96.128.86
nameserver 202.96.128.166

最主要是nameserver關鍵字,如果沒指定nameserver就找不到DNS服務器,其它關鍵字是可選的。Red Hat中沒有提供缺省的/etc/resolv.conf文件,它的內容是根據在安裝時給出的選項動態創建的。

=====================================================
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服務程序來解決。通常可以將常用的域名和IP地址映射加入到hosts文件中,實現快速方便的訪問。

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

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

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

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

3、配置文件格式說明

一般/etc/hosts 的內容一般有如下類似內容:
127.0.0.1     localhost.localdomain localhost
192.168.1.100 linmu100.com linmu100
192.168.1.120 ftpserver ftp120

一般情況下hosts文件的每行為一個主機,每行由三部份組成,每個部份由空格隔開。其中#號開頭的行做說明,不被系統解釋。
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下hosts、host.conf、resolv.conf的區別

--------------------------------------------------------
位於 /etc/目錄下,在這里區分一下

1.hosts文件.

和Windows系統下的host的文件相類似,就是一個文本文件,里面存放一些IP和域名的對應關系。

2.host.conf. #解析器查詢順序配置文件

例:vi /etc/host.conf

order hosts bind 表示先查詢本地hosts文件,如果沒有結果,再嘗試查找BIND dns服務器。

3. resolv.conf

配置Linux系統DNS服務器的配置文件:

vi /etc/resolv.conf

nameserver 221.5.88.88
nameserver 210.21.196.6
nameserver 8.8.8.8
nameserver 8.8.4.4

最佳答案:

本文经用户投稿或网站收集转载,如有侵权请联系本站。

发表评论

0条回复