1、准备

例:两台192.168.11.10(主),192.168.11.11(从),域名www.test1.com

# 主从DNS服务器均需要安装bind、bind-chroot、bind-utils
yum -y install bind bind-utils bind-chroot
# 如果防火墙开启,配置防火墙,添加服务(防火墙已禁用则忽略)
firewall-cmd --permanent --add-service=dns
firewall-cmd --reload

2、主DNS服务器(192.168.11.10)配置

# 编辑配置文件
vim /etc/named.conf
# 找到其中两行
  listen-on port { 127.0.0.1; };
  allow-query { localhost; };
# 修改为
  listen-on port 53 { any; };
  allow-query { any; };

3、配置正向解析

# 编辑文件/etc/named.rfc1912.zones,在末尾添加需要解析的域
zone "test1.com" IN {
type master;
file "data/test1.com.zone";
};
# 创建test1.com.zone解析域
vim /var/named/data/test1.com.zone
  $TTL 3H
  @     IN SOA test1.com. root (
                         ; serial
                        1D ; refresh
                        1H ; retry
                        1W ; expire
                        3H ) ; minimum
       IN   NS   @
       IN   A   192.168.11.10
  www   IN   A   192.168.11.10
  ftp   IN   A   192.168.11.10
# 编辑/etc/resolv.conf,添加
  search localdomain
  nameserver 192.168.11.10

4、重启DNS服务器

# 重启named
systemctl restart named
# 查看状态
systemctl status named

5、检查解析是否成功

# ping命令验证
ping -c www.test1.com
# 输出如下即解析成功
  PING www.test1.com (192.168.11.10) () bytes of data.
   bytes from ftp.test1.com (192.168.11.10): icmp_seq= ttl= time=0.033 ms
   bytes from ftp.test1.com (192.168.11.10): icmp_seq= ttl= time=0.058 ms
   bytes from ftp.test1.com (192.168.11.10): icmp_seq= ttl= time=0.066 ms
   bytes from ftp.test1.com (192.168.11.10): icmp_seq= ttl= time=0.057 ms
  --- www.test1.com ping statistics ---
   packets transmitted, received, % packet loss, time 3000ms
  rtt min/avg/max/mdev = 0.033/0.053/0.066/0.014 ms
# nslookup命令验证
nslookup
>www.test1.com
# 输出如下即解析成功
  Server: 192.168.11.10
  Address: 192.168.11.10#
  Name: www.test1.com
  Address: 192.168.11.10

6、配置反向解析

# 编辑文件/etc/named.rfc1912.zones,在末尾添加
vim etc/named.rfc1912.zones
zone "11.168.192.in-addr.arpa" IN {
type master;
file "data/11.168.192.zone";
  };
# 创建11.168.192.zone解析域
vim /var/named/data/11.168.192.zone
$TTL 3H
@ IN SOA web3.com. root (
                    ; serial
                    1D ; refresh
                    1H ; retry
                    1W ; expire
                    3H ) ; minimum
@ IN NS www.test1.com.
   IN PTR www.test1.com.
   IN PTR ftp.test1.com.

7、重启DNS服务器

# 重启named
systemctl restart named
# 查看状态
systemctl status named

8、检查解析是否成功

# ping命令验证
ping -c 192.168.11.10
# 输出如下即解析成功
  PING 192.168.11.10 (192.168.11.10) () bytes of data.
   bytes from 192.168.11.10: icmp_seq= ttl= time=0.061 ms
   bytes from 192.168.11.10: icmp_seq= ttl= time=0.058 ms
   bytes from 192.168.11.10: icmp_seq= ttl= time=0.081 ms
   bytes from 192.168.11.10: icmp_seq= ttl= time=0.060 ms
  --- 192.168.11.10 ping statistics ---
   packets transmitted, received, % packet loss, time 3000ms
  rtt min/avg/max/mdev = 0.058/0.065/0.081/0.009 ms
# nslookup命令验证
nslookup 192.168.11.10
# 输出如下即解析成功
  Server: 192.168.11.10
  Address: 192.168.11.10#
  10.11.168.192.in-addr.arpa name = ftp.test1.com.
  10.11.168.192.in-addr.arpa name = www.test1.com.

9、配置从DNS服务器(192.168.11.11)

# 先修改主DNS服务器(192.168.11.10)的配置/etc/named.rfc1912.zones
vim /etc/named.rfc1912.zones
zone "test1.com" IN {
type master;
file "data/test1.com.zone";
allow-transfer {192.168.11.11;};
notify yes;
also-notify {192.168.11.11
;};
};
zone "11.168.192.in-addr.arpa" IN {
type master;
file "data/11.168.192.zone";
allow-transfer {192.168.11.11;};
notify yes;
also-notify {192.168.11.11
;};
};

