实验:实现Internet的DNS架构


实验导图如下:

在这里插入图片描述


准备工作

所有机器要求

  • 关闭防火墙
  • 关闭selinux
  • 时间同步

实验步骤

1.web服务器配置172.20.54.8

yum -y install httpd
systemctl start httpd
echo "www.studylinux.xyz" > /var/www/html/index.html

2.配置关于域 ‘www.studylinux.xyz’ MASTER服务器

yum -y install bind bind-utlis
vim /etc/named.conf
//      listen-on port 53 { 127.0.0.1; };
//      allow-query     { localhost; };
        allow-transfer  {172.20.54.7;};  # 从服务器的IP
vim /etc/named.rfc1912.zone
zone "studylinux.xyz" {
    type master;
    file "studylinux.xyz.zone";
};

vim /var/named/studylinux.xyz.zone
$TTL 1D
@      IN      SOA     master   admin  (
            1  ; serial  #是一个序列号,当主DNS配置文件变更后对编号加1,总长度不能超过10位数
            2D ; refresh #告诉slave间隔多久进行同步,即同步间隔时间
            2H ; retry   #如果slave同步失败后间隔多久再重新同步
            2D ; expire  #预期时间,多久没有与master联系,就放弃retry
            1D ;minimum  #最小TTL值,如果前面没有使用¥TTL来定义,就以此为准

)

              NS   master
              NS   slave
master        A    172.20.54.6
slave         A    172.20.54.7
www           A    172.20.54.8

chmod 640   /var/named/studylinux.xyz.zone
chgrp named /var/named/studylinux.xyz.zone

named-checkconf     //可以检查配置文件的语法。如果没提示说明语法正确
systemctl start named
rndc reload 
// 测试
[root@Centos7 named]# dig www.studylinux.xyz @172.20.54.6

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

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

;; ANSWER SECTION:
www.studylinux.xyz.	86400	IN	A	172.20.54.8

;; AUTHORITY SECTION:
studylinux.xyz.		86400	IN	NS	slave.studylinux.xyz.
studylinux.xyz.		86400	IN	NS	master.studylinux.xyz.

;; ADDITIONAL SECTION:
master.studylinux.xyz.	86400	IN	A	172.20.54.6
slave.studylinux.xyz.	86400	IN	A	172.20.54.7

;; Query time: 0 msec
;; SERVER: 172.20.54.6#53(172.20.54.6)
;; WHEN: Fri Nov 15 21:25:00 CST 2019
;; MSG SIZE  rcvd: 136

3.配置关于域 ‘www.studylinux.xyz’ SLAVE服务器

yum -y install bind bind-utils

vim /etc/named.conf
//      listen-on port 53 { 127.0.0.1; };
//      allow-query     { localhost; };
        allow-transfer   { none; };    #不允许其他主机进行区域传输
vim /etv/named.rfc1912.zone

zone "studylinux.xyz" {
        type slave;
        masters {172.20.54.6;};
        file "slaves/studylinux.xyz.slave";
};

named-checkconf    # 检查配置文件语法
systemctl start named
[root@SLAVE ~]# ll /var/named/slaves/
total 4
-rw-r--r-- 1 named named 355 Nov 15 21:37 studylinux.xyz.slave
# 测试
[root@SLAVE ~]# dig www.studylinux.xyz @172.20.54.7

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

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

;; ANSWER SECTION:
www.studylinux.xyz.	86400	IN	A	172.20.54.8

;; AUTHORITY SECTION:
studylinux.xyz.		86400	IN	NS	master.studylinux.xyz.
studylinux.xyz.		86400	IN	NS	slave.studylinux.xyz.

;; ADDITIONAL SECTION:
master.studylinux.xyz.	86400	IN	A	172.20.54.6
slave.studylinux.xyz.	86400	IN	A	172.20.54.7

;; Query time: 0 msec
;; SERVER: 172.20.54.7#53(172.20.54.7)
;; WHEN: Fri Nov 15 21:42:34 CST 2019
;; MSG SIZE  rcvd: 136

4.搭建xyzDNS 子域名服务器172.20.54.5

yum -y install bind bind-utils

vim /etc/named.conf
//      listen-on port 53 { 127.0.0.1; };   
//      allow-query     { localhost; };
vim /etc/named.rfc1912.conf
zone "xyz"  {
    type master
    file "xyz.zone";
};
vim /var/named/xyz.zone
$TTL 1D
@      IN     SOA    master   admin  (1 2D 2H 2D 1D)
studylinux    NS     masterns1
studylinux    NS     masterns2
master        A      172.20.54.5
masterns1     A      172.20.54.6      
masterns2     A      172.20.54.7

named-checkconf
systemctl start named

chmod   640  /var/named/xyz.zone
chgrp named /var/named/xyz.zone
rndc reload

# 测试
[root@XYZDNS ~]# dig www.studylinux.xyz @172.20.54.5

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

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

;; ANSWER SECTION:
www.studylinux.xyz.	86400	IN	A	172.20.54.8

;; AUTHORITY SECTION:
studylinux.xyz.		86400	IN	NS	masterns2.xyz.
studylinux.xyz.		86400	IN	NS	masterns1.xyz.

