DNS-BIND构建主从DNS服务器实现负载均衡和冗余备

------selinux与DNS并存

另一个博客地址:www.rsyslog.org

相关理论解析:

1、DNS的类型,master/slave架构;

Master 这种类型的DNS的这个配置文件中,包括所有主机的主机名等相关信息,一般是我们手动添加修改的,设置完之后我们要重启服务的才能读取到master库里面的数据内容;一般我们在做DNS的时候都是指定这样的数据库类型的,同时也要能保证把数据的内容提供给slave服务器,这个需要我们设置下。在配置文件中。

Slave 这中类型的数据必须要有master才可以使用,一般情况下都是一主一备的,一个master一个slvae,如果我们都是有master那么我们需要添加修改的时候需要两台同时添加、修改、要是不小心修改错误,很尴尬的,如果我们做成master/slave那么我们直接修改master即可。但是在这里我们牵扯到一个优先级的问题,不管是master还是slave,要保证数据的内容完全一致。

2、 Master/slave数据的同步过程;

首先slave的数据是从master上来读取的,但是master数据更新之后怎么通知slave的呢?有两种方式来告诉slave数据库的。一种是master主动告知,在master修改数据内容之后,并且加大数据库的序列号,然后重启服务之后master会告知slave的。第二是slvae主动去找master,当发现master的数据和自己的不一样的时候,slave会更新的。

1、 测试环境;

Master Server: 192.168.100.102

Slave Server: 192.168.100.103

关于DNS基本搭建过程请参考http://www.rsyslog.org/p239.html

一、 构建主域名服务器

修改主域名服务器全局配置文件named.conf,在options中插入一行 allow-transfer { 192.168.100.103;};意思是允许192.168.100.103主机下载该区域的地址数据库。

修改辅助配置文件,这个平时根据工作需求修改,一般不修改的,这里为了方便测试,可以将有效地址解析记录的默认缓存时间设置成5分钟 将无效地址解析记录(该数据库中不存在的地址)默认缓存时间设置为5分钟

修改完成之后,重启服务,主域名服务器也就配置完毕了。完了记得验证下主域名服务器是否能够正常工作。这里不做测试参考以上文档。

二、 构建从域名服务器

从域名服务器作为主域名服务器的冗余备份,可以与主域名服务器一起,同时提供本域内主机名与IP地址的解析,从域名服务器的地址数据库需要从主域名服务器中定期更新。

建立从域名服务器的辅助区域配置文件

将tpye 设置为slave类型

正向区域和反向区域的名称保持和主DNS的一致,不过文件路径要放到/var/named/slaves下

加上主DNS的IP地址 masters { 192.168.100.102;};

默认情况下,可以看到从DNS slaves目录下是没有数据的。重新启动named服务,发现里面有了主DNS的区域数据库信息。

我们也可以查看从域名服务器的日志信息,发现有了很多从域名服务器从主域名服务器获取区域数据库的信息,其实是根据 主域名服务器的序列号变更获取的。到这里从域名服务器搭建完成。

三、 测试从域名服务器是否能够提供DNS解析

修改PC机DNS为从域名服务器IP地址

四、 下面我们看看在selinux开启enforcing模式的情况下,从DNS是否能够正常工作。

通过实验开启的情况下,从DNS是可以工作的。这里面存在个问题,如果重新创建个文件取代slaves,就不可以正常工作了。如下

创建dnsslaves目录替代slaves目录,然后将权限设置的跟slaves一样

修改从DNS的辅助区域配置文件,将正向反向区域数据库地址指向 dnsslaves目录

修改主DNS的辅助区域配置文件的序列号,官方一般要求加1即可,其实只要变化就行了。

启动从DNS服务,发现 dnsslaves目录下没有数据,这是为什么呢。

查看日志,发现是权限文件,我们知道 dnsslaves的权限跟slaves是一模一样的,哪问题肯定出在selinux上了。

试着将selinux模式更改为permissive模式,重新启动从DNS服务,发现dnsslaves目录下有了主DNS的区域数据库文件。可以看出确实是selinux所致,那么如何设置selinux,让从DNS在selinux的enforcing模式下也可以工作呢。

为了测试先删除刚才生成的区域数据库文件,然后通过 man named_selinux查看 named在selinux的配置文件,发现有一条跟辅助区域配置文件的目录存放地址有关

可以通过getsebool –a命令查看 这个参数是否开启,模式是off的,通过以上提示开启这个参数就可以了。然后将selinux模式设置为enforcing模式,重新启动从DNS服务,发现dnsslaves目前下有了主区域配置文件信息。

如果你想了解更多有关selinux信息,请访问 http://www.rsyslog.org/p239.html