10、配置从DNS服务器(192.168.11.11)正向解析

# 编辑named.conf文件
vim /etc/named.conf
  # 找到其中两行  
  listen-on port { 127.0.0.1; };   
  allow-query { localhost; };
  # 修改为
  listen-on port { any; };
  allow-query { any; };
# 编辑文件/etc/named.rfc1912.zones,在末尾添加需要解析的域
vim /etc/named.rfc1912.zones
  zone "test1.com" IN {
      type slave;
      file "data/test1.com.zone"; };
      masters { 192.168.11.10; };
# 创建test1.com.zonek空文件
touch /var/named/data/test1.com.zone
# 设置所有者  
chown named:named test1.com.zone
# 编辑/etc/resolv.conf,添加
vim /etc/resolv.conf
  search localdomain
  nameserver 192.168.11.11

11、重启DNS服务器

# 重启named
systemctl restart named
# 查看状态
systemctl status named

12、检测解析是否成功

# ping命令验证
ping -c www.test1.com
# 输出如下即解析成功
  PING www.test1.com (192.168.11.10) () bytes of data.
   bytes from ftp.test1.com (192.168.11.10): icmp_seq= ttl= time=0.033 ms
   bytes from ftp.test1.com (192.168.11.10): icmp_seq= ttl= time=0.058 ms
   bytes from ftp.test1.com (192.168.11.10): icmp_seq= ttl= time=0.066 ms
   bytes from ftp.test1.com (192.168.11.10): icmp_seq= ttl= time=0.057 ms
  --- www.test1.com ping statistics ---
   packets transmitted, received, % packet loss, time 3000ms
  rtt min/avg/max/mdev = 0.033/0.053/0.066/0.014 ms
# nslookup命令验证
nslookup
>www.test1.com
# 输出如下即解析成功
  Server: 192.168.11.11
  Address: 192.168.11.11#
  Name: www.test1.com
  Address: 192.168.11.10

13、配置从DNS服务器(192.168.11.11)反向解析

# 在文件/etc/named.rfc1912.zones中添加
vim etc/named.rfc1912.zones
zone "11.168.192.in-addr.arpa" IN {
type slave;
file "data/11.168.192.zone";
      masters { 192.168.11.10; };   
};
# 创建空文件11.168.192.zone
touch /var/named/data/11.168.192.zone
# 设置所有者  
chown named:named 11.168.192.zone

14、重启DNS服务器

# 重启named
systemctl restart named
# 查看状态
systemctl status named

15、查看文件/var/named/data/test1.com.zone和/var/named/data/11.168.192.zone是否有二进制数据

cat /var/named/data/test1.com.zone
cat /var/named/data/11.168.192.zone

16、检查解析是否成功

# ping命令验证
ping -c 4 192.168.11.11
# 输出如下即解析成功
  PING 192.168.11.11 (192.168.11.11) 56(84) bytes of data.
  64 bytes from 192.168.11.11: icmp_seq=1 ttl=64 time=0.061 ms
  64 bytes from 192.168.11.11: icmp_seq=2 ttl=64 time=0.058 ms
  64 bytes from 192.168.11.11: icmp_seq=3 ttl=64 time=0.081 ms
  64 bytes from 192.168.11.11: icmp_seq=4 ttl=64 time=0.060 ms
  --- 192.168.11.11 ping statistics ---
  4 packets transmitted, 4 received, 0% packet loss, time 3000ms
  rtt min/avg/max/mdev = 0.058/0.065/0.081/0.009 ms
# nslookup命令验证
nslookup 192.168.11.11
# 输出如下即解析成功
  Server: 192.168.11.11
  Address: 192.168.11.11#53
  10.11.168.192.in-addr.arpa name = ftp.test1.com.
  10.11.168.192.in-addr.arpa name = www.test1.com.

