主从DNS

主辅DNS服务器数据同步的过程,首先master DNS服务器每 次修改完成并重启服务后,将传送notify给所有的Slave DNS服务器。 Slave DNS服务器将查询Master服务器的SOA记录,Master DNS服务器收到请求后将SOA记录发送给Slave DNS服务器,Slave DNS服务器收到后同时对比查询结果中的serial值,如果serial值不大于本机的话将结束数据同步过程;但是如果serial值大于本机的话,Slave DNS将发送zone transfer请求要求(AXFR/IXFR)。Master响应Zone transfer请求并传送结果,直到整个slave更新完成。如图:

在实际应用中主从DNS服务器一般都是用来做DNS高可用和负载的,所以你的主从DNS服务器首先就是必须要从上级获得授权,也就是顶级域的服务器中必须有你两台DNS的记录,这样客户端才可以把主从DNS的地址都设置为本地DNS服务器。其次在DNS服务器本身的区域数据文件中要有主从DNS服务器的NS(只有这样主DNS服务器才会找的到从DNS服务器),只有这两者都搞定的情况下就算有一台DNS服务器挂掉了,客户端同样可以访问另一台DNS服务器进行DNS查询。

区域传送类型

完全区域传送:传送区域的所有书(axfr)

增量区域传送:传送区域中改变的数据部分(ixfr)

配置主从DNS

主从的基础配置按照高速缓存DNS服务器的基础配置即可,注意主从DNS服务器一定要注释include “/etc/named.root.key”;和关闭防火墙

