CentOS7系统DNS主从配置:

一、DNS服务器正向解析:

1.1 基础环境:
主机IP          主机名      操作系统    用途
192.168.0.110   master      centos7     dns主服务器
192.168.0.111   slave       centos7     dns从服务器

1.2 bind服务安装,主从都安装
yum install -y bind*

文件名解释:
文件名                      文件说明          作用
/etc/named.conf             主配置文件        用来定义bind服务程序的运行
/etc/named.rfx1912.zones    区域配置文件      用来保存域名和ip地址对应关系的所在位置
/etc/named                  数据配置文件目录  用来保存域名和ip地址真是对应关系的数据配置文件

修改主配置文件第13行内容使服务器上的所有 IP地址均可以提供 DNS 域名解析服务
修改第21行允许所有人对本服务器发送 DNS 查询请求。
options {
    listen-on port 53  { any; };             #修改为any
    listen-on-v6 port 53 { ::1; };
    directory     "/var/named";
    dump-file     "/var/named/data/cache_dump.db";
    statistics-file "/var/named/data/named_stats.txt";
    memstatistics-file "/var/named/data/named_mem_stats.txt";
    recursing-file  "/var/named/data/named.recursing";
    secroots-file   "/var/named/data/named.secroots";
    allow-query     { any; };               #修改为any

1.2.1正向解析
在 DNS 域名解析服务中,正向解析是指根据域名查找到对应的 IP 地址。当用户输入了一个域名后,bind 服务程序会自动进行查找,并将匹配到的 IP 地址返给用户。

1、编辑区域配置文件,可将原来内容全部清空只留一下内容
[root@master ~]# more /etc/named.rfc1912.zones
zone "bindtest.com" IN {
    type master;                   #服务器类型
    file "bindtest.com.zone";      #域名与ip解析规则
    allow-update { none; }; #允许哪些客户机动态更新解析
};
[root@master ~]#

[root@master ~]# service network restart

2、从/var/named 目录中复制一份正向解析的模板文件(named.localhost)进行编辑
[root@master ~]# ce /var/named/
[root@server named]# cp -ar named.localhost bindtest.com.zone
[root@server named]# cd /var/named
[root@server named]#
[root@server named]# more bindtest.com.zone
$TTL 1D
@    IN SOA    @ rname.invalid. (
                    0    ; serial        #更新序列号
                    1D    ; refresh       #更新时间
                    1H    ; retry         #重试延时
                    1W    ; expire        #失效时间
                    3H )    ; minimum       #无效解析记录的缓存时间
    NS    ns.bindtest.com.     #域名服务器记录
ns    A    192.168.0.110        #域名解析服务器
@       IN MX 10 mail.bindtest.com   #邮件交换记录,设置MX优先级别为10或其他
mail    IN A    192.168.0.110        #表示mail.bindtest.com解析后地址为192.168.0.110
www     IN A    192.168.0.110
bbs     IN A    192.168.0.111        #表示bbs.bindtest.com解析后地址为192.168.0.110
blog    IN A    192.168.0.111
[root@server named]#

3、系统网卡中的 DNS 地址参数修改成本机 IP 地址,重启服务bind服务检测是否正向是否配置成功
[root@server named]# systemctl restart named
[root@server named]# systemctl restart network
[root@server named]#

[root@master ~]# nslookup www.bindtest.com
Server:        192.168.0.110
Address:    192.168.0.110#53

Name:    www.bindtest.com
Address: 192.168.0.110

[root@master ~]# nslookup mail.bindtest.com
Server:        192.168.0.110
Address:    192.168.0.110#53

Name:    mail.bindtest.com
Address: 192.168.0.110

[root@master ~]# nslookup bbs.bindtest.com
Server:        192.168.0.110
Address:    192.168.0.110#53

Name:    bbs.bindtest.com
Address: 192.168.0.111

[root@master ~]# nslookup blog.bindtest.com
Server:        192.168.0.110
Address:    192.168.0.110#53

Name:    blog.bindtest.com
Address: 192.168.0.111

[root@master ~]#

1.2.1 反向解析实验

反向解析的作用是将 IP 地址解析为对应的域名信息。

1、编辑区域文件,在下方追加反向解析区域配置
[root@server named]# vim /etc/named.rfc1912.zones
zone "bindtest.com" IN {
        type master;
        file "bindtest.com.zone";
        allow-update { none; };
};

zone "0.168.192.in-addr.arpa" IN{ #在定义区域时应该要把ip地址反写,如0.168.192只写网络位
        type master;
        file "192.168.0.arpa";     #此处名字需要与正向解析文件区别开
        allow-update { none; };
};

2、从/var/named 目录中复制一份正向解析的模板文件(named.loopback)进行编辑
[root@master ~]# cd /var/named/
[root@master ~]# cp -ar named.loopback 192.168.0.arpa
[root@master ~]# vim 192.168.0.arpa
$TTL 1D
@       IN SOA  bindtest.com. root.bindtest.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      ns.bindtest.com.
ns      A       192.168.0.110
110     PTR     ns.bindtest.com.          #PTR为反向指针 192.168.0.110可解析城ns.bindtest.com
110     PTR     mail.bindtest.com.
110     PTR     www.bindtest.com.
111     PTR     bbs.bindtest.com.
111     PTR     blog.bindtest.com.

[root@master ~]#

3、重启服务、检验解析结果
[root@server named]# nslookup 192.168.0.110
110.0.168.192.in-addr.arpa    name = mail.bindtest.com.
110.0.168.192.in-addr.arpa    name = ns.bindtest.com.
110.0.168.192.in-addr.arpa    name = www.bindtest.com.

[root@server named]# nslookup 192.168.0.111
111.0.168.192.in-addr.arpa    name = bbs.bindtest.com.
111.0.168.192.in-addr.arpa    name = blog.bindtest.com.

[root@server named]#

二、从服务部署
在实际工作环境中,对于解析任务繁重,工作负荷较大的服务器而言,难免存在服务器出现问题,而在网络环境中,如果因为服务器不能提供服务,损失将会是巨大的,因此需要做一个备份可提供服务的DNS服务器,称为从DNS服务器。
2.1主服务配置

修改主服务区域文件配置
[root@server named]# vim /etc/named.rfc1912.zones
zone "bindtest.com" IN {
        type master;
        file "bindtest.com.zone";
        allow-update { 192.168.0.111; };  #修改成允许更新区域信息的主机地址
};

zone "0.168.192.in-addr.arpa" IN{
        type master;
        file "192.168.0.arpa";
        allow-update { 192.168.0.111; };  #修改成允许更新区域信息的主机地址
};
[root@server named]#

重启主服务bind程序
[root@server named]# systemctl restart named
[root@server named]#

2.1从服务配置

1、参照1.2对bind服务安装并对主配置文件(/etc/named.conf)进行修改
options {
    listen-on port 53 { any; };
    listen-on-v6 port 53 { ::1; };
    directory     "/var/named";
    dump-file     "/var/named/data/cache_dump.db";
    statistics-file "/var/named/data/named_stats.txt";
    memstatistics-file "/var/named/data/named_mem_stats.txt";
    recursing-file  "/var/named/data/named.recursing";
    secroots-file   "/var/named/data/named.secroots";
    allow-query     { any; };

2、修改从服务区域文件
[root@slave ~]# vim /etc/named.rfc1912.zones
zone "bindtest.com" IN {
        type slave;                      #服务器类型为从服务器
        masters { 192.168.0.110; };      #主服务器ip地址
        file "slaves/bindtest.com.zone"; #同步配置文件的位置
};

zone "0.168.192.in-addr.arpa" IN{
        type slave;
        masters { 192.168.0.110; };
        file "slaves/192.168.0.arpa";
};

由于目前还没重新启动从服务,切换到数据配置文件目录的slaves下可以看到此时并没有文件
[root@slave ~]# cd /var/named/slaves/
[root@slave slaves]# ls
[root@slave slaves]#

3、重启服务,可以看到重启服务后主服务的正反向解析服务的配置文件已经同步到相应目录下了

[root@slave slaves]# ll
总用量 0
[root@slave slaves]# systemctl restart named
[root@slave slaves]# ll
总用量 8
-rw-r--r-- 1 named named 436 1月  15 15:42 192.168.0.arpa
-rw-r--r-- 1 named named 453 1月  15 15:42 bindtest.com.zone
[root@slave slaves]#

4、将系统dns地址修改为192.168.0.111并重启网络服务后检验解析结果

[root@master named]# systemctl restart named
[root@master named]# systemctl restart network
[root@slave ~]# nslookup
> 192.168.0.110
110.0.168.192.in-addr.arpa    name = www.bindtest.com.
110.0.168.192.in-addr.arpa    name = mail.bindtest.com.
110.0.168.192.in-addr.arpa    name = ns.bindtest.com.
> www.bindtest.com
Server:        192.168.0.111       可以看到解析服务已经是从服务了
Address:    192.168.0.111#53

Name:    www.bindtest.com
Address: 192.168.0.110
> mail.bindtest.com
Server:        192.168.0.111
Address:    192.168.0.111#53

Name:    mail.bindtest.com
Address: 192.168.0.110
> ns.bindtest.com
Server:        192.168.0.111
Address:    192.168.0.111#53

Name:    ns.bindtest.com
Address: 192.168.0.110
> bbs.bindtest.com
Server:        192.168.0.111
Address:    192.168.0.111#53

Name:    bbs.bindtest.com
Address: 192.168.0.111
> blog.bindtest.com
Server:        192.168.0.111
Address:    192.168.0.111#53

Name:    blog.bindtest.com
Address: 192.168.0.111
>

CentOS7系统DNS主从配置的更多相关文章

  1. Linux系统下DNS主从配置详解

    一.DNS概述DNS(Domain Name System),即域名系统.因特网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串. ...

  2. CentOS7 系统服务器初始化配置、安全加固、内核升级优化常用软件安装的Shell脚本分享

    转载自:https://www.bilibili.com/read/cv13875630?spm_id_from=333.999.0.0 描述: 适用于企业内部 CentOS7 系列操作服务器初始化. ...

  3. linux系统mysql主从配置

    一.原理 mysql主从配置的流程大体如图: 1)master会将变动记录到二进制日志里面: 2)master有一个I/O线程将二进制日志发送到slave; 3) slave有一个I/O线程把mast ...

  4. centos7系统下,配置学校客户端网络记录

    存在的情况 1.学校的网络客户端绑定了个人的电脑MAC地址.绑定了IP地址. 2.我有两台笔记本,一台用了4年多,想用这台(B)直接装centos7系统,然后新买的笔记本(A)做为经常用的,系统为wi ...

  5. DNS主从配置详解

    实验环境 主服务器:192.168.138.200 从服务器:192.168.138.201 bind安装 安装很简单,执行以下命令即可: yum install -y bind 先看一下bind的版 ...

  6. centos7系统下安装配置jdk、tomcat教程

    JDK安装与配置 1.下载linux版本的jdk,我下的版本是jdk6.0,下载rpm版本的. 可通过百度搜索文件名:jdk-6u45-linux-x64-rpm.bin下载 也可通过oracle官网 ...

  7. CentOS7系统局域网内配置本地yum源解决cannot find a valid baseurl for repo

    一.     问题详情 因为服务器无法连接外网,所有直接用yum安装某些功能将受到影响,报错如下: Error: Cannot find a valid baseurl for repo: base ...

  8. BIND的进程一:DNS简单配置与的主从配置

    DNS的简单配置和DNS的主从配置   摘要:DNS(Domain-Name Server) ,DNS的服务起到的作用就是名称解析,在网络通讯来说计算机与计算机是通过IP地址相互通信的, 当是IP地址 ...

  9. DNS主从服务,子域授权,view视图,日志系统,压力测试

    DNS主从服务,子域授权,view视图,日志系统,压力测试 DNS性能测试工具queryperfDNS查询过程: DNS主从建立: 环境: 主服务器:10.140.165.93 从服务器:10.140 ...

