關(guān)于DNS域名解析服務(wù)
DNS系統(tǒng)的作用及類型
DNS是什么?
DNS域名系統(tǒng)(Domain Name System縮寫DNS,Domain,Name被譯為域名)是因特網(wǎng)的一項(xiàng)核心服務(wù),它作為可以將域名和IP地址相互映射的一個(gè)分布式數(shù)據(jù)庫,能夠使人更方便的訪問互聯(lián)網(wǎng),而不用去記住能夠被機(jī)器直接讀取的IP數(shù)串。
全世界只有13臺(tái)根域名服務(wù)器,一個(gè)主根服務(wù)器在美國,12個(gè)輔根服務(wù)器,其中9個(gè)在美國,歐洲兩個(gè),位于英國和瑞典,亞洲一個(gè)位于日本。
全球互聯(lián)網(wǎng)DNS根服務(wù)器分布差異巨大
全球互聯(lián)網(wǎng)中樞頂級(jí)域名服務(wù)器的分布俗稱"母服務(wù)器",準(zhǔn)確的說法是世界上有13個(gè)根服務(wù)器系統(tǒng)。其實(shí)全球至少有1000多臺(tái)根服務(wù)器,北京有3臺(tái)。另外,在這13個(gè)根服務(wù)器系統(tǒng)之上,還有一個(gè)更高級(jí)的、隱藏著的母服務(wù)器。全世界所有的頂級(jí)域名,都是由這臺(tái)母服務(wù)器來確定的。全球1000多臺(tái)根服務(wù)器上的解析系統(tǒng)都是這臺(tái)母服務(wù)器的復(fù)制,這13個(gè)根服務(wù)器系統(tǒng)由12家機(jī)構(gòu)管理,分布在全球100多個(gè)地區(qū)。所以每一個(gè)編號(hào)的根服務(wù)器系統(tǒng),不是一臺(tái)機(jī)器,而是有幾十臺(tái)或上百臺(tái)服務(wù)器。
目前廣泛使用的互聯(lián)網(wǎng)是第一代互聯(lián)網(wǎng),采用的互聯(lián)網(wǎng)協(xié)議版本號(hào)為4,即IPv4。美國是第一代互聯(lián)網(wǎng)的創(chuàng)立者,占有網(wǎng)絡(luò)核心資源,處于絕對(duì)壟斷地位。隨著互聯(lián)網(wǎng)的蓬勃發(fā)展,對(duì)IP地址的需求也迅猛增加,IPFv4所能提供的地址很快將發(fā)完。第二代互聯(lián)網(wǎng)所依據(jù)的協(xié)議是IPv6。它可以提供無限數(shù)量的IP地址。
DNS使用的協(xié)議及端口號(hào)
DNS的默認(rèn)端口為53。 DNS端口分為TCP和UDP。
TCP是用來做區(qū)域傳送,多用于主從同步在一個(gè)區(qū)中主DNS服務(wù)器從自己本機(jī)的數(shù)據(jù)文件中讀取該區(qū)的DNSs數(shù)據(jù)信息,而輔助DNS服務(wù)器則從區(qū)的主DNS服務(wù)器中讀取該區(qū)的DNS數(shù)據(jù)信息。
UDP是用來做DNS解析的域名:通常由一個(gè)完全合格域名(FQDN)標(biāo)識(shí)。FQDN全稱 Fully Qualified Domain Name,它能準(zhǔn)確表示出其相對(duì)于DNS域樹根的位置,也就是節(jié)點(diǎn)到DNS樹根的完整表述方式,從節(jié)點(diǎn)到樹根采用反向書寫,并將每個(gè)節(jié)點(diǎn)用"."分隔,對(duì)于DNS域google來說,其完全正式域名(FQDN)為google.com。
例如,google為 com域的子域,其表示方法為google.com,而 ww 為 google域中的子域,可以使用wwrw .google.com.喪示。
注意:通常,F(xiàn)QDN有嚴(yán)格的命名限制,長度不能超過256字節(jié),只允許使用字符a-z,0-9,A-Z2和減號(hào)(-)。點(diǎn)號(hào)(.)只允許在域名標(biāo)志之間(例如"google.com")或者FQDN的結(jié)尾使用。域名不區(qū)分大小,由最頂層到下層,可以分成:根域、頂級(jí)域、二級(jí)域、子域。即全域名:同時(shí)帶有主機(jī)名和域名的名稱:FQDN=Hostname+DomainName
例如:www.baidu.com
注意:最前面的一定是主機(jī),最后一個(gè)點(diǎn)表示根域,通常是省略不寫的,但實(shí)際上www.abd.com=www.bad.com.
域名結(jié)構(gòu):
http://www.sina.com.cn./
http://主機(jī)名,子域,二級(jí)域,頂級(jí)域 根域/
DNS系統(tǒng)的分布式數(shù)據(jù)結(jié)構(gòu)

