使用bind部署DNS主从服务器
说明:这里是Linux服务综合搭建文章的一部分,本文可以作为单独搭建主从DNS服务器的参考。
注意:这里所有的标题都是根据主要的文章(Linux基础服务搭建综合)的顺序来做的。
如果需要查看相关软件版本和主机配置要求,请根据目录自行查看。
Linux服务综合搭建的文章目录
====================================================
5、foundation通过Rsyslog搭建集中日志服务器
8、rhel7 JAVA web环境搭建(使用Tomcat8整合httpd)
10、foundation配置kerberos和NTP服务以及安全的NFS挂载
====================================================
主机角色说明

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文件

测试(能正确解析)


最后希望大家提意见、转发、评论和交流!!!
使用bind部署DNS主从服务器的更多相关文章
- Linux的DNS主从服务器部署
下面的部署是在Linux的DNS正向解析部署上进行修改的. 如果有什么问题或者错误,可以访问上篇帖子 下面开始有关DNS的服务部署.<DNS主从服务器> 环境描述: 192.168.196 ...
- centos6.5环境DNS-本地DNS主从服务器bind的搭建
centos6.5环境DNS-本地DNS主从服务器bind的搭建 在上一篇博客中我已经搭建好了一个本地DNS服务器,能够实现正向反向解析,那么我们只需要加入一台从DNS服务器即可完成,我们来开始配置主 ...
- DNS解析原理与Bind部署DNS服务
DNS是什么? DNS(Domain Name System,域名系统)是互联网上最核心的带层级的分布式系统,它负责把域名转换为IP地址.反查IP到域名的反向解析以及宣告邮件路由等信息,使得基于域名提 ...
- DNS主从服务器+mysql
1 .背景 BIND从文本文件中获取数据,这样容易因为编辑错误出现问题. BIND需要将数据加载到内存中,如果域或者记录较多,会消耗大量的内存. BIND启动时解析Zone文件,对于一个记录较多的DN ...
- 基于bind搭建DNS主从
使用bind的主从复制功能可以实现的功能:提供冗余,避免单点故障:均衡负载查询需求,从而提高系统可用性. 一.安装 #bind-chroot 负责DNS安全作用,将bind进程严格限制在特定的目录中 ...
- DNS主从服务器
一.目的: 我们知道,DNS服务器在网络服务中可能出现故障当机等状况,会导致DNS服务瘫痪,显然在实际的网络应用中我们不希望出现这种状况,所有我们就要配置从 服务器来在主DNS服务器出现故障时代替他来 ...
- Linux构建DNS主从服务器
所有服务器:iptables -Fsystemctl stop firewalldsetenforce 0 配置yum 主服务器:[root@localhost ~]# yum -y install ...
- 部署DNS从服务器
修改主服务器中区域信息文件: # vi /etc/named.rfc1912.zones 检查配置文件是否有错误 # named-checkconf 重启named服务程序,让配置文件生效 #syst ...
- bind域名dns解析及主从服务的配置
bind域名dns解析及主从服务的配置 1.dns解析介绍 人们习惯记忆域名,但机器间互相只认IP地址,域名与IP地址之间是多对一的关系,一个ip地址不一定只对应一个域名,且一个域名只可以对应 ...
随机推荐
- Mybatis映射文件中的参数传递
一.接口中只有一个参数 1.参数是基本类型or基本类型的包装类or字符串类型 这种情况下映射文件中#{}里的内容可以是任意的,你可以使用#{xxx} 或 #{abc} .....因为此时#{}相当于一 ...
- DOS命令行(5)——Windows系统的配置与管理(下)
whoami --查看当前有效用户 这个工具可以用来获取本地系统上当前用户(访问令牌)的用户名和组信息,以及相应的安全标识符(SID).声明.本地系统上当前用户的权限.登录标识符(登录 ID).例如, ...
- c#将图片Image转换为内存流MemoryStream
HttpWebResponse resp = (HttpWebResponse)wRequest.GetResponse(); Stream stream = resp.GetResponseStre ...
- DNS 解析过程
DNS 是应用层协议,用于将域名转换成 IP 地址. 1. 解析过程 DNS 的核心系统是一个三层的树状.分布式服务,基本对应域名的结构. 根域名服务器:管理顶级域名服务器,返回 com.net.cn ...
- Java实现适配器模式
适配器模式(Adapter) 适配器模式涉及到3个角色:要被适配的接口,适配器,目标接口 适配器的工作就是将被适配的接口转换为目标接口 "鸭子类型"就是一个典型的适配器模式:如果它 ...
- CRM系统用多种形式与客户无障碍沟通
当您与潜在客户.联系人交流,或者团队内部沟通时,是不是经常要在CRM系统和第三方应用之间来回切换,仅仅是为了打电话.开会等,简直不要太麻烦.而CRM客户管理系统与Zoho Meeting的集成,就能够 ...
- AcWing 204. 表达整数的奇怪方式
#include<bits/stdc++.h> using namespace std; typedef long long LL; LL exgcd(LL a,LL b,LL & ...
- XCTF simple js
思路分析: 进入靶场, 随便输入,肯定是错误的,f12看下源码,结合题目说js,把js代码单独拿出来看看. function dechiffre(pass_enc){ var pass = " ...
- bugku crypto wp上半部分汇总
1.滴答~滴 摩斯码,在线解开. 2. 栅栏密码,在线解就出flag了. 3. Ook解密,由.?!Ook组成密文,在线网站解密 4.这不是摩斯密码 有点像jsfuck,发现又不是,因为不会出现大于号 ...
- 查找----python
class Solution: #顺序查找 def seq_search(self,list,num): for i in(range(len(list))): if list[i] == num: ...