随机推荐

  1. SpringBoot--Easycode、mybatisX插件生成entity,controller,service,dao,mapper IDEA版 项目提效神器

    一.介绍 Easycode是idea的一个插件,可以直接对数据的表生成entity,controller,service,dao,mapper,无需任何编码,简单而强大. MybatisX 是一款基于 ...

  2. 攻防世界-MISC:glance-50

    这是攻防世界MISC高手进阶区的题目,题目如下: 点击下载附件一,得到一张GIF动图如下 找个网站给分离一下,将gif分离为图片,共201张,然后拼接在一起即可得到flag 所以这道题的flag如下: ...

  3. 攻防世界-MISC:gif

    这是攻防世界新手练习区的第七题,题目如下: 点击下载附件1,得到一个压缩包,解压后得到一些图片 嗯,黑白相间(又是懵逼的时候),又跑去看WP了,说是打开文件出现多个黑白,让人联想到二进制,白色图片代表 ...

  4. JavaWeb之如何把请求数据转成实体类

    JavaWeb之如何把请求数据转成实体类 自己写个工具类加入下面两个静态方法 自定一个注解类DateTimeFormatting 调用方式User user = util.ObjectFromMap( ...

  5. 用浏览器快速开启Docker的体验之旅

    互联网科技发展创造了很多奇迹,比如我今天要提到的 docker 技术就是其一.我很早就关注它(在2015年写过这方面的博客),那会儿还只是一个开源项目,现在已经是一个行业事实标准了,它推动了云原生的变 ...

  6. Python3获取5000个元素的单字符表

    技术背景 此前考虑过一个问题,有没有办法获取到python里面所有定义好的单字符的表,比如我们获取5000个不一样的单字符,但是常用的chr(number)的方法里面包含了太多的非字母条目,比如缩进换 ...

  7. spring 事务传播(Propagation)

    propagation 一共有以下几种选项: 1. REQUIRED(默认): 使用当前的事务,如果当前没有事务,则自己新建一个事务,子方法必须运行在一个事务中:如果当前存在事务,则加入这个事务,成为 ...

  8. 用python实现自动化登录禅道系统 设置定时器自动执行脚本

    由于各种原因,我想试下用python实现自动登录禅道系统,并且每天定时执行.(本人第一次接触自动化,在大佬眼中门槛都没摸到的类型) 首先缕清思路: 1.实现自动登录禅道系统,用selenium实现2. ...

  9. vue 的个人学习小笔记

    一.vite2.0+vue3.0+ts 创建.配置 个人公众号文章地址 个人github仓库地址 1.Vite 创建 vue3 项目: 1.1.npm 常用命令 1.npm 查看版本号 npm vie ...

  10. git bisect:让你闭眼都能定位疑难 bug的利器

    摘要:git bisect命令使用二分搜索算法来查找提交历史中的哪一次提交引入了错误.它几乎能让你闭着眼睛快速定位任何源码导致的问题,非常实用. 本文分享自华为云社区<利用好 git bisec ...