使用bind部署DNS主從服務器

說明:這裏是Linux服務綜合搭建文章的一部分,本文能夠做爲單獨搭建主從DNS服務器的參考。html

注意:這裏全部的標題都是根據主要的文章(Linux基礎服務搭建綜合)的順序來作的。web

若是須要查看相關軟件版本和主機配置要求,請根據目錄自行查看。

Linux服務綜合搭建的文章目錄緩存

====================================================tomcat

Linux基礎服務搭建綜合安全

一、foundation建立yum倉庫服務器

二、部署DNStcp

三、將YUM源經過httpd發佈出來測試

四、rhel7主機安裝JDKspa

五、foundation經過Rsyslog搭建集中日誌服務器3d

六、foundation LAMP環境搭建

七、foundation搭建NFS服務

八、rhel7 JAVA web環境搭建(使用Tomcat8整合httpd)

九、foundation自建CA實現HTTPS

十、foundation配置kerberos和NTP服務以及安全的NFS掛載

十一、foundation提供SAMBA服務

十二、rhel7 配置軟ISCSI存儲

13 rhel7主機配置端口轉發和地址假裝

====================================================

主機角色說明

二、部署DNS

2.1 一些概念

2.1.1 DNS查詢類型:

遞歸查詢:客戶端只發送一次請求,就能從咱們配置的DNS服務器返回最終結果

迭代查詢:客戶端在發送請求後,咱們指定的DNS服務器只會返回一個參考答案

2.1.2解析類型

名稱服務器:域內負責解析本域內的名稱的主機;

根服務器:13組服務器

解析類型:

       Name --> IP

       IP --> Name

       注意:正反向解析是兩個不一樣的名稱空間,是兩棵不一樣的解析樹;

              反向解析在早期是很複雜的,難以實現,很是的慢,直到今天,互聯網上還有不少主機

       只能正向解析(除開經過設置了只能正向的),可是反向解析又頗有用,好比在郵件服務判斷垃圾郵件時。

2.1.3 DNS服務器的類型

主DNS服務器

輔助DNS服務器

緩存DNS服務器

轉發器

主DNS服務器:維護所負責解析的域內解析庫服務器;解析庫由管理員維護;

從DNS服務器:從主DNS服務器或其它的從DNS服務器那裏「複製」(區域傳遞)一份解析庫;

2.1.4 SOA

序列號:解析庫的版本號;前提:主服務器解析庫內容發生變化,其序列遞增;

刷新時間間隔:從服務器從主服務器請求同步解析庫的時間間隔;

重試時間間隔:從服務器從主服務器請求同步解析庫失敗時,再次嘗試的時間間隔;

過時時長:從服務器始終聯繫不到主服務器時,多久多後放棄從服務器角度,中止提供服務;

"通知"機制:當主服務器發送通知給從服務器,即便刷新時間沒到,這樣可以保證從服務器儘可能不會很落後於主服務器

2.1.5 區域傳送(使用TCP的53端口,不是UDP):

       全量傳送:傳送整個解析庫

       增量傳送:傳遞解析庫變化的那部份內容

 

2.1.6 區域解析庫(由衆多RR組成)

資源記錄:Resource Record, RR #存儲在區域解析庫中的

記錄類型:A, AAAA, PTR, SOA, NS, CNAME, MX

 

SOA:Start Of Authority,起始受權記錄;一個區域解析庫有且僅能有一個SOA記錄,而必須爲解析庫的第一條記錄;

A:internet Address,做用,FQDN --> IP

AAAA: FQDN --> IPv6

PTR: PoinTeR,IP --> FQDN

NS: Name Server,專用於標明當前區域的DNS服務器

CNAME:Canonical Name,別名記錄

MX: Mail eXchanger,郵件交換器  #標識一個域中的哪一個服務器是郵件服務器

2.2 foundation做爲主DNS

注意:這裏要作主從從DNS服務器,必須開啓tcp的53端口,

由於DNS在區域間傳輸時使用的是tcp的53端口,而不是日常咱們在使用時經常使用的udp的53端口。

2.2.1 安裝軟件包

