说明:这里是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文件

测试(能正确解析)

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

使用bind部署DNS主从服务器的更多相关文章

  1. Linux的DNS主从服务器部署

    下面的部署是在Linux的DNS正向解析部署上进行修改的. 如果有什么问题或者错误,可以访问上篇帖子 下面开始有关DNS的服务部署.<DNS主从服务器> 环境描述: 192.168.196 ...

  2. centos6.5环境DNS-本地DNS主从服务器bind的搭建

    centos6.5环境DNS-本地DNS主从服务器bind的搭建 在上一篇博客中我已经搭建好了一个本地DNS服务器,能够实现正向反向解析,那么我们只需要加入一台从DNS服务器即可完成,我们来开始配置主 ...

  3. DNS解析原理与Bind部署DNS服务

    DNS是什么? DNS(Domain Name System,域名系统)是互联网上最核心的带层级的分布式系统,它负责把域名转换为IP地址.反查IP到域名的反向解析以及宣告邮件路由等信息,使得基于域名提 ...

  4. DNS主从服务器+mysql

    1 .背景 BIND从文本文件中获取数据,这样容易因为编辑错误出现问题. BIND需要将数据加载到内存中,如果域或者记录较多,会消耗大量的内存. BIND启动时解析Zone文件,对于一个记录较多的DN ...

  5. 基于bind搭建DNS主从

    使用bind的主从复制功能可以实现的功能:提供冗余,避免单点故障:均衡负载查询需求,从而提高系统可用性. 一.安装 #bind-chroot 负责DNS安全作用,将bind进程严格限制在特定的目录中 ...

  6. DNS主从服务器

    一.目的: 我们知道,DNS服务器在网络服务中可能出现故障当机等状况,会导致DNS服务瘫痪,显然在实际的网络应用中我们不希望出现这种状况,所有我们就要配置从 服务器来在主DNS服务器出现故障时代替他来 ...

  7. Linux构建DNS主从服务器

    所有服务器:iptables -Fsystemctl stop firewalldsetenforce 0 配置yum 主服务器:[root@localhost ~]# yum -y install ...

  8. 部署DNS从服务器

    修改主服务器中区域信息文件: # vi /etc/named.rfc1912.zones 检查配置文件是否有错误 # named-checkconf 重启named服务程序,让配置文件生效 #syst ...

  9. bind域名dns解析及主从服务的配置

    bind域名dns解析及主从服务的配置 1.dns解析介绍     人们习惯记忆域名,但机器间互相只认IP地址,域名与IP地址之间是多对一的关系,一个ip地址不一定只对应一个域名,且一个域名只可以对应 ...

随机推荐

  1. java容器学习笔记

    容器 容器的组成 容器有两个接口Map和Collection. collection接口有List类和set类. List类可以分为:Vector.LinkedList.ArrayList.CopyO ...

  2. (3)虚拟Web主机

    虚拟Web主机 作用:让一台Web服务器,提供多个页面 搭建方式: 1.基于域名的虚拟Web 2.基于端口的虚拟Web 3.基于IP地址的虚拟Web ######################### ...

  3. 可微渲染 SoftRas 实践

    SoftRas 是目前主流三角网格可微渲染器之一. 可微渲染通过计算渲染过程的导数,使得从单张图片学习三维结构逐渐成为现实.可微渲染目前被广泛地应用于三维重建,特别是人体重建.人脸重建和三维属性估计等 ...

  4. Mysql慢SQL分析及优化

    为何对慢SQL进行治理 从数据库角度看:每个SQL执行都需要消耗一定I/O资源,SQL执行的快慢,决定资源被占用时间的长短.假设总资源是100,有一条慢SQL占用了30的资源共计1分钟.那么在这1分钟 ...

  5. ld-linux-x86-64消耗大量的CPU

    1.现象: 服务器CPU使用率很高 top查看cpu使用进程: 2.进程用户是oracle,根据spid查看是否是数据库进程,经过查询发现:不是数据库内部的进程 select a.sql_id,a.s ...

  6. C#《大话设计模式》之模板方法模式学习笔记

    static void Main(string[] args) { Console.WriteLine("学生甲抄的试卷:"); TestPaper A = new TestPap ...

  7. 【学习】自定义view

    自定义控件其实很简单1/2   Canvas的使用 自定义控件其实很简单1/3   Shader与画布的旋转 自定义控件其实很简单2/3   view的测量 自定义控件其实很简单1/4   FontM ...

  8. Kubernetes使用节点亲缘性将POD调度到特定节点上

    节点污点可以用来让pod远离特定的节点,尽量在不修改已有pod信息的前提,通过在节点添加污点信息,来拒绝pod在某些节点上的部署. 而现在介绍一种叫做节点亲缘性,通过明确的在pod中添加的信息,来决定 ...

  9. layui tabs选项卡 响应试不显示问题

    添加: var element = layui.element; //Tab的切换功能,切换事件监听等,需要依赖element模块 element.init();

  10. TCP 的 Keepalive 和 HTTP 的 Keep-Alive 是一个东西吗?

    大家好,我是小林. TCP 的 Keepalive 和 HTTP 的 Keep-Alive 是一个东西吗? 这是个好问题,应该有不少人都会搞混,因为这两个东西看上去太像了,很容易误以为是同一个东西. ...