Linux DNS 服務器配置與管理

1、環境介紹:vim

  運行軟件:VMware Workstation Pro 14緩存

  系統環境:CentOS-7-x86_64-1810服務器

2、操做配置:網絡

一、基礎知識簡介併發

(1)域名空間分佈式

域和域名:測試

DNS樹的每一個節點表明一個域,經過這些節點,對整個域名空間進行劃分,成爲一個層次結構。域名空間的每一個域的名字經過域名進行表示。域名一般由一個徹底正式域名(FQDN)標識。spa

Internet域名空間:操作系統

DNS根域下面是頂級域,也由Internet域名註冊受權機構管理。共有3種類型的頂級域 (組織域、地址域、反向域)。3d

區(Zone):

區是DNS名稱空間的一個連續部分,其包含了一組存儲在DNS服務器上的資源記錄。

 

(2)DNS 服務器分類

DNS服務器分爲4類:

.主DNS服務器(Master或Primary)

.輔助DNS服務器(Slave或Secondary)

.轉發DNS服務器

.惟高速緩存DNS服務器(Caching-only DNS server)

 

(3)DNS 查詢模式

.遞歸查詢

DNS 客戶端送出查詢要求後,若是DNS服務器內沒有須要的數據,則DNS服務器會代替客戶端向其餘的DNS服務器查詢,客戶機只需接觸一次DNS服務器。

.迭代查詢

DNS 客戶端送出查詢後,若是DNS服務器內沒有須要的數據,則返給客戶機另外一個DNS服務器地址,將客戶機轉向另外一個DNS服務器。

 

(4)域名解析過程

.DNS 域名解析的工做原理

 

.DNS 域名解析的工做過程

① 客戶機提交域名解析請求,並將該請求發送給本地的域名服務器。

② 當本地的域名服務器收到請求後,就先查詢本地的緩存。若是有查詢的DNS信息記錄,則直接返回查詢的結果。若是沒有該記錄,本地域名服務器就把請求發給根域名服務器。

③ 根域名服務器再返回給本地域名服務器-個所查詢域的頂級域名服務器的地址。

④ 本地服務器再向返回的域名服務器發送請求。

⑤ 接收到該查詢請求的域名服務器查詢其緩存和記錄,若是有相關信息則返回客戶機查詢結果,不然通知客戶機下級的域名服務器的地址。

⑥ 本地域名服務器將查詢請求發送給返回的DNS服務器。

⑦ 域名服務器返回本地服務器查詢結果(若是該域名服務器不包含查詢的DNS信息,查詢過程將重複⑥、⑦步驟,直到返回解析信息或解析失敗的迴應)。

⑧ 本地域名服務器將返回的結果保存到緩存,而且將結果返回給客戶機。

.正向解析與反向解析

正向解析:正向解析是指域名到IP地址的解析過程。

反向解析:反向解析是從IP地址到域名的解析過程。反向解析的做用爲服務器的身份驗證。

 

二、主 DNS 服務器配置

(0)DNS 服務器IP地址配置

 

(1)安裝 DNS 服務

.認識 BIND

BIND 是一款實現DNS服務器的開放源碼軟件。BIND經歷了第4版、第8版和最新的第9版,第9版修正了之前版本的許多錯誤,並提高了執行時的效能,BIND可以運行在當前大多數的操做系統平臺之上。目前BIND軟件由Internet軟件聯

合會(Internet Software Consortium,ISC)這個非營利性機構負責開發和維護。

.安裝 bind 軟件包

使用yum命令安裝bind服務

yum clean all //安裝前先清除緩存

yum install bind* -y

rpm -qa|grep bind

 

(2)配置主配置文件 named.conf

[root@localhost ~]# vim /etc/named.conf

 

(3)配置正向解析區域 qftm.com.zone

[root@localhost ~]# vim /var/named/qftm.com.zone

 

(4)配置反向解析區域 2.168.192.in-addr.arpa.zone

[root@localhost ~]# vim /var/named/2.168.192.in-addr.arpa.zone

 

(5)將 /etc/named.comf、正反向區域文件屬組有root改成named

[root@localhost ~]# chgrp named /etc/named.conf
[root@localhost ~]# chgrp named /var/named/qftm.com.zone
[root@localhost ~]# chgrp named /var/named/2.168.192.in-addr.arpa.zone

 

(6)檢查各個配置文件是否正確

.檢查主配置文件 named.conf

[root@localhost ~]# named-checkconf

.檢查正向解析區域 qftm.com.zone

[root@localhost ~]# named-checkzone "qftm.com" /var/named/qftm.com.zone

.檢查反向解析區域 2.168.192.in-addr.arpa.zone

 

(7)重啓 DNS 服務

[root@localhost ~]# systemctl restart named

 

(8)在Linux客戶端測試配置效果

[root@localhost ~]# nslookup
> server                                         //查詢DNS服務器地址
Default server: 192.168.2.129
Address: 192.168.2.129#53
> dns.qftm.com                              //解析dns.qftm.com
Server:         192.168.2.129
Address:        192.168.2.129#53

Name:   dns.qftm.com
Address: 192.168.2.129
> blog.qftm.com                            //解析blog.qftm.com
Server:         192.168.2.129
Address:        192.168.2.129#53