1 yum install bind bind-libs bind-utils #安裝必要的軟件 2 
3 systemctl enable named   #開機自啓動

1 firewall-cmd --permanent --add-service=dns && firewall-cmd --reload

配置name服務開機自啓動

1 systemctl enable named   #開機自啓動

2.2.2 修改主配置文件

 

定義容許同步的DNS服務器,默認是容許全部的,可是這樣不安全的。

zone "mei.com." IN { type master; file "mei.com.zone"; allow-transfer { trusted-servers; }; }; zone "25.172.in-addr.arpa." IN{ type master; file "172.25.zone"; allow-transfer { trusted-servers; }; };

1 [root@foundaiton:~]# named-checkconf /etc/named.conf

2.2.3 配置資源記錄

 

[root@foundaiton:~]# cat >>/var/named/mei.com.zone<<EOF $TTL 86400 $ORIGIN mei.com. @ IN SOA foundation.mei.com. admin.mei.com. ( 2019020201 1H 2W 2H 1H ) @ IN NS foundation.mei.com. @ IN NS rhel7.mei.com. foundation IN A 172.25.0.55 pakg IN A 172.25.0.55 rhel7 IN A 172.25.0.15 rhel6 IN A 172.25.0.25 www IN A 172.25.0.55 tomcat IN A 172.25.0.15
ftp IN CNAME www @ IN MX 10 admin admin IN A 172.25.0.55 EOF

 

 

[root@foundaiton:~]# cat >>/var/named/172.25.zone<<EOF $TTL 86400 $ORIGIN 25.172.in-addr.arpa. @ IN SOA foundation.mei.com. admin.mei.com. ( 2019020201 1H 2W 1H 1D ) @ IN NS rhel7.mei.com. @ IN NS foundation.mei.com. 25.0 IN PTR rhel6.mei.com. 55.0 IN PTR foundation.mei.com. 15.0 IN PTR rhel7.mei.com. 55.0 IN PTR www.mei.com. 55.0 IN PTR admin.mei.com. 15.0 IN PTR tomcat.mei.com. EOF

 

 

重啓服務

1 systemctl restart named

2.2.4 測試

測試(在本機rhel7和rhel6上,注意,rhel6沒有nmcli命令)

2.2.4.1 添加主機的DNS服務器

nmcli命令

1 [root@rhel7 ~]#nmcli con modify interface ipv4.dns 172.25.0.55

修改配置文件

 

2.2.4.2 測試解析是否正常

這裏只列貼部分圖片

2.2.4.3 測試反向解析

 

2.3 rhel7做爲從DNS

注意:這裏做爲從DNS服務器,必須開啓tcp的53端口,由於DNS在區域間傳輸時使用的是tcp的53端口,而不是日常咱們在使用時經常使用的udp53端口。

從DNS服務器配置

2.3.1 安裝bind相關的軟件

先配置好yum源,可使用光盤鏡像或者其餘yum源,這裏使用光盤鏡像做爲yum源

 

安裝軟件包

 

配置named服務開機自啓

 

2.3.2 修改配置

 

1 firewall-cmd --permanent --add-service=dns && firewall-cmd --reload #防火牆配置

啓動服務

2.3.3 模擬區域傳送

注意:要立刻看到效果,在模擬前最好重啓此服務器,重啓後會很容易看到/var/named/slaves有同步過來的zone文件

若是安裝完後到配置結束都沒啓動過named服務,那麼只要配置正確,一啓動服務就能看到同步過來的zone文件。

下面是模擬區域傳輸

使用dig -t axfr

1 [root@rhel7 ~]# dig -t axfr mei.com

輸出結果以下:(部分)

關閉主DNS

 

而後測試從DNS服務器,能使用從服務器正確解析。

2.3.4 測試rhel6主機的DNS解析

注意,這臺主機是rhel6,因此默認不能像rhel7那樣使用nmcli命令,它的DNS在網卡配置文件中的寫法能夠參考/etc/resolv.conf

或者直接修改/etc/resolv.con文件

 

測試(能正確解析)

 

最後但願你們提意見、轉發、評論和交流!!!

相關文章
相關標籤/搜索