RHEL6.3下如何解决DNS主从复制与selinux的并存问题相关推荐

  1. RHEL6 64bit下更改YUM配置。yum this system is not registered with rhn的解决办法

    RHEL6 64bit下更改YUM配置.yum this system is not registered with rhn的解决办法 2013-10-22 11:37 3498人阅读 评论(0) 收 ...

  2. linux 设置dns缓存周期,如何解决DNS缓存时间问题

    理想情况下,各地DNS的缓存时间即为设置的ttl时间,所以可以通过设置ttl时间来控制DNS缓存的时间.ttl时间设置的短,DNS缓存过期快,在机器故障的时候很快切换,对用户的影响小:但是由于ttl设 ...

  3. DNS知识:解决DNS中MX与cname冲突问题 DNS拉平 cname智能加速

    解决DNS中MX与cname冲突问题 DNS拉平 cname智能加速 文章目录 今天学到了关于DNS的知识 感谢cr群中ah与熊良辰提供话题技术思路 讨论环境: 解决方案:使用DNSPod实现DNS拉 ...

  4. 如何使用OpenDNS有效解决DNS域名劫持?

    如何使用OpenDNS解决DNS域名劫持?很多用户都有遇到过DNS域名被劫持的情况,遇到域名被劫持,最好的解决办法就是使用国外更为安全可靠的DNS服务器,这里小编推荐大家使用OpenDNS提供的DNS ...

  5. Win11的两个实用技巧系列之解决dns异常的三种方法、win10/win11卡顿的三种解决办法

    电脑dns异常怎么修复win10? Win10解决dns异常的三种方法 电脑dns异常怎么修复win10?最近有很多win10用户遇到dns配置错误的问题,这让用户非常苦恼,下面我们就来看看Win10 ...

  6. 服务器未响应怎么弄,快速解决DNS服务器未响应的四个小妙招

    相信很多人在使用window系统上网的过程中,经常会遇到DNS服务器未响应的情况.这个时候我们该怎么办呢?别着急,小编教您四招轻松解决DNS服务器未响应的问题. 第一招:利用安全工具修复 平常使用的电 ...

  7. winXP2002dns辅服务器未响应,两个方法教你解决DNS服务器无法解析的问题

    通常无法解析到服务器的DNS地址,一般会影响上不了网,但是能够上QQ的情况,其实在很早之前,国内就有第三方软件针对这个问题推出的修复工具,这种方法最为简单,但如果说电脑没有安装这类软件,那我们不妨可以 ...

  8. uos20sp3-1030系统或ubuntu16系统配置解决DNS丢失问题

    uos20sp3-1030系统或ubuntu16系统配置解决DNS丢失问题 问题描述 对于未使用DHCP,而是使用静态网络配置的Linux服务器,一般为系统配置dns服务器地址,需要修改/etc/re ...

  9. mac系统下,解决git clone速度慢导至失败的问题

    mac系统下,解决git clone速度慢导至失败的问题 参考文章: (1)mac系统下,解决git clone速度慢导至失败的问题 (2)https://www.cnblogs.com/helenM ...

  10. linux 下,解决tomcat服务器接收中文乱码的问题

    linux 下,解决tomcat服务器接收中文乱码的问题 参考文章: (1)linux 下,解决tomcat服务器接收中文乱码的问题 (2)https://www.cnblogs.com/taz372 ...

最新文章

  1. 地铁闸门会夹伤人吗_西安地铁率先推出分类垃圾箱 四种类型你会放吗?
  2. 解决jsp引用其他项目时出现的 cannot be resolved to a type错误
  3. python使用matplotlib可视化、为可视化图像添加标题(title)、自定义标题的字体格式、字体大小、字体颜色等
  4. HTML DOM appendChild() 方法
  5. 【C++】const讲解
  6. 34_pytorch,动量与lr衰减(momentum,learning rate)--学习笔记
  7. 刚毕业就要求月薪10K?我觉得没毛病
  8. 青花瓷png免扣素材,中国风的标志素材
  9. H5图像遮罩-遁地龙卷风
  10. 简单英译汉SQL脚本
  11. CVE-2015-5254(ActiveMQ反序列化漏洞复现)
  12. 秀米html编辑器,ueditor集成秀米编辑器
  13. 奶爸日记21 - 探险乐园
  14. 软件工程实验:原型设计
  15. 听觉能力类毕业论文文献有哪些?
  16. 【Unity】【Wwise】在Unity中获取某个Wwise事件的持续时间
  17. [转]AJAX基础教程
  18. 文献科普|DNA甲基化通过CTCF和黏着蛋白复合物调节选择性聚腺苷酸化
  19. java毕业设计校园内推系统mybatis+源码+调试部署+系统+数据库+lw
  20. 腾讯云申请免费ssl证书(1年有效期)

热门文章

  1. LINUX编译automake
  2. Xcode和macOS对应关系查询网址
  3. 手机配置都赶上笔记本了
  4. 编译OpenJDK12:freetypeScaler.obj error LINK2019 无法解析的外部符号
  5. 解决办法:av_interleaved_write_frame()返回-22 错误
  6. Python语言应该加上块标识(开始、结束)的特性
  7. 摄像头实时帧率_【每日新闻】思特威全新发布130W像素全局快门图像传感器SC133GS;三星Galaxy Z Flip或仅配备12MP后置摄像头...
  8. 正态分布里的西格玛_七大数据陷阱之油腻的统计学:正态分布来了
  9. docker php示例,Docker 编程语言之 PHP
  10. react实现异步插件_初识react(四) react中异步解决方案之 redux-saga