主DNS服务器: 192.168.60.10
在/etc/named.conf文件中添加区域
[root@bogon ~]# vim /etc/named.conf
zone "ywnds.com" IN {
type master;
file "ywnds";
notify yes;
also-notify { 192.168.60.30; };
allow-transfer { 192.168.60.30; };
};
在/var/named/下添加正向区域文件
[root@bogon ~]# vim /var/named/ywnds
$TTL 1D
@ IN SOA dns.ywnds.com. root.ywnds.com. (
336 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ IN NS dns
@ IN NS dns2
dns IN A 192.168.60.10
dns IN A 192.168.60.30
@ IN MX 10 mail
mail IN A 192.168.60.100
www IN A 192.168.60.200
[root@bogon ~]# chown root:named /var/named/ywnds
重启主DNS
[root@bogon ~]# service named restart
[root@bogon ~]# tail -f /var/log/message
Sep 29 17:51:30 localhost named[3224]: running
Sep 29 17:51:30 localhost named[3224]: zone ywnds.com/IN: sending notifies (serial 336)
Sep 29 17:51:30 localhost named[3224]: client 192.168.60.30#37129: transfer of 'ywnds.com/IN': AXFR-style IXFR started
Sep 29 17:51:30 localhost named[3224]: client 192.168.60.30#37129: transfer of 'ywnds.com/IN': AXFR-style IXFR ended
从DNS服务器: 192.168.60.30
在/etc/named.conf文件中添加区域
[root@bogon ~]# vim /etc/named.conf
zone "ywnds.com" IN {
type slave;
file "slaves/ywnds";
masters { 192.168.60.10; };
allow-transfer { none; };
};
验证传送结果
[root@bogon ~]# service named restart
[root@bogon ~]# tail -f /var/log/message
[root@bogon ~]# ll /var/named/slaves/
-rw-r--r--. 1 named named 422 Sep 29 17:51 ywnds

分别查看两台主机上的/var/log/messages日志文件看看传送过程第一次应该是AXFR完全传送,当第二次传送时就会是ixfr增量传送。

特别注意:

1、  进行增量传送时;当主服务器更改一条记录时就需要把serial的值加1;从服务器会比较serial值,如果比自己的大就进行更改自己区域的内容。

2、  主从服务器的时间同步
DNS子域授权

子域授权其实就是实现DNS分片管理,通过父域DNS可以查询解析子域,但子域无法查询解析父域,子域可以实现自我管理。如ywnds.com是父域,而market.ywnds.com是子域。

子域授权的基础配置按照高速缓存DNS服务器的基础配置即可,注意子负域DNS服务器一定要注释include “/etc/named.root.key”;和关闭防火墙

父域DNS服务器: 192.168.60.10
在/etc/named.conf文件中添加以下区域
[root@bogon ~]# vim /etc/named.conf
zone "ywnds.com" IN {
type master;
file "ywnds";
allow-transfer { none; };
};
在/var/named/下添加正向区域文件
[root@bogon ~]# vim /var/named/ywnds
$TTL 1D
@ IN SOA dns.ywnds.com. root.ywnds.com. (
336 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ IN NS dns
dns IN A 192.168.60.10
www IN A 192.168.60.200 market IN NS dns.market.ywnds.com.
dns.market IN A 192.168.60.30
[root@bogon ~]# chown root:named /var/named/ywnds
重启主DNS
[root@bogon ~]# service named restart
子域DNS服务器: 192.168.60.30
在/etc/named.conf文件中添加以下区域
[root@bogon ~]# vim /etc/named.conf
zone "market.ywnds.com" IN {
type master;
file "market.ywnds";
allow-transfer { none; };
};
在/var/named/下添加正向区域文件
[root@bogon ~]# vim /var/named/market.ywnds
$TTL 1D
@ IN SOA dns.ywnds.com. root.ywnds.com. (
0 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ IN NS dns
dns IN A 192.168.60.30
www IN A 192.168.60.251
重启主DNS
[root@bogon ~]# service named restart
验证
父域DNS可以解析“ywnds.com”域和“market.ywnds.com”域
[root@bogon ~]# dig -t A www.ywnds.com @192.168.60.10
[root@bogon ~]# dig -t A www.market.ywnds.com @192.168.60.10
;; ->>HEADER< <- opcode: QUERY, status: NOERROR, id: 3598
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 1, ADDITIONAL: 1
;; QUESTION SECTION:
;www.market.ywnds.com. IN A
;; ANSWER SECTION:
www.market.ywnds.com. 85956 IN A 192.168.60.251
;; AUTHORITY SECTION:
market.ywnds.com. 85956 IN NS dns.market.ywnds.com.
;; ADDITIONAL SECTION:
dns.market.ywnds.com. 85956 IN A 192.168.60.30
子域DNS只能解析“market.ywnds.com”域
[root@bogon ~]# dig -t A www.market.ywnds.com @192.168.60.30
转发域

通过子域授权可以做到父域可以解析本地域和子域,而子域只能解析本地域而解析不了父域,那么现在通过转发功能就可以做到让子域也可以解析父域。

配置转发域的两种方式

1)转发非本机负责解析的所有区域
option{
forwarders { 8.8.8.8; };
forward first;
forward only;
}; 2)转发某特定区域
zone "ywnds.com" IN {
type forward;
forwarders { 192.168.60.10; };
};

子域DNS服务器: 192.168.60.30

1)在/etc/named.conf文件中追加父域,红色部分
[root@bogon ]# vi /etc/named.conf
zone "market.ywnds.com" IN {
type master;
file "market.ywnds";
allow-transfer { none; };
}; zone "ywnds.com" IN {
type forward;
forwarders { 192.168.60.10; };
forward first;
allow-transfer { none; };
}; 表示子域只要解析“ywnds.com”域都转发到父域进行解析。同时如果在全局配置中也配置转发域。如下:
option{
forwarders { 8.8.8.8; };
forward first;
forward only;
};

这样就可以做到除父域外其他只要有解析不了的域统统转发到指定的DNS服务器中,前提是被指定的DNS服务器必须能够做递归。这样当在optionP{}和zone{}中都使用了转发功能时就可以做到访问不同的域名找不同的DNS服务器。

手写DNS配置文件

最后可以尝试手写named.conf配置文件,但是文件权限要改成640并且属主是root;属组是namd,当你手写配置文件时大概只需要以下内容即可。其余大部分都是默认,比如监听地址默认是监听所有和允许查询默认允许所有。如下:

[root@bogon ]# vi /etc/named.conf
options {
directory "/var/named";
recursion yes;
}; zone "." IN {
type hint;
file "named.ca";
}; zone "ywnds.com" IN {
type master;
file "ywnds";
allow-transfer { none; };
};
include "/etc/named.rfc1912.zones"; 本文转自:https://www.linuxprobe.com/dns-server-3.html​