- 根域:位于樹狀結(jié)構(gòu)最頂層,用"."表示
- 頂級(jí)域:一般代表一種類型的組織機(jī)構(gòu)或國家地區(qū);
- 二級(jí)域:用來標(biāo)明頂級(jí)域內(nèi)的一個(gè)特定的組織,國家頂級(jí)域下面的二級(jí)域名由國家部門統(tǒng)一管理
- 子域:二級(jí)域下所創(chuàng)建的各級(jí)域統(tǒng)稱為子域,各個(gè)組織或用戶可以自由申請(qǐng)注冊(cè)自己的域名
- 主機(jī):主機(jī)位于域名空間最下層,就是一臺(tái)具體的計(jì)算機(jī)
DNS的分布式互聯(lián)網(wǎng)解析庫
大型、分布式的互聯(lián)網(wǎng)DNS解析庫
根. 根域名DNS服務(wù)器:專門負(fù)責(zé)根域名
一級(jí)DNS服務(wù)器:專門負(fù)責(zé)一級(jí)域名的解析(一般代表一種類型的組織機(jī)構(gòu)或國家地區(qū))
.com(工商、企業(yè))、.net(網(wǎng)絡(luò)供應(yīng)商)、.edu(教育機(jī)構(gòu))、.cn(中國國家域名)、.org(團(tuán)體組織)、.gov(政府部門)
二級(jí)DNS服務(wù)器:專門負(fù)責(zé)二級(jí)域名解析
.net.cn、.edu.cn、.com.cn
子域名DNS服務(wù)器:專門負(fù)責(zé)子域名的解析,也稱為三級(jí)域名
ina.com.cn、.pku.edu.cn
主機(jī)站點(diǎn)
tts9、tts6、mail、www
域名代理/注冊(cè)/購買服務(wù)商
- 新網(wǎng):http://www.xinnet.com
- 萬網(wǎng):http://www.net.cn
- 中國互聯(lián):http://hulian.top
- 中國數(shù)碼
- 阿里云
- 騰訊云
- 西部數(shù)碼
- 亞馬遜
域名體系結(jié)構(gòu)
所有域名必須以點(diǎn)結(jié)尾
www.qq.com. www.baidu.com.
- 根域名(.)
- 一級(jí)域名:.cn(中國)、.us(美國)、.tw、.kr(韓國)、.jp(日本)、.hk、.uk(英國)
- 二級(jí)域名:.com.cn(中國商業(yè)組織)、.edu.cn(教育機(jī)構(gòu))、.org.cn(非盈利)、.net.cn(中國運(yùn)營商)
- 三級(jí)域名:sian.com.cn、nb.com.cn
- 組織域:.com、.org、.net、.CC
- 國家域:.cn(中國)、 .tw、.hk 、 .iq、 .ir、 .jp (日本)
- 114.114.114.114是國內(nèi)移動(dòng)、電信和聯(lián)通通用的DNS,手機(jī)和電腦端都可以使用。
- 8.8.8.8是GooGLE公司提供的DNS,該地址全球通用,相對(duì)來說,更適合國外以及訪問國外網(wǎng)站的用戶使用
- 223.5.5.5和223.6.6.6:阿里云DNS
- IPV6 2400:3200::1 和2400:3200:baba::1
- 江蘇省南京市(中國電信),首選DNS為:218.2.135.1;備用DNS為:61.147.37.1
兩種查詢方式

