Shell脚本实战——DNS主从同步脚本实例

DNS主从同步脚本实例

PS:两个服务器起好后最好两个服务都重启一下

主服务器配置

#!/bin/bash
#DNS主从同步——主服务器

rpm -q bind
if [ $? -ne 0 ];then
    yum install bind -y
    systemctl start named
fi
#判断DNS服务是否安装

read -p "请输入主服务器地址:" zhu
read -p "请输入从服务器地址:" cong
read -p "域名(请带后缀):" yu
quanju="/etc/named.conf"
quyu="/etc/named.rfc1912.zones"
[ ! -e $quanju.bak ] && cp $quanju $quanju.bak
sed -i -e "13s/127.0.0.1/$zhu/" -e ‘21s/localhost/any/‘ $quanju
[ ! -e $quyu.bak ] && cp $quyu $quyu.bak
#备份全局、区域配置文件

grep "$yu" $quyu &> /dev/null
while [ $? -ne 0 ];do
  sed -i "18azone \"$yu\" IN {\n  type master\;\n  file \"$yu.dns\"\;\n  allow-     transfer { $cong\; }\;\n}\;\n" $quyu
  peizhi="/var/named/$yu.dns"
cp -p /var/named/named.localhost $peizhi
done
#判断域名是否存在,如果不存在进行添加

sed -i -e ‘2d‘ -e "[email protected]       IN SOA  "$yu"\. admin\."$yu"\. (" /var/named/$yu.dns
sed -i ‘8d‘ /var/named/$yu.dns
sed -i ‘$d‘ /var/named/$yu.dns
sed -i -e "7a\      NS      $yu." -e "/A/s/127.0.0.1/$zhu/" /var/named/$yu.dns
#修改区域文件

while [ 1 -ge 0 ];do
read -p "请输入自定义指针(例:www IN A 8.8.8.8)" zhen
  echo $zhen >> /var/named/$yu.dns
  read -p "是否继续添加(y/n)" a
if [ $a != "y" ];then
  break
fi
done
#循环

systemctl stop firewalld.service
setenforce 0
systemctl restart named
jieguo=`systemctl status named | grep "active" &>/dev/null`
if [ $? -eq 0 ];then
  echo "服务启动"
else
  echo "启动失败"
fi
#判断服务是否能正常启动

sed -i -e ‘3d‘ -e "2anameserver $zhu" /etc/resolv.conf
#用于自检

从服务器配置

#!/bin/bash
#DNS主从同步——从服务器

rpm -q bind
if [ $? -ne 0 ];then
    yum install bind -y
fi
#判断DNS服务是否安装

read -p "请输入主服务器地址:" zhu
read -p "请输入从服务器地址:" cong
read -p "域名(请带后缀):" yu
quanju="/etc/named.conf"
quyu="/etc/named.rfc1912.zones"
[ ! -e $quanju.bak ] && cp $quanju $quanju.bak
sed -i -e "13s/127.0.0.1/$cong/" -e ‘21s/localhost/any/‘ $quanju
[ ! -e $quyu.bak ] && cp $quyu $quyu.bak
#备份全局、区域配置文件

grep "$yu" $quyu &> /dev/null
while [ $? -ne 0 ];do
  sed -i "18azone \"$yu\" IN {\n  type slave\;\n  file \"slaves\/$yu.dns\"\;\n    masters { $zhu\; }\;\n}\;\n" $quyu
done
#判断域名是否存在,如果不存在进行添加

systemctl restart named
systemctl stop firewalld.service
setenforce 0
jieguo=`systemctl status named | grep "active" &>/dev/null`
if [ $? -eq 0 ];then
  echo "服务启动"
else
  echo "启动失败"
fi
#判断服务是否能正常启动

原文地址:https://blog.51cto.com/14484404/2441740

时间: 2024-10-12 13:29:46

Shell脚本实战——DNS主从同步脚本实例的相关文章

DNS主从同步部署

