实现 Internet 的 DNS 服务架构

1、环境要求

需要8台主机
DNS客户端:192.168.100.120/24
本地DNS服务器(只缓存):192.168.100.100/24
转发目标DNS服务器:192.168.100.101/24
根DNS服务器:192.168.100.102/24
org域DNS服务器:192.168.100.103/24
test.org域主DNS服务器:192.168.100.104/24
test.org域从DNS服务器:192.168.100.105/24
www.test.org的WEB服务器:192.168.100.106/24
在这里插入图片描述

2、前提准备

关闭SElinux
关闭防火墙
时间同步

3、实现步骤

3.1、网络配置

#在客户端(192.168.100.120/24)配置DNS服务器地址

vim /etc/sysconfig/network-scripts/ifcfg-eth0

NAME=eth0
DEVICE=eth0
BOOTPROTO=static
IPADDR=192.168.100.120
NETMASK=255.255.255.0
DNS1=192.168.100.100
ONBOOT=yes

在这里插入图片描述

3.2、实现WEB服务

#在web服务器192.168.100.106/24上实现

yum install httpd                        
echo www.test.org > /var/www/html/index.html
systemctl start httpd

3.3、 实现test.org域的主DNS服务器

#在test.org域主DNS服务器192.168.100.104/24上实现

yum install bind -y
vim /etc/named.conf
#注释掉下面两行
// listen-on port 53 { 127.0.0.1; };
// allow-query     { localhost; };
#只允许从服务器进行区域传输
allow-transfer { 192.168.100.105;}; 

vim /etc/named.rfc1912.zones

#加上这段
zone "test.org" {
   type master;
   file  "test.org.zone";
};

创建test.org.zone 文件

cp -pv /var/named/named.localhost /var/named/test.org.zone

vim /var/named/test.org.zone

$TTL 1D
@ IN SOA master admin.test.org. (
 1 ; serial
 1D ; refresh
 1H ; retry
 1W ; expire
 3H ) ; minimum
       NS master
           NS slave
master     A    192.168.100.104
slave       A    192.168.100.105
www       A    192.168.100.106

3.4、 实现magedu.org域的从DNS服务器配置

#在test.org域从DNS服务器192.168.100.105/24上实现

yum install bind -y

修改配置文件

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

vim /etc/named.rfc1912.zones
zone “test.org” {
type slave;
masters { 192.168.100.104;};

file “slaves/test.org.slave”;
};

systemctl start named #第一次启动服务
rndc reload #不是第一次启动服务

ls /var/named/slaves/test.org.slave #查看区域数据库文件是否生成

3.5、 实现org域的主DNS服务器

#在org域的主DNS服务器192.168.100.103/24上实现

yum install bind -y

修改配置文件

vim /etc/named.conf

#注释掉两行
// listen-on port 53 { 127.0.0.1; };
// allow-query     { localhost; };

vim /etc/named.rfc1912.zones

#加上这段
zone "org" {
   type master;
   file  "org.zone";
};

cp -pv /var/named/named.localhost /var/named/org.zone

vim /var/named/org.zone

$TTL 1D
@       IN SOA  master admin.test.org. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
           NS master
test       NS testns1
test       NS testns2
master     A    192.168.100.103
testns1      A    192.168.100.104
testns2       A    192.168.100.105

systemctl start named #第一次启动服务
rndc reload #不是第一次启动服务

3.6、 实现根域的主DNS服务器

#在根域的主DNS服务器192.168.100.102/24上实现

yum install bind -y

修改配置文件

vim /etc/named.conf

#注释掉两行,第13行和第21行
// listen-on port 53 { 127.0.0.1; };
// allow-query     { localhost; };
#将下面行改为:
zone "." IN {
       type master;
       file "root.zone";
};

cp -pv /var/named/named.localhost /var/named/root.zone
vim /var/named/root.zone

$TTL 1D
@       IN SOA  master admin.test.org. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      master
org     NS      orgns
master  A       192.168.100.102
orgns   A       192.168.100.103

systemctl start named #第一次启动
rndc reload #不是第一次启动

3.7、 实现本地只缓存DNS服务器

#在转发目标的DNS服务器192.168.100.100/24上实现

yum install bind -y

修改配置文件

vim /etc/named.conf

#注释掉两行,第13行和第21行
// listen-on port 53 { 127.0.0.1; };
// allow-query     { localhost; };
forward only;
forwarders { 192.168.100.100;};
dnssec-enable no;
dnssec-validation no

systemctl start named #第一次启动

rndc reload #不是第一次启动

4.8、客户端测试

cat /etc/resolv.conf 

nameserver 192.168.100.100

dig www.test.org

; <<>> DiG 9.9.4-RedHat-9.9.4-61.el7 <<>> www.test.org
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 40755
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 2, ADDITIONAL: 3
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;www.test.org. IN A
;; ANSWER SECTION:
www.test.org. 86181 IN A 192.168.100.106
;; AUTHORITY SECTION:
test.org. 86181 IN NS ns2.test.org.
test.org. 86181 IN NS ns1.test.org.
;; ADDITIONAL SECTION:
ns2.test.org. 86181 IN A 192.168.100.104
ns1.test.org. 86181 IN A 192.168.100.105
;; Query time: 284 msec
;; SERVER: 192.168.100.100#53(192.168.100.100)
;; WHEN: Fri Oct 28 10:16:53 CST 2022
;; MSG SIZE  rcvd: 98

curl www.test.org

www.test.org

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

qq_43555873

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值