正向解析查詢過程
1.先查本機(jī)的緩存記錄
2.查詢hosts文件
3.查詢DNS域名服務(wù)器,交給DNS域名服務(wù)器處理
以上過程為遞歸查詢:我要答案,你會(huì)直接給我結(jié)果
4.這個(gè)DNS服務(wù)器可能是本地域名服務(wù)器,也有個(gè)緩存,如果有直接返回結(jié)果,如果沒有則進(jìn)行下一步
5.求助根域服務(wù)器,根域服務(wù)器返回可能會(huì)知道結(jié)果的頂級(jí)域服務(wù)器讓他去找頂級(jí)域服務(wù)器
6.求助頂級(jí)服務(wù)器,頂級(jí)域服務(wù)器返回可能會(huì)知道結(jié)果的二級(jí)域服務(wù)器,讓他去找二級(jí)域服務(wù)器
7.求助二級(jí)域服務(wù)器,二級(jí)域服務(wù)器查詢發(fā)現(xiàn)是我的主機(jī),把查詢到的IP地址返回給本地域名服務(wù)器
8.本地域名服務(wù)器將結(jié)果記錄到緩存,然后把域名和IP對(duì)應(yīng)的關(guān)系返回給客戶端
遞歸查詢
遞歸查詢是一種DNS服務(wù)器的查詢模式,在該模式下DNS服務(wù)器接收到客戶機(jī)請(qǐng)求,必須使用一個(gè)準(zhǔn)確的查詢結(jié)果回復(fù)客戶機(jī)。如果 DNS服務(wù)器本地沒有存儲(chǔ)查詢DNS信息,那么該服務(wù)器會(huì)詢問其他服務(wù)器,并將返回的查詢結(jié)果提交給客戶機(jī)。
總的一句話,就是客戶機(jī)發(fā)送請(qǐng)求后自己只用等待結(jié)果即可,中間具體過程交給服務(wù)器實(shí)現(xiàn)。
迭代查詢
DNS服務(wù)器另外一種查詢方式為迭代查詢,當(dāng)客戶機(jī)發(fā)送查詢請(qǐng)求時(shí),DNS
服務(wù)器并不直接回復(fù)查詢結(jié)果,而是告訴客戶機(jī)另一臺(tái) DNS服務(wù)器地址,客戶機(jī)再向這臺(tái)DNS服務(wù)器提交請(qǐng)求,依次循環(huán)直到返回查詢的結(jié)果為止。
總的一句話,客戶機(jī)的請(qǐng)求需要自己挨個(gè)去查詢才能得到結(jié)果,服務(wù)器沒有結(jié)果時(shí)候只會(huì)給你提供其它服務(wù)器的地址,而不會(huì)幫你去請(qǐng)求查詢,這與遞歸截然相反。
從遞歸和迭代查詢可以看出:
客戶端-本地DNS服務(wù)器:
這部分屬于遞歸查詢本地DNS服務(wù)端---外網(wǎng):這部分屬于迭代查詢
遞歸查詢時(shí),返回的結(jié)果只有兩種:查詢成功或查詢失敗
迭代查詢又稱作重指引,返回的是最佳的查詢點(diǎn)或者主機(jī)地址。
迭代:客戶端發(fā)出一次請(qǐng)求,對(duì)方如果沒有授權(quán)回答,它就會(huì)返回一個(gè)能解答這個(gè)查詢的其它名稱服務(wù)器列表,客戶端會(huì)再向返回的列表中發(fā)出請(qǐng)求,直到找到最終負(fù)責(zé)所查域名的名稱服務(wù)器,從它得到最終結(jié)果。
授權(quán)回答:向dns服務(wù)器查詢一個(gè)域名,剛好這個(gè)域名是本服務(wù)器負(fù)責(zé),返回的結(jié)果就是授權(quán)回答。
DNS服務(wù)器類型統(tǒng)計(jì)
DNS服務(wù)器類型
- 主域名服務(wù)器:負(fù)責(zé)維護(hù)一個(gè)區(qū)域的所有域名信息,是特定的所有信息的權(quán)威信息源,數(shù)據(jù)可以修改。構(gòu)建主域名服務(wù)器時(shí),需要自行建立所負(fù)責(zé)區(qū)域的地址數(shù)據(jù)文件。
- 從域名服務(wù)器:當(dāng)主域名服務(wù)器出現(xiàn)故障、關(guān)閉或負(fù)載過重時(shí),從域名服務(wù)器作為備份服務(wù)提供域名解析服務(wù)。從域名服務(wù)器提供的解析結(jié)果不是由自己決定的,而是來自于主域名服務(wù)器。構(gòu)建從域名服務(wù)器時(shí),需要指定主域名服務(wù)器的位置,以便服務(wù)器能自動(dòng)同步區(qū)域的地址數(shù)據(jù)庫。
- 緩存域名服務(wù)器:只提供域名解析結(jié)果的緩存功能 目的在于提高查詢速度和效率,但沒有域名數(shù)據(jù)庫。它從某個(gè)遠(yuǎn)程服務(wù)器取得每次域名服務(wù)器查詢的結(jié)果,并將它放在高速緩存中,以后查詢相同的信息時(shí)用它予以響應(yīng)。緩存域名服務(wù)器不是權(quán)威性 服務(wù)器,因?yàn)樘峁┑乃行畔⒍际情g接信息。構(gòu)建緩存域名服務(wù)器時(shí),必須設(shè)置根域或指定其他DNS服務(wù)器作為解析來源。
- 轉(zhuǎn)發(fā)域名服務(wù)器:負(fù)責(zé)所有非本地域名的本地查詢。轉(zhuǎn)發(fā)域名服務(wù)器接到查詢請(qǐng)求后,在其緩存中查找,如找不到就將請(qǐng)求依次轉(zhuǎn)發(fā)到指定的域名服務(wù)器,直到查找到結(jié)果為止,否則返回?zé)o法映射的結(jié)果。
構(gòu)建DNS域名解析服務(wù)器
BIND軟件安裝
相關(guān)軟件包
- bind-9.9.4-37.el7.x86_64.rpm 提供了域名服務(wù)的主要程序及相關(guān)文件
- bind-utils-9.9.4-37.el7.x86_64.rpm 提供了對(duì)DNS服務(wù)器的測(cè)試工具程序,如nslookup等
- bind-libs-9.9.4-37.el7.x86_64.rpm 提供了bind、bind-utils需要使用的庫函數(shù)
- bind-chroot-9.9.4-37.el7.x86_64.rpm 為bind服務(wù)提供了一個(gè)偽裝的根目錄(將/var/named/chroot/文件夾作為bind服務(wù)的根目錄),以提高安全性
BIND服務(wù)器端程序
- 主要執(zhí)行程序:/usr/bin/named
- 默認(rèn)監(jiān)聽端口:53(TCP和UDP)
- 主要配置文件:/etc/named.conf
- 保存DNS解析記錄的數(shù)據(jù)文件位于:/var/named
構(gòu)建DNS域名解析服務(wù)器步驟
安裝bind軟件

