1.簡介
resolv.conf是各種操作系統域名系統解析器(DNS Resolver)的配置文件。每當一個程序需要通過域名來訪問Internet上面的其它主機時,需要利用Resolver庫函數將域名轉換成對應的IP,然后才可進行訪問。
注意,域名系統解析器(DNS Resolver)并非一個可執(zhí)行程序,而是C語言的一系列庫函數,用于解析resolv.conf獲取域名對應的IP。關于Resolver的解釋,可以使用man 3 resolver
查看幫助手冊。
2.配置詳情
resolv.conf的配置主要包含如下幾項:
(1)nameserver x.x.x.x。用于配置DNS服務器,可以使用多個nameserver指定多個DNS服務器。
(2)search domain1 domain2 baidu.com。該選項可以用來指定多個域名,中間用空格或tab鍵隔開。其作用是當訪問的域名不能被DNS解析時,resolver會將該域名加上search指定的參數,重新請求DNS,直到被正確解析或試完search指定的域名列表為止。比如:
#ping news PING news.baidu.com (74.125.128.101) 56(84) bytes of data. 64 bytes from hg-in-f101.1e100.net (74.125.128.101): icmp_req=1 ttl=47 time=78.9 ms 64 bytes from hg-in-f101.1e100.net (74.125.128.101): icmp_req=2 ttl=47 time=63.6 ms
(3)domain mydomain.com。用于定義本地域名。在沒有設置search的情況下,search默認為domain的值。
(4)sortlist IP/netmask IP。允許將得到的域名結果進行特定的排序。它的參數為IP或掩碼-IP對,掩碼是可選的,使用斜杠分隔。比如:
sortlist 130.155.160.0/255.255.240.0 130.155.0.0
(5)options。用于配置resolver的內置變量,不是resolv.conf的常見配置。語法格式如下:
options [option] ...
option部分取值如下:
ndots:[n]:設置調用res_query()解析域名時域名至少包含的點的數量
timeout:[n]:設置等待dns服務器返回的超時時間,單位秒。默認值RES_TIMEOUT=5,參見<resolv.h>
attempts:[n]:設置resolver向DNS服務器發(fā)起域名解析的請求次數。默認值RES_DFLRETRY=2,參見<resolv.h>
rotate:在_res.options中設置RES_ROTATE,采用輪詢方式訪問nameserver,實現負載均衡
no-check-names:在_res.options中設置RES_NOCHECKNAME,禁止對傳入的主機名和郵件地址進行無效字符檢查,比如下劃線(_),非ASCII字符或控制字符
3.注意事項
(1)search和domain不能共存,如果同時存在,以最后出現的為準。
(2)分號(;)或井號(#)開頭的行為注釋行;
(3)每一個配置項必須單獨成行,且以關鍵詞開頭,空格分隔配置值。
4.示例
下面是一個resolv.conf的內容。
nameserver 202.102.192.68 nameserver 202.102.192.69 search qq.com baidu.com options no-check-names options attempts:1 options timeout:1
以上就是淺析Linux resolv.conf的詳細內容,更多關于Linux resolv.conf的資料請關注腳本之家其它相關文章!
標簽:南寧 畢節(jié) 晉中 巴中 衡水 云南 安陽 佛山
巨人網絡通訊聲明:本文標題《淺析Linux resolv.conf》,本文關鍵詞 淺析,Linux,resolv.conf,淺析,;如發(fā)現本文內容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。