linux進階-搭建DNS實現internet綜合dns架構

在這裏插入圖片描述

前提準備

需要8臺主機
DNS客戶端:192.168.26.17/24
本地DNS服務器(只緩存):192.168.26.27/24
轉發目標DNS服務器:192.168.26.37/24
根DNS服務器:192.168.26.47/24
cn域DNS服務器:192.168.26.18/24
magedu.org域主DNS服務器:192.168.26.28/24
magedu.org域從DNS服務器:192.168.26.38/24
www.magedu.org的WEB服務器:192.168.26.48/24

實驗環境

關防火牆、關selinux 、時間同步 ✅

實現客戶端配置

-------------------------------------------------------------------
client
[root@client ~]# vim /etc/resolv.conf
#編輯dns配置文件刪除其他項,留下指向local dns的IP地址
nameserver 192.168.26.27

[root@client ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth1
#配置網卡信息,如下
BOOTPROTO="static"
IPADDR0=192.168.26.17
NETMASK=255.255.255.0
DEFROUTE="yes"
NAME="eth1"
DEVICE="eth1"
ONBOOT="yes"

實現web服務

-------------------------------------------------------------------
web
[root@www_bokebi_cn ~]# yum -y install httpd #安裝httpd服務
[root@www_bokebi_cn ~]# echo www.bokebi.cn > /var/www/html/index.html #生成測試網頁
[root@www_bokebi_cn ~]# systemctl start httpd #開啓httpd服務
[root@www_bokebi_cn ~]# curl 192.168.26.48 #查看網頁是否正常打開

實現bokebi.cn域的主dns服務器

-------------------------------------------------------------------
boekbi.cn master dns
[root@master_dns ~]# yum -y install bind #安裝dns服務
-------------------------------------------------------
[root@master_dns ~]# vim /etc/named.conf #編輯dns配置文件
#註釋下面兩行
// listen-on port 53 { 127.0.0.1; }; 
// allow-query { localhost; };

#添加下列內容,只允許從服務器進行區域傳輸,地址爲從服務器IP
alllow-transfer { 192.168.26.38; }; 
--------------------------------------------------
[root@master_dns etc]# vim /etc/named.rfc1912.zones
#編輯文件,添加下列內容
zone "boekbi.cn" IN {
        type master; #定義類型
        file "boekbi.cn"; #定義zone文件名
};
----------------------------------------------------------------------
[root@master_dns etc]# vim /var/named/boekbi.cn.zone #新建編輯資源配置文件
$TTL 1D
@ IN SOA master  admin.bokebi.cn. (
                        1  ; serial
                        1D ; refresh
                        1H ; retry
                        1W ; expire
                        3D ) ; minimum
                NS      master
                NS      slave
master          A       192.168.26.28
slave           A       192.168.26.38
www.bokebi.cn.  A       192.168.26.48
--------------------------------------
systemctl start named #第一次啓動服務
rndc reload #不是第一次啓動服務

實現bokebi.cn域的從dns服務器

-------------------------------------------------------------------
bokebi.cn slave dns
[root@slave_dns ~]# yum -y install bind #安裝dns服務
-----------------------------------------------------
[root@slave_dns ~]# vim /etc/named.conf #編輯配置文件
#註釋這兩行
// listen-on port 53 { 127.0.0.1; };
// allow-query { localhost; };

#不允許其它主機進行區域傳輸
allow-transfer { none; };
------------------------------------------------------------
[root@slave_dns ~]# vim /etc/named.rfc1912.zones #編輯規定文件
zone "bokebi.cn" IN {
        type slave; #定義類型
        masters { 192.168.26.28; }; #指定主dns服務器地址
        file "slaves/bokebi.cn.slave"; #定義zone文件名
};
---------------------------------------------
systemctl start named #第一次啓動服務
rndc reload #不是第一次啓動服務
[root@slave_dns ~]# ls /var/named/slaves/bokebi.cn.slave #查看區域數據庫文件是否生成

實現cn域的主dns服務器

--------------------------------------------------------------------------
cn dns
[root@cn_dns ~]# yum -y install bind #安裝dns服務
---------------------------------------------------
[root@cn_dns ~]# vim /etc/named.conf #編輯配置文件
#註釋這兩行
// listen-on port 53 { 127.0.0.1; };
// allow-query { localhost; };
------------------------------------------
[root@cn_dns ~]# vim /etc/named.rfc1912.zones #編輯規定文件
#加上這段
zone "localhost.localdomain" IN {
        type master; #定義類型
       file "cn.zone"; #定義zone文件名
};
----------------------------------------------
[root@cn_dns ~]# vim /var/named/cn.zone #新建編輯資源配置文件
$TTL 1D
@ IN SOA master admin.bokebi.cn. (
                        1  ; serial
                        1D ; refresh
                        1H ; retry
                        1W ; expire
                        3D ) ; minimum
                NS      master
bokebi.cn.      NS      bokebi-master
bokebi.cn.      NS      bokebi-slave
master          A       192.168.26.18
bokebi-master   A       192.168.26.28
bokebi-slave    A       192.168.26.38
------------------------------------------------
[root@cn_dns ~]# chgrp named /var/named/cn.zone #修改屬組 
[root@cn_dns ~]# ll /var/named/cn.zone 

systemctl start named #第一次啓動服務 
rndc reload #不是第一次啓動服務 

實現根域的主dns服務器

-------------------------------------------------------------------
root dns
[root@root_dns ~]# yum -y install bind #安裝dns服務
[root@root_dns ~]# vim /etc/named.conf #編輯配置文件
#註釋這兩行
// listen-on port 53 { 127.0.0.1; };
// allow-query { localhost; };
------------------------------------------------------
[root@root_dns ~]# vim /etc/named.rfc1912.zones #編輯規定文件
zone "." IN {
        type master; #定義類型
        file "root.zone"; #定義zone文件名
};
---------------------------------------------------
[root@root_dns ~]# vim /var/named/root.zone #新建編輯資源配置文件
$TTL 1D
@       IN      SOA     master admin.bokebi.cn.  (
                        1  ; serial
                        1D ; refresh
                        1H ; retry
                        1W ; expire
                        3D ) ; minimum
                NS      master
cn              NS      cn-dns
master          A       192.168.26.47
cn-dns          A       192.168.26.18
-------------------------------------------------------
[root@root_dns ~]# chgrp named /var/named/root.zone #修改屬組
[root@root_dns ~]# chmod 640 /var/named/root.zone #修改權限

systemctl start named #第一次啓動
rndc reload #不是第一次啓動

實現轉發目標的dns服務器

--------------------------------------------------------------------
forward dns
[root@forward ~]# yum -y install bind #安裝dns服務
---------------------------------------------
[root@forward ~]# vim /etc/named.conf #編輯配置文件
#註釋這兩行
// listen-on port 53 { 127.0.0.1; };
// allow-query { localhost; };

#關閉以下選項
dnssec-enable no;
dnssec-validation no;
-------------------------------------------------
[root@forward ~]# vim /var/named/named.ca 
.                       518400  IN      NS      a.root-servers.net.
# 其他都註釋
a.root-servers.net.     3600000 IN      A       192.168.26.47
# 其他都註釋
-----------------------------------------------
systemctl start named #第一次啓動
rndc reload #不是第一次啓動

實現local緩存dns服務器

--------------------------------------------------------------------
local dns
[root@local_dns ~]# yum -y install bind #安裝dns服務
-----------------------------------------
[root@local_dns ~]# vim /etc/named.conf #編輯配置文件
# 註釋這兩行
// listen-on port 53 { 127.0.0.1; };
// allow-query { localhost; };

#添加下列兩行
forward only;
forwarders { 192.168.26.37;};

#關閉以下選項
dnssec-enable no;
dnssec-validation no;
--------------------------------------------
systemctl start named #第一次啓動
rndc reload #不是第一次啓動

客戶端進行測試

[root@client ~]# dig www.bokebi.cn

; <<>> DiG 9.11.4-P2-RedHat-9.11.4-9.P2.el7 <<>> www.bokebi.cn
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 34881
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.bokebi.cn.			IN	A

;; ANSWER SECTION:
www.bokebi.cn.		86400	IN	A	192.168.26.48

;; AUTHORITY SECTION:
bokebi.cn.		86400	IN	NS	bokebi-master.cn.
bokebi.cn.		86400	IN	NS	bokebi-slave.cn.

;; ADDITIONAL SECTION:
bokebi-master.cn.	86400	IN	A	192.168.26.28
bokebi-slave.cn.	86400	IN	A	192.168.26.38

;; Query time: 4 msec
;; SERVER: 192.168.26.27#53(192.168.26.27)
;; WHEN: Sat Nov 16 20:45:44 CST 2019
;; MSG SIZE  rcvd: 145

[root@client ~]# curl www.bokebi.cn
www.bokebi.cn
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章