文档章节

DNS主从同步负载均衡

IamOkay
 IamOkay
发布于 2017/01/06 21:33
字数 1590
阅读 155
收藏 0

参考:

 DNS主辅同步(TSIG) 加密

DNS BIND主辅同步之TSIG加密

介绍:

DNS主从同步负载均衡,通过主从模式,动态更新与备份数据

主从同步需要注意的配置:

时间同步请参考(Linux配置自动时间同步

主服务器配置

从服务器配置

实战:

试验环境:

  • 主DNS服务器:ns.toxingwang.com IP:192.168.8.101
  • 从DNS服务器:ns2.toxingwang.com IP:192.168.8.100

一、反向解析

反向解析是实现IP到FQDN的解析。实现方法如下:

1.1 配置named.conf,添加反向解析区域配置:

打开named.conf,添加如下内容:

zone "8.168.192.in-addr.arpa" IN {            ##反向解析区域的格式,IP反向及in-addr.arpa是必须的
type master;
file "named.192.168.8";
};

1.2 配置数据文件,实现反向解析:

进入named数据文件目录,复制原来正向解析区域的数据文件为反向解析数据文件:

[root@ns ~]# cd /var/named/

[root@ns named]# cp -p named.toxingwang.com named.192.168.8

编辑named.192.168.8:

$TTL 1H
@ IN SOA ns.toxingwang.com. admin.toxingwang.com. (
2013081701 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@    IN NS ns.toxingwang.com.    ##注意,这条是必须的
101 IN PTR ns.toxingwang.com.
100 IN PTR www.toxingwang.com.
3 IN PTR mail.toxingwang.com.

测试配置是否存在语法错误:

[root@ns named]# named-checkconf
[root@ns named]# named-checkzone "8.168.192.in-addr.arpa" named.192.168.8
zone 8.168.192.in-addr.arpa/IN: loaded serial 2013081701
OK

测试无误后重启服务生效:

[root@ns named]# service named restart
停止 named:. [确定]
启动 named: [确定]

1.3 测试反向解析:

从上面测试可以看出,反向解析已经正常生效。

二、主从复制

2.1 主DNS服务器配置:

配置named.conf,增加区域传输配置:

options {
listen-on port 53 { 192.168.8.101; };
allow-query { 192.168.8.0/24; };
directory "/var/named";
notify yes;             ##允许在主DNS服务器变更时,主动通知从DNS服务器更新
};

zone "." IN {
type hint;
file "named.ca";
##跟区域无需定义传输规则,定义反而会报错
};

zone "toxingwang.com" IN {
type master;
file "named.toxingwang.com";
allow-transfer { 192.168.8.100; };  ##允许本区域传输至特定的从DNS服务器
};

zone "localhost" IN {
type master;
file "named.localhost";
allow-transfer { none; };  ##不传输本地区域
};
zone "8.168.192.in-addr.arpa" IN {
type master;
file "named.192.168.8";
allow-transfer { 192.168.8.100; };  ##允许本区域传输至特定的从DNS服务器
};

修改区域数据文件,增加从DNS服务器的解析,包括NS、A、PTR等记录。

配置正向解析区域:

[root@ns named]# vi named.toxingwang.com

$TTL 1H
@ IN SOA ns.toxingwang.com. admin.toxingwang.com. (
2013081702 ; serial    ##注意,当主DNS修改DNS解析时,需增加本序号
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
IN NS ns.toxingwang.com.
IN NS ns2.toxingwang.com.              ##增加从DNS服务器到NS记录
IN MX 10 mail.toxingwang.com.
ns IN A 192.168.8.101
ns2 IN A 192.168.8.100                     ##增加从DNS服务器的A记录
www IN A 192.168.8.100
mail IN A 192.168.8.3
www2 IN CNAME www.toxingwang.com.

配置反向解析区域:

$TTL 1H
@ IN SOA ns.toxingwang.com. admin.toxingwang.com. (
2013081702 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
@ IN NS ns.toxingwang.com.
@ IN NS ns2.toxingwang.com.    ##增加NS记录
101 IN PTR ns.toxingwang.com.
100 IN PTR ns2.toxingwang.com.   ##增加反向解析记录
100 IN PTR www.toxingwang.com.
3 IN PTR mail.toxingwang.com.

重启服务生效:

[root@ns named]# service named restart
停止 named: [确定]
启动 named: [确定]

2.2 从DNS服务器配置:

从DNS服务器的安装与主DNS服务器安装过程相同,这里不再做介绍,而是直接讲解配置过程:

named.conf区域定义配置:

zone "." IN {
type hint;
file "named.ca";
};

zone "toxingwang.com" IN {
type slave;         ##区域类型
file "slaves/named.toxingwang.com";  ##数据文件路径
masters { 192.168.8.101; };      ##主DNS服务器地址
allow-transfer { none; };
};

zone "localhost" IN {
type master;
file "named.localhost";
allow-transfer { none; };
};
zone "8.168.192.in-addr.arpa" IN {
type slave;    ##类型为slave
file "slaves/named.192.168.8";   ##数据文件路径
masters { 192.168.8.101; };  ##主DNS服务器地址
allow-transfer { none; };
};

检查配置是否有误:

[root@ns2 ~]# named-checkconf   ##没有提示表示没有语法错误

从DNS服务器数据文件是直接从主DNS服务器复制而来,因此不需要配置数据文件。

重启named服务生效:

[root@ns2 ~]# service named restart
停止 named:. [确定]
启动 named: [确定]

2.3 检查主从复制结果:

查看从DNS服务器数据文件是否生成:

[root@ns2 ~]# cd /var/named/slaves/
[root@ns2 slaves]# ls
named.192.168.8 named.toxingwang.com
##可以看到数据文件已经自动生成

查看从DNS服务器数据文件内容:

[root@ns2 slaves]# cat named.toxingwang.com
$ORIGIN .
$TTL 3600 ; 1 hour
toxingwang.com IN SOA ns.toxingwang.com. admin.toxingwang.com. (
2013081701 ; serial
86400 ; refresh (1 day)
3600 ; retry (1 hour)
604800 ; expire (1 week)
10800 ; minimum (3 hours)
)
NS ns.toxingwang.com.
NS ns2.toxingwang.com.
MX 10 mail.toxingwang.com.
$ORIGIN toxingwang.com.
mail A 192.168.8.3
ns A 192.168.8.101
ns2 A 192.168.8.100
www A 192.168.8.100
www2 CNAME www

[root@ns2 slaves]# cat named.192.168.8
$ORIGIN .
$TTL 3600 ; 1 hour
8.168.192.in-addr.arpa IN SOA ns.toxingwang.com. admin.toxingwang.com. (
2013081701 ; serial
86400 ; refresh (1 day)
3600 ; retry (1 hour)
604800 ; expire (1 week)
10800 ; minimum (3 hours)
)
NS ns.toxingwang.com.
NS ns2.toxingwang.com.
$ORIGIN 8.168.192.in-addr.arpa.
100 PTR ns2.toxingwang.com.
PTR www.toxingwang.com.
101 PTR ns.toxingwang.com.
3 PTR mail.toxingwang.com.

从自动生成的数据文件中,我们学到一些配置技巧,如宏的定义和使用:$ORIGIN  $TTL

查看主DNS服务器日志:

[root@ns named]# tail -f /var/log/messages

Aug 17 06:51:09 ns named[1886]: managed-keys-zone ./IN: loaded serial 0
Aug 17 06:51:09 ns named[1886]: running
Aug 17 06:51:09 ns named[1886]: zone toxingwang.com/IN: sending notifies (serial 2013081701)
Aug 17 06:51:09 ns named[1886]: zone 8.168.192.in-addr.arpa/IN: sending notifies (serial 2013081701)
Aug 17 06:51:09 ns named[1886]: client 192.168.8.100#49937: transfer of '8.168.192.in-addr.arpa/IN': AXFR-style IXFR started
Aug 17 06:51:09 ns named[1886]: client 192.168.8.100#49937: transfer of '8.168.192.in-addr.arpa/IN': AXFR-style IXFR ended
Aug 17 06:57:05 ns named[1886]: client 192.168.8.100#51933: transfer of '8.168.192.in-addr.arpa/IN': AXFR started
Aug 17 06:57:05 ns named[1886]: client 192.168.8.100#51933: transfer of '8.168.192.in-addr.arpa/IN': AXFR ended
Aug 17 06:57:06 ns named[1886]: client 192.168.8.100#47153: transfer of 'toxingwang.com/IN': AXFR started
Aug 17 06:57:06 ns named[1886]: client 192.168.8.100#47153: transfer of 'toxingwang.com/IN': AXFR ended

客户端测试从DNS服务器解析情况:

修改主DNS中的解析,测试从服务器复制情况:

[root@ns named]# vi named.toxingwang.com

$TTL 1H
@ IN SOA ns.toxingwang.com. admin.toxingwang.com. (
2013081702 ; serial  ##修改序号
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
IN NS ns.toxingwang.com.
IN NS ns2.toxingwang.com.
IN MX 10 mail.toxingwang.com.
ns IN A 192.168.8.101
ns2 IN A 192.168.8.100
www IN A 192.168.8.2   ##修改www主机解析
mail IN A 192.168.8.3
www2 IN CNAME www.toxingwang.com.
blog IN A 192.168.8.4   ##增加blog主机解析

主DNS服务器重新加载数据文件生效:

[root@ns named]# service named reload
重新载入named:        [确定]

查看主DNS服务器日志

Aug 17 07:12:00 ns named[1886]: reloading configuration succeeded
Aug 17 07:12:00 ns named[1886]: reloading zones succeeded
Aug 17 07:12:00 ns named[1886]: zone toxingwang.com/IN: loaded serial 2013081703
Aug 17 07:12:00 ns named[1886]: zone toxingwang.com/IN: sending notifies (serial 2013081703)
Aug 17 07:12:00 ns named[1886]: client 192.168.8.100#38052: transfer of 'toxingwang.com/IN': AXFR-style IXFR started
Aug 17 07:12:00 ns named[1886]: client 192.168.8.100#38052: transfer of 'toxingwang.com/IN': AXFR-style IXFR ended

客户端测试:

通过测试,可以看出从DNS是可以正常工作的。

 

© 著作权归作者所有

IamOkay

IamOkay

粉丝 200
博文 483
码字总数 403041
作品 0
海淀
程序员
私信 提问
Centos下高可用主从同步DNS服务部署

一、背景介绍 在日常工作中,为解决内网域名解析问题,时长会配置DNS服务来提供解析。这时DNS服务就起到了为所有内部服务提供连通的基础,变得非常重要了。所以在服务启动后还是应该考虑服务...

亮公子
2018/06/26
0
0
从运维角度看大中型网站架构的演变之路

网上有很多文章类似于我今天要分享的内容,有架构师写的,有运维写的,还有开发些的,偏重点都不同,今天我将从运维角度全面讲解。 一个成熟的网站架构并不是一开始设计就具备高可用、高伸缩...

李振良
2017/08/09
0
0
bind9在多view情况下通过TSIG key实现主dns和多个辅DNS的同步传输

操作系统:CentOS 5.5 BIND 版本:bind-9.3.6-4.P1 Master DNS 地址: 192.168.190.174(不直接对外提供解析服务,平时做好每日备份及监控,确保主节点安全) Slave DNS 地址: telecom机房放2...

leonardos
2017/10/25
0
0
从运维角度看中大型网站架构的演变之路

前言 网上有很多文章类似于我今天要分享的课程,有架构师写的,有运维写的,还有开发些的,偏重点都不同,今天我以咱们运维角度全面讲解。 一个成熟的网站架构并不是一开始设计就具备高可用、...

李振良OK
2017/07/28
0
0
从运维角度看中大型网站架构的演变之路

本文出自 “李振良的技术博客” 博客,请务必保留此出处http://lizhenliang.blog.51cto.com/7876557/1951651 前言 网上有很多文章类似于我今天要分享的课程,有架构师写的,有运维写的,还有...

红尘世间
2017/08/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Flutter移动端实战手册

该文章属于<简书 — 刘小壮>原创,转载请注明: <简书 — 刘小壮> https://www.jianshu.com/p/d27c1f5ee3ff iOS接入Flutter 在进行iOS和Flutter的混编时,iOS比Android的接入方式略复杂,但也...

刘小壮
26分钟前
0
0
测试环境项目一键部署

git项目测试环境一键部署脚本 #!/bash/sh pid=`ps -ef | grep 'user_demo.jar' | grep -v grep | awk '{print $2}'` kill -9 $pid #跳转到git clone下目录 cd /home/apple/userdemo/ #拉取最......

ccman996
29分钟前
0
0
应用框架(spring-boot参数配置与使用)

这很耳东先生
36分钟前
0
0
使用SecureCRT从windows上传文件到Linux

点击File,然后选择SFTP,打开SFTP,然后进行下列操作。 1.指定文件所在路径 lcd E:\ 2.查看当前windows文件所在路径 lpwd 3.指定linux下文件上传路径 cd /usr/local 4.查询当前linux文件上传...

大雁南飞了
38分钟前
1
0
前后端分离-前端搭建(Vue)(3)加入Element和axios

继续上篇博客的Vue刚刚搭建完 , https://my.oschina.net/u/4116654/blog/3064431 这次我们来把Element 和axios弄好 首先先安装Element 下载好了之后 在src目录下的main.js里去添加Element的...

咸鱼-李y
49分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部