DNS 主从同步原理 主从同步:主每次修改配置文件需要修改一下序列号,主从同步主要 看序列号. 从DNS:从是可以单独修改,主从不会报错.但从修改后,主端同步给从后 从端修改数据会丢失 主从原理:从会监听主的 TCP 53 端口,它会隔一段时间去探测 主配置文件中的序列号,如果主端 序列号更新后 从端探测到会 将主端内容 同步到本地. 同步模式:从主动探测时间比较缓慢,可以设置主端,每次变更序列号时主动将,数据信息,推送给从端. DNS实验环境 master服务器:172.16.2.116 sl

Mysql 主从同步配置实例

*两台Linux服务器,一主一从,从数据库同步主数据库的数据 *系统:Centos 6.4-64bit *主(master)数据库服务器IP地址:192.168.100.200 *从 (slave )数据库服务器IP地址:192.168.100.201 *本实验用系统自带的rpm包安装,以提供mysql服务 1.分别在两台服务器上安装mysql服务 # yum -y install mysql mysq-server # service mysqld start # chkconfig mysq

mysql主从同步脚本监控脚本

结合我的另一篇zabbix自动发现Mysql并监控的博客使用最佳: 链接点我 脚本很简单,一看就明白: [[email protected] files]# cat libexec/slave.sh  #!/bin/bash ##slave.sh ##YES ---- 1 ##NO  ---- 0   export MYSQL_PWD=xxxxxx xstats () { STATS=$(/usr/local/mysql/bin/mysql -h127.0.0.1 -uUser_name  -P

监控MySQL主从同步脚本

#!/bin/sh#date:2015-12-07#filename:Check_MySQL-rep.sh#作者:linuxzkq #Email:[email protected]#version:v1.0 Mysql_cmd="mysql -uroot -poldboy"Error_num=(1158 1159 1008 1007 1062) while truedo    rep=($($Mysql_cmd -e "show slave status\G;"|e

Centos7 DNS主从同步

操作环境:Centos7系统两台主DNS: 192.168.80.100从DNS: 192.168.80.101 1.关闭防火墙和SElinux(两台虚拟机都要关闭)systemctl stop firewalldsetenforce 0 2.使用YUM安装ntp时间同步服务(两台虚拟机都要安装)yum install ntp -y 3.配置ntp服务vi /etc/ntp.conf提示:在配置文件中添加以下内容 restrict 192.168.80.0 mask 255.255.255.0

linux 搭建 DNS 主从同步

1搭建DNS 主 从服务器. 1.1环境要求: Centos 6.5 x86_64 1.2硬件配置: 名称 IP规划 cpu 内存 硬盘 主服务器 192.168.0.24 4核 8G 80G 从服务器 192.168.0.34 4核 8G 80G 1.3软件包安装: [[email protected] ~]# yum install -y bind bind-chroot bind-utlis 1.4配置文件: /etc/named.conf bind 服务主配置文件. /var/named

配置DNS主从同步

主DNS配置基本不变,加一个选项 allow-transfer { 192.168.10.130; };//做主DNS需要配置,把本台服服务器上的数据文件传输到 重DNS配置对主配置文件进行修改 将区域配置文件拷贝一份并修改[[email protected] named]# cd /etc/[[email protected] etc]# cp -p named.rfc1912.zones named.rfc1912.zones.bak[[email protected] etc]# vi n

DNS 主从同步

一:主域名服务器. [[email protected] ~]# vim /etc/named.conf ---------------------------------------------------------------- options { listen-on port 53 { 199.100.77.137; }; listen-on-v6 port 53 { ::1; }; directory       "/var/named"; dump-file       &

DNS协议原理、安装及主从同步、负载均衡和转发、缓存的详细配置

DNS(域名系统),用于解析域名和IP地址之间的映射关系 协议使用端口: udp 53     正常查询解析情况下使用udp53 tcp53        当进行主从之间的区域传送时使用tcp53 DNS域的空间划分 DNS的查询方式 递归查询 当主机A要向DNS服务器发送查询主机D的请求时,服务器返回给A最终结果,这种方式就是递归查询,如果客户端要查找的内容直接在服务器上得到结果,刚给出的答案是一个权威答案,否则就是一个参考答案. 迭代查询 NS服务器接收到A的请求后,本地没有D的解析,则会通