/etc/resolv.conf是DNS客戶機配置文件,用于設(shè)置DNS服務(wù)器的IP地址及DNS域名,還包含了主機的域名搜索順序。
該文件是由域名解析 器(resolver,一個根據(jù)主機名解析IP地址的庫)使用的配置文件。它的格式很簡單,每行以一個關(guān)鍵字開頭,后接一個或多個由空格隔開的參數(shù)。
以下是我打開/etc/resolv.conf所得的內(nèi)容:
[root@markpain ~]# cat /etc/resolv.conf //查看該文件中的內(nèi)容 # Generated by NetworkManager nameserver 8.8.8.8 //google服務(wù)器 nameserver 8.8.4.4 //google備用服務(wù)器
接下來我們來詳細介紹一下其中參數(shù)代表的意思:
1、resolv.conf的關(guān)鍵字
nameserver //定義DNS服務(wù)器的IP地址 domain //定義本地域名 search //定義域名的搜索列表 sortlist //對返回的域名進行排序
下面我們給出一個/etc/resolv.conf的示例:
domain 51osos.com search www.51osos.com 51osos.com nameserver 202.102.192.68 nameserver 202.102.192.69
最主要是nameserver關(guān)鍵字,如果沒指定nameserver就找不到DNS服務(wù)器,其它關(guān)鍵字是可選的。
nameserver表示解析域名時使用該地址指定的主機為域名服務(wù)器。其中域名服務(wù)器是按照文件中出現(xiàn)的順序來查詢的,且只有當?shù)谝粋€nameserver沒有反應(yīng)時才查詢下面的nameserver,一般不要指定超過3個服務(wù)器。
domain聲明主機的域名很多程序用到它,如郵件系統(tǒng);當為沒有域名的主機進行DNS查詢時,也要用到。如果沒有域名,主機名將被使用,刪除所有在第一個點( .)前面的內(nèi)容。
search它的多個參數(shù)指明域名查詢順序當要查詢沒有域名的主機,主機將在由search聲明的域中分別查找。
domain和search不能共存;如果同時存在,后面出現(xiàn)的將會被使用。
sortlist允許將得到域名結(jié)果進行特定的排序它的參數(shù)為網(wǎng)絡(luò)/掩碼對,允許任意的排列順序。
“search domainname.com”表示當提供了一個不包括完全域名的主機名時,在該主機名后添加domainname.com的后 綴;“nameserver”表示解析域名時使用該地址指定的主機為域名服務(wù)器。其中域名服務(wù)器是按照文件中出現(xiàn)的順序來查詢的。
其中domainname和search可同時存在,也可只有一個。
注:
Red Hat中沒有提供缺省的/etc/resolv.conf文件,它的內(nèi)容是根據(jù)在安裝時給出的選項動態(tài)創(chuàng)建的。
我們可以通過nslookup來查看8.8.8.8服務(wù)器確實是Google公共的DNS服務(wù)器。
[root@markpain ~]# nslookup > 8.8.8.8 Server: 8.8.8.8 Address: 8.8.8.8#53 Non-authoritative answer: 8.8.8.8.in-addr.arpa name = google-public-dns-a.google.com. Authoritative answers can be found from: in-addr.arpa nameserver = f.in-addr-servers.arpa. in-addr.arpa nameserver = c.in-addr-servers.arpa. in-addr.arpa nameserver = d.in-addr-servers.arpa. in-addr.arpa nameserver = a.in-addr-servers.arpa. in-addr.arpa nameserver = e.in-addr-servers.arpa. in-addr.arpa nameserver = b.in-addr-servers.arpa. e.in-addr-servers.arpa internet address = 203.119.86.101 e.in-addr-servers.arpa has AAAA address 2001:dd8:6::101 f.in-addr-servers.arpa internet address = 193.0.9.1 f.in-addr-servers.arpa has AAAA address 2001:67c:e0::1 d.in-addr-servers.arpa internet address = 200.10.60.53 d.in-addr-servers.arpa has AAAA address 2001:13c7:7010::53 b.in-addr-servers.arpa internet address = 199.253.183.183 b.in-addr-servers.arpa has AAAA address 2001:500:87::87 c.in-addr-servers.arpa internet address = 196.216.169.10 c.in-addr-servers.arpa has AAAA address 2001:43f8:110::10 a.in-addr-servers.arpa internet address = 199.212.0.73 a.in-addr-servers.arpa has AAAA address 2001:500:13::73
我們也可以通過nslookup 域名來查看該域名的IP地址。這樣其實和ping指令有相通的地方。
[root@markpain ~]# nslookup www.baidu.com Server: 8.8.8.8 Address: 8.8.8.8#53 Non-authoritative answer: www.baidu.com canonical name = www.a.shifen.com. Name: www.a.shifen.com Address: 183.232.231.173 Name: www.a.shifen.com Address: 183.232.231.172