DNS正向解析
查看配置文件所在位置

修改配置文件




配置區(qū)域數(shù)據(jù)文件


啟動(dòng)服務(wù),關(guān)閉防火墻

更改客戶端中的域名解析配置文件,改為DNS服務(wù)器地址


測(cè)試DNS解析

DNS反向解析
修改區(qū)域配置文件


先備份配置文件,再編輯指定區(qū)域數(shù)據(jù)配置文件


測(cè)試DNS反向解析

主從服務(wù)器
環(huán)境:需要兩臺(tái)虛擬機(jī),一臺(tái)為主服務(wù)器,一臺(tái)為從服務(wù)器

主服務(wù)器配置
修改主配置文件


修改區(qū)域配置文件



配置完后保存并退出,重啟named

指定主服務(wù)器的DNS

測(cè)試DNS解析

從服務(wù)器配置
安裝bind服務(wù)

編輯主配置文件


編輯區(qū)域配置文件



修改完后wq保存并退出,啟動(dòng)named

指定從服務(wù)器的DNS

測(cè)試DNS解析

查看從服務(wù)器是否將主服務(wù)器的區(qū)域數(shù)據(jù)配置文件備份

宕掉主服務(wù)器后,驗(yàn)證從服務(wù)器
關(guān)閉主服務(wù)器