DNS主从复制及子域(三)的更多相关文章

  1. centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更新 第三十节课

    centos  DNS服务搭建  DNS原理  使用bind搭建DNS服务器 配置DNS转发 配置主从  安装dig工具  DHCP  dhclient  各种域名解析记录  mydns DNS动态更 ...

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

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

  3. DNS主从复制及区域传送

    前言 DNS主从复制,就是将主DNS服务器的解析库复制传送至从DNS服务器,进而从服务器就可以进行正向.反向解析了.从服务器向主服务器查询更新数据,保证数据一致性,此为区域传送.也可以说,DNS区域传 ...

  4. 构建 DNS 主从复制服务器

    一.主节点配置 1.yum install bind -y 安装 DNS 服务 2.vim /etc/named.conf 编辑 DNS 的配置文件 3.named-checkconf 检查配置文件 ...

  5. Linux DNS 主从复制

    设置主从DNS的主要是为了冗余,分担压力,防止服务器宕机后,DNS无法正常解析. 配置 master 正常配置DNS服务. 设置主机名 [root@localhost ~]# hostnamectl ...

  6. DNS子域委派配置案例[转载]

    最近在研究linux dns 在51上面看见这篇文章,感觉讲的很透彻,随转载,方便以后自己查阅 原文地址:http://www.51osos.com/a/Linux_CentOS_RedHat/Lin ...

  7. DNS区域传送、子域授权

    前言 DNS服务器搭建参考上一篇: DNS主从复制,就是将主DNS服务器的解析库复制传送至从DNS服务器,进而从服务器就可以进行正向.反向解析了.从服务器向主服务器更新查询数据,保证数据一致性,此为区 ...

  8. Service系统服务(四):搭建单区域DNS服务器、特殊DNS解析、配置DNS子域授权、搭建并测试缓存DNS

    一.搭建单区域DNS服务器 目标: 本例要求要求为DNS区域tedu.cn搭建一台DNS服务器,以便用户能通过域名的方式访问网站.测试阶段主要提供以下正向记录: svr7.tedu.cn ---> ...

  9. linux dns子域授权 split分离解析 缓存dns服务器

    DNS子域授权作用:适用于同一个DNS组织父/子域名的解析工作由不同的dns服务器负责父dns服务器应该有为子域名迭代的能力 上下级区域属于不同的机构管理:.cn与.Anonymous.cn.cn需要 ...

随机推荐

  1. First Date (hnoj12952)日期计算

    First Date Time Limit: 3000ms, Special Time Limit:7500ms, Memory Limit:65536KB Total submit users: 7 ...

  2. Java 并发:Executor ExecutorService ThreadPoolExecutor

    Executor Executor仅仅是一个简单的接口,其定义如下 public interface Executor { void execute(Runnable command); } 作为一个 ...

  3. CentOS 7开启防火墙端口

    1.开启防火墙 systemctl start firewalld 2.添加 firewall-cmd --zone=public --add-port=80/tcp --permanent 3.重新 ...

  4. PDO中的事务处理

    基本原理和步骤其实都是一样的(可参看上一篇“MySQL的事务处理”),PDO中的事务处理就是调用PDO对象的三个方法: 开启事务:beginTransaction 回滚操作:rollBack 执行操作 ...

  5. 设计模式原则(6)--Open-Closed Principle(OCP)--开闭原则

    作者QQ:1095737364    QQ群:123300273     欢迎加入! 1.定义: 一个软件实体应当对扩展开放,对修改关闭.即软件实体应尽量在不修改原有代码的情况下进行扩展. 2.使用场 ...

  6. nodejs 通过nginx后出现响应慢的解决方法

    最近用了nodejs搭建服务器,然后用了nginx做了反向代理,项目开发需求,没办法.但是发现了经过代理之后发现网页请求变慢了,而且是不能忍的一分钟以上. 一开始,怀疑是在nodejs那边的问题,结果 ...

  7. 1.String、StringBuffer与StringBuilder之间区别

    1.三者在执行速度方面的比较:StringBuilder >  StringBuffer  >  String 2.String <(StringBuffer,StringBuild ...

  8. Android项目实战(三十):Fresco加载gif图片并播放

    前言: 项目中图文混合使用的太多太多了,但是绝大部分都是静态图片. 然而项目开发中有这么一个需求:显示一个出一个简短的动画(一般都不超过3秒)演示 比如说:一个功能提供很多步骤来教用户做广播体操,那么 ...

  9. HCTF2018 pwn题复现

    相关文件位置 https://gitee.com/hac425/blog_data/tree/master/hctf2018 the_end 程序功能为,首先 打印出 libc 的地址, 然后可以允许 ...

  10. Just write about

    创建一个学生对象,存储学生对象,学生对象的数据来源于键盘录入,最后遍历集合. 学生类,集合对象,键盘录入数据并将数据赋值给学生类的成员(可以写成一个方法),调用方法,遍历集合.