DNS主从复制及子域(三)
主从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服务器一定要注释include “/etc/named.root.key”;和关闭防火墙
[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; };
};
[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
[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
[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可以查询解析子域,但子域无法查询解析父域,子域可以实现自我管理。如ywnds.com是父域,而market.ywnds.com是子域。
子域授权的基础配置按照高速缓存DNS服务器的基础配置即可,注意子负域DNS服务器一定要注释include “/etc/named.root.key”;和关闭防火墙
[root@bogon ~]# vim /etc/named.conf
zone "ywnds.com" IN {
type master;
file "ywnds";
allow-transfer { none; };
};
[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
[root@bogon ~]# service named restart
[root@bogon ~]# vim /etc/named.conf
zone "market.ywnds.com" IN {
type master;
file "market.ywnds";
allow-transfer { none; };
};
[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
[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服务器。
最后可以尝试手写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主从复制及子域(三)的更多相关文章
- centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更新 第三十节课
centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更 ...
- DNS主从服务,子域授权,view视图,日志系统,压力测试
DNS主从服务,子域授权,view视图,日志系统,压力测试 DNS性能测试工具queryperfDNS查询过程: DNS主从建立: 环境: 主服务器:10.140.165.93 从服务器:10.140 ...
- DNS主从复制及区域传送
前言 DNS主从复制,就是将主DNS服务器的解析库复制传送至从DNS服务器,进而从服务器就可以进行正向.反向解析了.从服务器向主服务器查询更新数据,保证数据一致性,此为区域传送.也可以说,DNS区域传 ...
- 构建 DNS 主从复制服务器
一.主节点配置 1.yum install bind -y 安装 DNS 服务 2.vim /etc/named.conf 编辑 DNS 的配置文件 3.named-checkconf 检查配置文件 ...
- Linux DNS 主从复制
设置主从DNS的主要是为了冗余,分担压力,防止服务器宕机后,DNS无法正常解析. 配置 master 正常配置DNS服务. 设置主机名 [root@localhost ~]# hostnamectl ...
- DNS子域委派配置案例[转载]
最近在研究linux dns 在51上面看见这篇文章,感觉讲的很透彻,随转载,方便以后自己查阅 原文地址:http://www.51osos.com/a/Linux_CentOS_RedHat/Lin ...
- DNS区域传送、子域授权
前言 DNS服务器搭建参考上一篇: DNS主从复制,就是将主DNS服务器的解析库复制传送至从DNS服务器,进而从服务器就可以进行正向.反向解析了.从服务器向主服务器更新查询数据,保证数据一致性,此为区 ...
- Service系统服务(四):搭建单区域DNS服务器、特殊DNS解析、配置DNS子域授权、搭建并测试缓存DNS
一.搭建单区域DNS服务器 目标: 本例要求要求为DNS区域tedu.cn搭建一台DNS服务器,以便用户能通过域名的方式访问网站.测试阶段主要提供以下正向记录: svr7.tedu.cn ---> ...
- linux dns子域授权 split分离解析 缓存dns服务器
DNS子域授权作用:适用于同一个DNS组织父/子域名的解析工作由不同的dns服务器负责父dns服务器应该有为子域名迭代的能力 上下级区域属于不同的机构管理:.cn与.Anonymous.cn.cn需要 ...
随机推荐
- git命令(持续更新)
将远程仓库中的代码下载到本地仓库:git clone git仓库地址 将本地仓库中修改的文件提交到远程仓库:git push -u origin master 将当前目录添加到本地仓库,.表示当前目录 ...
- Linux常用基本命令(xargs )
xargs:能够将管道或者标准输入传递的数据转换成xargs命令后面跟随的参数 ghostwu@dev:~/linux/cp$ ls ghostwu_hardlink ghostwu_home gho ...
- 数据库概念:码 键 Key & 范式 Normal Form
参考资料 数据库管理系统原理与设计(Database Mangement System 3rd) 百度 wiki 术语对照 码 = 键 = Key 码约束 = Key Constraints 码约束 ...
- JS中深浅拷贝 函数封装代码
一.了解 基本数据类型保存在栈内存中,按值访问,引用数据类型保存在堆内存中,按址访问. 二.浅拷贝 浅拷贝只是复制了指向某个对象的指针,而不是复制对象本身,新旧对象其实是同一内存地址的数据,修改其中一 ...
- python-工厂方法模式
源码地址:https://github.com/weilanhanf/PythonDesignPatterns 简单工厂模式的不足: 在简单工厂模式中,只提供了一个工厂类,该工厂类处于对产品类进行实例 ...
- 4.SSM配置shiro权限管理
作者QQ:1095737364 QQ群:123300273 欢迎加入! 1.搭建SSM项目: http://www.cnblogs.com/yysbolg/p/6909021.html ...
- vue 实现点击图片放大
作者QQ:1095737364 QQ群:123300273 欢迎加入! 1.建立子组件,来实现图片方法功能: BigImg.vue <template> <!-- 过渡 ...
- 在Ubuntu 13.10 中安装配置 Hadoop 2.2.0
预备条件: 1. 已安装JDK Add Hadoop Group and User $ sudo addgroup hadoop$ sudo adduser --ingroup hadoop hdus ...
- 【Kibana】Kibana入门教程
一.Kibana简介及下载安装 Kibana是专门用来为ElasticSearch设计开发的,可以提供数据查询,数据可视化等功能. 下载地址为:https://www.elastic.co/downl ...
- elasticsearch DSL查询
总结一个DSL的用法吧,语法网上查去,只记录一点心得,也是研究了半天,太麻烦了 先附上python代码 #!/usr/bin/env python # _*_ coding:utf-8 _*_ fro ...