使用bind部署DNS主从服务器

说明:这里是Linux服务综合搭建文章的一部分,本文可以作为单独搭建主从DNS服务器的参考。

注意:这里所有的标题都是根据主要的文章(Linux基础服务搭建综合)的顺序来做的。

如果需要查看相关软件版本和主机配置要求,请根据目录自行查看。

Linux服务综合搭建的文章目录

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

Linux基础服务搭建综合

1、foundation创建yum仓库

2、部署DNS

3、将YUM源通过httpd发布出来

4、rhel7主机安装JDK

5、foundation通过Rsyslog搭建集中日志服务器

6、foundation LAMP环境搭建

7、foundation搭建NFS服务

8、rhel7 JAVA web环境搭建(使用Tomcat8整合httpd)

9、foundation自建CA实现HTTPS

10、foundation配置kerberos和NTP服务以及安全的NFS挂载

11、foundation提供SAMBA服务

12、rhel7 配置软ISCSI存储

13 rhel7主机配置端口转发和地址伪装

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

主机角色说明

2、部署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文件

 

测试(能正确解析)

 

最后希望大家提意见、转发、评论和交流!!!

转载于:https://www.cnblogs.com/meizy/p/bind_dns.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值