驗(yàn)證從服務(wù)器

DNS服務(wù)器分離解析
CentOS7操作
安裝bind服務(wù)

為網(wǎng)關(guān)服務(wù)器配置雙網(wǎng)卡



配置網(wǎng)卡并重啟




重啟網(wǎng)卡后xshell掉線,需要進(jìn)入虛擬機(jī)終端查看網(wǎng)卡




修改區(qū)域配置文件(主配置文件)


view "lan" { #定義內(nèi)網(wǎng)view,view代表容器分割
match-clients { 192.168.20.0/24; }; #匹配內(nèi)網(wǎng)網(wǎng)段
zone "fl.com" IN { #設(shè)置要解析的區(qū)域
type master;
file "fl.com.zone.lan"; }; #數(shù)據(jù)配置文件
zone "." IN { #可將根域配置從主配置文件剪切過來,dd+p
type hint; #hint是根區(qū)域類型
file "named.ca"; };
};
view "wan" { #定義外網(wǎng)view
match-clients { any; }; #匹配除了內(nèi)網(wǎng)網(wǎng)段以外的任意地址
zone "fl.com" IN {
type master;
file " fl.com.zone.wan"; };
};配置區(qū)域數(shù)據(jù)文件




重啟服務(wù)并驗(yàn)證
內(nèi)網(wǎng)驗(yàn)證

客戶端(外網(wǎng))驗(yàn)證


C:\Users\fan>nslookup www.fl.com #解析www.fl.com
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
apache下面二級(jí)目錄部署react/vue的方法
這篇文章主要介紹了apache下面二級(jí)目錄部署react/vue的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-08-08
ubuntu系統(tǒng)修改時(shí)區(qū)和時(shí)間的方法
今天小編就為大家分享一篇關(guān)于ubuntu系統(tǒng)修改時(shí)區(qū)和時(shí)間的方法,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-03-03
在Linux中查看及終止正在運(yùn)行的后臺(tái)程序方法
今天小編就為大家分享一篇在Linux中查看及終止正在運(yùn)行的后臺(tái)程序方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-07-07
Linux利用inotify和rsync服務(wù)實(shí)現(xiàn)數(shù)據(jù)實(shí)時(shí)同步的原理解析
inotify是系統(tǒng)內(nèi)核的一個(gè)監(jiān)控服務(wù),屬于操作系統(tǒng)內(nèi)核的一個(gè)特有機(jī)制,用于監(jiān)控文件的信息變化,這篇文章主要介紹了Linux利用inotify和rsync服務(wù)實(shí)現(xiàn)數(shù)據(jù)實(shí)時(shí)同步,需要的朋友可以參考下2022-10-10