;; ADDITIONAL SECTION:
masterns1.xyz.		86400	IN	A	172.20.54.6
masterns2.xyz.		86400	IN	A	172.20.54.7

;; Query time: 2 msec
;; SERVER: 172.20.54.5#53(172.20.54.5)
;; WHEN: Sat Nov 16 08:27:28 CST 2019
;; MSG SIZE  rcvd: 143

5.搭建根域名的DNS服务器172.20.54.4

yum -y install bind bind-utils

vim /etc/named.conf

//      listen-on port 53 { 127.0.0.1; };
//      allow-query     { localhost; };
zone "." in {
    type master;
    file "root.zone";
};

vim /var/named/root.zone
$TTL 1D
@      IN  SOA  master   admin (1 2D 2H 2D  1D)
       IN   NS   master
xyz    IN   NS   xyzns
master       A   172.20.54.4
xyzns        A   172.20.54.5

chmod 640   /var/named/root.zone
chgrp named /var/named/root.zone

named-checkconf
systemctl start named
# 测试
[root@Centos7 ~]# dig www.studylinux.xyz @172.20.54.4

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

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

;; ANSWER SECTION:
www.studylinux.xyz.	86400	IN	A	172.20.54.8

;; AUTHORITY SECTION:
studylinux.xyz.		86400	IN	NS	masterns2.xyz.
studylinux.xyz.		86400	IN	NS	masterns1.xyz.

;; ADDITIONAL SECTION:
masterns2.xyz.		86400	IN	A	172.20.54.7
masterns1.xyz.		86400	IN	A	172.20.54.6

;; Query time: 5 msec
;; SERVER: 172.20.54.4#53(172.20.54.4)
;; WHEN: Sat Nov 16 08:31:17 CST 2019
;; MSG SIZE  rcvd: 143

6.搭建forwardDNS服务器 172.20.54.3

yum -y install bind bind-utils

vim /etc/named.conf
//      listen-on port 53 { 127.0.0.1; };
//      allow-query     { localhost; };
        dnssec-enable no;                  #关闭安全验证
        dnssec-validation no;             
vim /var/named/named.ca
.			518400	 IN	 NS	a.root-servers.net.
a.root-servers.net.     518400   IN      A        172.20.54.4

named-checkconf
systemctl start named
# 测试
[root@Centos7 ~]# dig www.studylinux.xyz @172.20.54.3

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

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

;; ANSWER SECTION:
www.studylinux.xyz.	86380	IN	A	172.20.54.8

;; AUTHORITY SECTION:
studylinux.xyz.		86380	IN	NS	masterns1.xyz.
studylinux.xyz.		86380	IN	NS	masterns2.xyz.

;; ADDITIONAL SECTION:
masterns1.xyz.		86380	IN	A	172.20.54.6
masterns2.xyz.		86380	IN	A	172.20.54.7

;; Query time: 1 msec
;; SERVER: 172.20.54.3#53(172.20.54.3)
;; WHEN: Sat Nov 16 09:58:41 CST 2019
;; MSG SIZE  rcvd: 143

7.搭建localDNS服务器 172.20.54.2

yum -y install bind bind-utils

vim /etc/named.conf
//      listen-on port 53 { 127.0.0.1; };
//      allow-query     { localhost; };
        forward first;
        forwarders {172.20.54.3;};
        dnssec-enable no;
        dnssec-validation no;

systemctl   start reload
# 测试
[root@Centos7 ~]# dig www.studylinux.xyz @172.20.54.2

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

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

;; ANSWER SECTION:
www.studylinux.xyz.	86061	IN	A	172.20.54.8

;; AUTHORITY SECTION:
studylinux.xyz.		86061	IN	NS	masterns2.xyz.
studylinux.xyz.		86061	IN	NS	masterns1.xyz.

;; ADDITIONAL SECTION:
masterns1.xyz.		86061	IN	A	172.20.54.6
masterns2.xyz.		86061	IN	A	172.20.54.7

;; Query time: 1 msec
;; SERVER: 172.20.54.2#53(172.20.54.2)
;; WHEN: Sat Nov 16 10:03:59 CST 2019
;; MSG SIZE  rcvd: 143

8.搭建customer访问客户端172.20.54.1

yum -y install bind-utils

vim /etc/resolv.conf
search server0
nameserver 172.20.54.2
// 测试
[root@Centos7 ~]# ping www.studylinux.xyz
PING www.studylinux.xyz (172.20.54.8) 56(84) bytes of data.
64 bytes from 172.20.54.8 (172.20.54.8): icmp_seq=1 ttl=64 time=1.74 ms
64 bytes from 172.20.54.8 (172.20.54.8): icmp_seq=2 ttl=64 time=0.729 ms

[root@Centos7 ~]# dig www.studylinux.xyz

; <<>> DiG 9.11.4-P2-RedHat-9.11.4-9.P2.el7 <<>> www.studylinux.xyz
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 64919
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

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

;; ANSWER SECTION:
www.studylinux.xyz.	86400	IN	A	172.20.54.8

;; Query time: 7 msec
;; SERVER: 172.20.54.2#53(172.20.54.2)
;; WHEN: Sat Nov 16 10:21:50 CST 2019
;; MSG SIZE  rcvd: 63


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值