Name:   blog.qftm.com
Address: 192.168.2.111
> 192.168.2.129                           //反向解析192.168.2.129
Server:         192.168.2.129
Address:        192.168.2.129#53

129.2.168.192.in-addr.arpa      name = dns.qftm.com.
> 192.168.2.111                         //反向解析192.168.2.111
Server:         192.168.2.129
Address:        192.168.2.129#53

111.2.168.192.in-addr.arpa      name = blog.qftm.com.
> exit                                        //退出測試

[root@localhost ~]#

 

三、輔助 DNS 服務器配置

(1)輔助域名服務器

.DNS劃分若干區域進行管理,每一個區域由一個或多個域名服務器負責解析。對於存在多個域名服務器的區域,必須選擇一臺主域名服務器(master),保存並管理整個區域的信息,其餘服務器稱爲輔助域名服務器(slave)。

.管理區域時,使用輔助域名服務器有以下幾點好處:

  ① 輔助DNS服務器提供區域冗餘,可以在該區域的主服務器中止響應時爲客戶端解析該區域的DNS名稱。

  ② 建立輔助DNS服務器能夠減小DNS網絡通訊量。採用分佈式結構,在低速廣域網鏈路中添加DNS服務器能有效地管理和減小網絡通訊量。

  ③ 輔助服務器能夠用於減小區域的主服務器的負載。

(2)區域傳輸

.爲了保證DNS數據相同,全部服務器必須進行數據同步,輔助域名服務器從主域名服務器得到區域副本,這個過程稱爲區域傳輸。

.區域傳輸存在兩種方式:徹底區域傳輸(AXFR)和增量區域傳輸(IXFR)。

.知足發生區域傳輸的條件時,輔助域名服務器向主服務器發送查詢請求,更新其區域文件。   

.區域傳輸過程:

 

① 區域傳輸初始階段,輔助服務器向主DNS服務器發送徹底區域傳輸(AXFR)請求。

② 主服務器作出響應,並將此區域徹底傳輸到輔助服務器。該區域傳輸時會一併發送SOA資源記錄。SOA中「序列號」(serial) 字段表示區域數據的版本,「刷新時間」(refresh)指出輔助服務器下一次發送查詢請求的時間間隔。

③ 刷新間隔到期時,輔助服務器使用SOA查詢來請求從主服務器續訂此區域。

④ 主域名服務器應答其SOA記錄的查詢。該響應包括主服務器中該區域的當前序列號版本。

⑤ 輔助服務器檢查響應中的SOA記錄的序列號,並肯定續訂該區域的方法,若是輔助服務器確認區域文件已經更改,則它會把IXFR查詢發送到主服務器。若SOA響應中的序列號等於其當前的本地序列號,那麼兩個服務器區域數據都相同,而且不須要區域傳輸。而後,輔助服務器根據主服務器SOA響應中的該字段值從新設置其刷新時間,續訂該區域。若是SOA響應中的序列號值比其當前本地序列號要高,則能夠肯定此區域己更新並須要傳輸。

⑥ 主服務器經過區域的增量傳輸或徹底傳輸作出響應。若是主服務器能夠保存修改的資源記錄的歷史記錄,則它能夠經過增量區域傳輸(IXFR) 作出應答。若是主服務器不支持增量傳輸或沒有區域變化的歷史記錄,則它能夠經過徹底區域傳輸(AXFR)作出應答。

(3)配置輔助域名服務器

.DNS 服務器IP地址配置

 

 

.安裝 bind 軟件包

使用yum命令安裝bind服務

yum clean all //安裝前先清除緩存

yum install bind* -y

rpm -qa|grep bind

 

.配置主配置文件 named.conf

[root@localhost ~]# vim /etc/named.conf
 

PS:輔助DNS服務器只須要設置主配置文件,正反向區域解析文件會在輔助DNS服務器設置完成主配置文件重啓DNS服務時又主DNS服務器同步到輔助DNS服務器。只不過路徑是/var/named/slaves而已。

.數據同步測試

① 重啓輔助服務器named服務,使其與主域名服務器數據同步,而後咱們在主域名服務器上執行tail命令查看系統日誌,輔助域名服務器經過完好無損區域複製(AXFR)獲取qftm.com區域數據。

 

② 經過ls命令查看輔助域名服務器/var/named/slaves目錄下是否存在qftm.com區域文件,若存在說明覆製成功。

PS:配置區域複製時主DNS服務器和輔助DNS服務器必定要關閉防火牆

③ 在客戶端測試輔助DNS服務器

[root@localhost ~]# nslookup
> server
Default server: 192.168.2.128
Address: 192.168.2.128#53
> www.qftm.com
Server:         192.168.2.128
Address:        192.168.2.128#53

Name:   www.qftm.com
Address: 192.168.2.100
> dns.qftm.com
Server:         192.168.2.128
Address:        192.168.2.128#53

Name:   dns.qftm.com
Address: 192.168.2.129
> 192.168.2.100
Server:         192.168.2.128
Address:        192.168.2.128#53

100.2.168.192.in-addr.arpa      name = www.qftm.com.
> 192.168.2.129
Server:         192.168.2.128
Address:        192.168.2.128#53

129.2.168.192.in-addr.arpa      name = dns.qftm.com.
> exit

[root@localhost ~]#
相關文章
相關標籤/搜索