https://blog.csdn.net/wangjianno2/article/details/50514262
https://blog.csdn.net/xinlongabc/article/details/47075293
1./etc/hosts
hosts文件,官方全稱為The static table lookup for host name,中文為主機名查詢靜態(tài)表。hosts文件是Linux系統(tǒng)中一個負責IP地址與域名快速解析的文件误褪,以ASCII格式保存在“/etc”目錄下驻子,文件名為“hosts”(不同的linux版本拧咳,這個配置文件也可能不同干厚。比如Debian的對應(yīng)文件是/etc/hostname)礁蔗。hosts文件包含了IP地址和主機名之間的映射壤短,還包括主機名的別名设拟。在域名解析過程中慨仿,會先查詢/etc/hosts中是否已有(domain->ip)的映射關(guān)系,若無纳胧,將向local DNS發(fā)起域名解析請求镰吆。通常可以將常用的域名和IP地址映射加入到hosts文件中跑慕,實現(xiàn)快速方便的訪問万皿。
一般來說,/etc/hosts的配置格式為:
IP地址 主機名 主機名別名1 主機名別名2 .....
舉例來說核行,如下為某臺redhat服務(wù)上的/etc/hosts文件的內(nèi)容:
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4
備注:
(1)::1為IPv6的回環(huán)地址牢硅,相當于IPv4的127.0.0.1
(2)通過上面的配置可以發(fā)現(xiàn),主機名的別名可以有很多個
2./etc/resolv.conf
/etc/resolv.conf配置的是本地DNS(local DNS)服務(wù)器芝雪,也就是本機要訪問某個域名時减余,就會向/etc/resolv.conf中配置的DNS服務(wù)器發(fā)起DNS解析的請求。/etc/resolv.conf的配置文件結(jié)構(gòu)如下:
nameserver x.x.x.x
nameserver y.y.y.y
nameserver ....
search sohu.com
domain sohu.com
options rotate
其中nameserver表示DNS服務(wù)器惩系,nameserver可以配置多個位岔。當配置多個nameserver時,在每次發(fā)起域名解析請求時堡牡,都會向第一個nameserver發(fā)起請求抒抬,如果請求第一個nameserver超時,就會向第二個nameserver發(fā)起請求悴侵。所以一般來說,越排在前面的nameserver的壓力就越大拭嫁。如果配置了options rotate后可免,會以輪詢的方式向這些nameserver發(fā)起請求,這種場景下做粤,各個nameserver的壓力是差不多的浇借。
search和domain表示當我們請求解析的域名寫的不完整時,比如我們想要請求解析www.sohu.com怕品,但我們只使用www(nslookup www)妇垢,這時domain和search就會將其補齊為www.sohu.com。另外肉康,domain和search同時配置時闯估,誰在后面誰就生效。
————————————————
版權(quán)聲明:本文為CSDN博主「佚名-2021」的原創(chuàng)文章吼和,遵循CC 4.0 BY-SA版權(quán)協(xié)議涨薪,轉(zhuǎn)載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/wangjianno2/article/details/50514262
resolv.conf文件中有search項時炫乓,主機名解析規(guī)則順序:
DNS配置文件如下:
vi /etc/resolv.conf
Generated by NetworkManager
search openstack.local dev.com example.local
nameserver 192.168.122.21
1
2
3
4
例1:查詢主機名刚夺,因為主機名后面沒有點献丑,就認為是主機名,所以先添加search里的每一項依次組成FQDN(完全合格域名)來查詢侠姑,完全合格域名查詢未找到创橄,就再認為主機名是完全合格域名來查詢尖啡。
host -a centos7-bind-1
Trying "centos7-bind-1.openstack.local"
Trying "centos7-bind-1.dev.com"
Trying "centos7-bind-1.example.local"
Trying "centos7-bind-1"
;; connection timed out; no servers could be reached
1
2
3
4
5
6
例2:查詢主機名闹击,因為主機名中有點(不是末尾有點),就認為是完全合格域名岔乔,先用它來查詢船老,查詢失敗就把它當成是主機名來進行咖熟,添加search里的每一項組成FQDN(完全合格域名)來查詢。
host -a centos7-bind-1.com
Trying "centos7-bind-1.com"
Received 109 bytes from 192.168.122.21#53 in 177 ms
Trying "centos7-bind-1.com.openstack.local"
Trying "centos7-bind-1.com.dev.com"
Trying "centos7-bind-1.com.example.local"
Host centos7-bind-1.com not found: 3(NXDOMAIN)
Received 125 bytes from 192.168.122.21#53 in 55 ms
1
2
3
4
5
6
7
8
例3:查詢主機名柳畔,因為主機名中末尾有點馍管,則認為是完全合格域名,只用它來查詢(不會再添加search里的每一項)薪韩。查詢次數(shù)會與search里項域名個數(shù)有關(guān)确沸。
host -a centos7-bind-1.
Trying "centos7-bind-1"
;; connection timed out; trying next origin
Trying "centos7-bind-1"
;; connection timed out; trying next origin
Trying "centos7-bind-1"
;; connection timed out; trying next origin
Trying "centos7-bind-1"
;; connection timed out; no servers could be reached
1
2
3
4
5
6
7
8
9
DNS查詢工具:host命令介紹
用法:host [-a] FQDN [server]
host -l domain [server]
-a參數(shù):顯示查詢的所有詳細信息。
-l參數(shù):如果后面的domain允許allow-transfer時俘陷,則列出該domain所管理的所有主機數(shù)據(jù)罗捎。
server參數(shù):這個參數(shù)可有可無,當想要利用非 /etc/resolv.conf 內(nèi)的DNS主機拉盾,來查詢主機名與 IP 的對應(yīng)時桨菜,就可以利用這個參數(shù)了。
host命令使用例(列出該domain所管理的所有主機數(shù)據(jù)):
host -l example.local 192.168.122.84
Using domain server:
Name: 192.168.122.84
Address: 192.168.122.84#53
Aliases:
example.local name server ns.example.local.
dns.example.local has address 192.168.123.10
ns.example.local has address 192.168.122.84
ns.example.local has IPv6 address ::1
sss.example.local has address 192.168.123.9
www.example.local has address 192.168.123.8
————————————————
版權(quán)聲明:本文為CSDN博主「xinlongabc」的原創(chuàng)文章捉偏,遵循CC 4.0 BY-SA版權(quán)協(xié)議倒得,轉(zhuǎn)載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/xinlongabc/article/details/47075293