Centos7搭建主从DNS服务器的更多相关文章

  1. Dnsmasq安装与配置-搭建本地DNS服务器 更干净更快无广告DNS解析

    默认的情况下,我们平时上网用的本地DNS服务器都是使用电信或者联通的,但是这样也导致了不少的问题,首当其冲的就是上网时经常莫名地弹出广告,或者莫名的流量被消耗掉导致网速变慢.其次是部分网站域名不能正常 ...

  2. 使用bind实现主从DNS服务器数据同步

    一.bind简介 Linux中通常使用bind来实现DNS服务器的架设,bind软件由isc(www.isc.org)维护.在yum仓库中可以找到软件,配置好yum源,直接使用命令yum instal ...

  3. Dnsmasq安装与配置-搭建本地DNS服务器

    默认的情况下,我们平时上网用的本地DNS服务器都是使用电信或者联通的,但是这样也导致了不少的问题,首当其冲的就是上网时经常莫名地弹出广告,或者莫名的流量被消耗掉导致网速变慢.其次是部分网站域名不能正常 ...

  4. centos7搭建ntp时间同步服务器chrony服务

    centos7搭建ntp时间同步服务器chrony服务 前言: 在centos6的时候我们基本使用的是ntp服务用来做时间同步,但是在centos7后推荐是chrony作为时间同步器的服务端使用, ...

  5. 主从DNS服务器的搭建

    一.DNS主从的理解 主从服务器,在一开始的理解中,以为是主的dns服务器挂掉后,(dns服务自动转向辅助dns服务器),客户端还能继续解析.事实貌似不是这样的.当我把主dns停掉的时候,客户端只设一 ...

  6. 使用BIND安装智能DNS服务器(一)---基本的主从DNS服务器搭建

    参考网址:http://www.unixmen.com/dns-server-installation-step-by-step-using-centos-6-3/ DNS(Domain Name S ...

  7. 使用Dnsmasq搭建本地dns服务器上网

    导读 搭建一个属于自己的本地DNS服务器很有必要,利用Dnsmasq来搭建一个属于自己的本地DNS服务器,享受更干净无污染.更智能快速和没有广告干扰的DNS解析服务. 一.Dnsmasq安装 安装并启 ...

  8. centos7搭建postfix邮件服务器

    在使用qq等邮件服务器厂商提供的邮件服务后,发现他们的邮件发送数量是有限制的,随着公司的业务的需求下,我们需要搭建一个邮件服务器,邮件服务器可以帮助我们在一些提醒方面和消息推送方面起到帮助. 理论性语 ...

  9. Centos7.6 安装DNS服务器

    Centos7 安装 DNS 服务器 1 需求 需要在内部局域网安装一台域名服务器,让内网的机器通过此域名服务器解析IP地址: 2 设备 A TPLink路由器,型号 TL-WDR6500: B 准备 ...

随机推荐

  1. C# 异步编程 (12)

    异步编程重要性 C# 5.0 提供了更强大的异步编程.添加两个新的关键字 async 和 await . 使用异步编程,方法调用是在后台运行(通常在线程或任务的帮助下),并且不会阻塞调用线程. 3种不 ...

  2. Sklearn分类树在合成数集上的表现

    小伙伴们大家好~o( ̄▽ ̄)ブ,今天我们开始来看一下Sklearn分类树的表现,我的开发环境是Jupyter lab,所用的库和版本大家参考: Python 3.7.1(你的版本至少要3.4以上) S ...

  3. C# 操作服务命令

    安装服务 @echo.服务启动...... @echo off @sc create 服务名称 binPath= " exe地址" @net start 服务名称 @sc conf ...

  4. QT 设置应用程序图标和可执行程序图标

    1, 首先准备个ICO图标.例如:myappico.ico 在工程目录下新建images文件夹并你的图标myappico.ico(只能用ico格式的图片)放到工程目录下的images文件夹下 2, 用 ...

  5. Spring boot连接3.03以上的mongodb 权限验证问题

    由于3.0.3,mongodb加入了SCRAM-SHA-1校验方式,需要第三方工具配合进行验证,所有Spring boot连接MongoDB时会出现用户认证失败. 解决方法: > use adm ...

  6. INLINE HOOK过简单驱动保护的理论知识和大概思路

    这里的简单驱动保护就是简单的HOOK掉内核API的现象 找到被HOOK的函数的当前地址在此地址处先修改页面保护属性然后写入5个字节.5个字节就是一个简单的JMP指令.这里说一下JMP指令,如下: 00 ...

  7. [python]有中文字符程序异常的解决方案

    一. 含有中文字符无法运行 在python3中用的是Unicode编码,Unicode号称万国码,可以向所有的编码进行兼容.不会出现这种问题. Python2中使用的是ASCII编码,会出现这种问题. ...

  8. docker crontab踩坑记录

    环境,docker centos7.4 容器启动时注意两点 入口要设置/usr/sbin/init,并且配置主机完全访问权限(--privileged) (否则执行service的时候会出现Faile ...

  9. phpinfo中敏感信息记录

    比赛中或者渗透中如果遇到phpinfo,从里面发现的一些线索能够对后续的渗透和解题帮助很大,这里记录总结一下目前网上比较常用的的. 下图来源于:https://seaii-blog.com/index ...

  10. postgresql获取表最后更新时间(通过触发器将时间写入另外一张表)

    通过触发器方式获取表最后更新时间,并将时间信息写入到另外一张表 一.创建测试表和表记录更新时间表 CREATE TABLE weather( city varchar(80), temp_lo int ...