Блогът на Борис Димитров

freebsd , linux , system & network admin blog
  • Home
  • За мен
20 май 2009

Master and Slave DNS zone update BIND9

Ако ви се налага да направите нов secondary dns сървърили просто да ъпдейтвате с нови зони съществуващ такъв , новите зони се налага да ги описвате на ръка . Ето едно решение за динамичен ъпдейт (не DDNS) на конфига на secondary (slave) dns сървъра, което копира конфигурационня файл на primary сървъра и след това прейменува зоните на slave.
Ще трябва да си направите и ключ за ssh за да може скрипта да влиза без парола , ще пиша и за това , но в друга статия.

master dns : 192.168.0.1
slave dns : 192.168.0.2

И самия скрипт (нищо сложно) :

#!/bin/sh

# Script to copy slave dns zones from master dns
# release 1.0
# b2 (at) playtime.bg

# first we need master dns zone config local to make changes on it
# this is how we do it

scp user@192.168.0.1:/etc/namedb/named.conf /root/work/named_master.conf

# now we need to change some things in the config and save it as slave

for domain in `grep ^zone /root/work/named_master.conf |awk ‘{print $2}’ |sed ’s/\(.*\)./\1/’ |sed ’s/.\(.*\)/\1/’`

do

/usr/bin/printf “

zone \“$domain\“ {
type slave;
file \“/etc/bind/slaves/$domain\“;
masters { 192.168.0.1; };
};\n“

done > /root/work/slavefile.conf

# now it is time to (smoke some weed and) move it on /etc/bind && reload our server
cp slavefile.conf /etc/bind/named.conf.local && /etc/init.d/bind9 reload

# let’s do some checks to be sure bind daemon is up & running

bind_status=`/etc/init.d/bind9 status`
status_ok=“bind9 is running.“

if [ "$bind_status" = "$status_ok" ];
then

# all done – mail admins and go to sleep :)
echo „MASTER/SLAVE ZONES SYNCRONIZATION COMPLETED – YOU CAN GET DRUNK NOW !“ |mail -s „ZONES SYNCRONIZATION COMPLETED“ admin ( at ) playtime.bg

else
# fuck , something wrong here !
echo „SLAVE DNS SERVER NOT RUNNING ALTER SYNCRONIZATION – DO SOMETHING NOW !“ |mail -s „SLAVE DNS DOWN AFTER SYNCRONIZATION“ admin ( at ) playtime.bg

fi
exit 0

също и в crontab-а на root вмъкнете :

0 4 * * * /path/to/script

всеки ден в 4 часът през нощта скрипта ще се изпълнява.
Това е !

Tags: admin, dns, Linux

This entry was posted on сряда, май 20th, 2009 at 17:39 and is filed under Linux, Servers. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback from your own site.

One Response to “Master and Slave DNS zone update BIND9”

  1. prosto казва:
    22.05.2009 в 13:09

    Mnogo dobro!!!!
    Bravo, vurshi chudesna rabota!

Leave a Reply

Отказване на отговора

« Простест пред парламента на 29.04.2009
Скрипт за проверка дали даден процес е жив »
  • Превод

  • Календар

    март 2010
    П В С Ч П С Н
    « фев    
    1234567
    891011121314
    15161718192021
    22232425262728
    293031  
  • Категории

    • Freebsd (5)
    • Linux (5)
    • Networking (1)
    • Perl (1)
    • PHP (1)
    • Servers (6)
    • Без категория (2)
    • България (2)
    • Лични (2)
    • Новини (1)
  • ИТ

    • Корпоративни интернет решения
  • Приятели

    • :: KnowHow by Sto. :: line-by-line on commandline
    • Instudio54 Lifestyle Online Radio
    • Блогът на Иван Тодоров
    • Институт за имунологично здраве, имунопрофилактика, имунотерапия и биологична терапия на рака “д-р Русчо Иконописов”
  • Реклами


Блогът на Борис Димитров powered by WordPress
Hosted at Sysadmins-bg.net
Design & code by Jonk
Entries (RSS) and Comments (RSS).
24 queryes | 1,456 seconds.