The OpenNET Project / Index page

[ новости/++ | форум | wiki | теги | ]

Автоматическая синхронизация файлов конфигурации master и slave DNS серверов (dns sync domain bind freebsd)


<< Предыдущая ИНДЕКС Исправить src / Печать Следующая >>
Ключевые слова: dns, sync, domain, bind, freebsd,  (найти похожие документы)
From: Alex Samorukov <samm@os2.kiev.ua.> Date: Mon, 6 Mar 2008 14:31:37 +0000 (UTC) Subject: Автоматическая синхронизация файлов конфигурации master и slave DNS серверов Зачем это нужно? Для одного из проектов мне потребовалось обеспечить автоматическое распространение DNS зон, прописанных на master dns, slave серверам. Так как зон ожидалось не больше 100-200 мне хотелось сделать максимально простую, но в тоже время безопасную схему синхронизации серверов, без использования LDAP или SQL в качестве backend. В итоге я решил задачу используя shell скрипты, которыми решил поделиться с общественностью. Всё нижеописанное работает на OS FreeBSD но должно без проблем работать и в любой другой UNIX OS c BIND в роли DNS. Как это работает Все master зоны на primary dns лежат в отдельной директории (/etc/namedb/master-auto) и названы в формате <domain>.db. Например example.com.db, kernel.org.db и т.п. Это важный момент, так как на этом основан алгоритм получения списка доменов (это проще и удобнее чем читать named.conf). Используя протокол SSH клиенты (secondary сервера) запрашивают у primary сервера список доменов и, в случае различий с локальным списком, обновляют конфигурацию. Клиентов может быть сколько угодно, обновление происходит по cron, например, раз в 10 минут. Для безопасного транспорта содержимого зон используется TSIG протокол. Конфигурация сервера Как я уже писал выше, primary сервер должен по протоколу SSH отдавать список обслуживаемых доменов. Для этого я завёл пользователя dnssync. Shell данного пользователя будет специально созданный для данной цели sh скрипт. # pw user add dnssync -s /home/dnssync/domainlist.sh Пароль пользователю не нужен, так как для подключения будет использоваться SSH ключ. Теперь создадим сам скрипт: mkdir /home/dnssync; chmod 700 /home/dnssync; vi /home/dnssync/domainlist.sh #!/bin/sh export COLUMNS=1 # directory with <zone>.db files cd /etc/namedb/master-auto echo "DOMAINLIST_START" /bin/ls *.db|/usr/bin/sed 's/\.db//' echo "DOMAINLIST_END" Корректируем права доступа: chmod +x /home/dnssync/domainlist.sh Как видно из текста скрипта, всё что он делает - это получает список файлов в директории, убирает суффикс .db и добавляет к выводу DOMAINLIST_START перед листингом и DOMAINLIST_END в конце вывода. Для проверки запустите /home/dnssync/domainlist.sh - должно быть что-то вроде DOMAINLIST_START example.com kernel.org DOMAINLIST_END Конфигурация клиента Теперь перейдём к настройке secondary DNS. Для начала нам потребуется настроить авторизацию по ключу для подключения к главному серверу. Если ключ ещё не создан, запустим ssh-keygen, указав пустой passphrase. Нам потребуется скопировать публичный ключ (по умолчанию /root/.ssh/id_rsa.pub в FreeBSD) в список авторизованных ключей на главном сервере (в файл /home/dnssync/.ssh/authorized_keys). В этом же файле можно задать IP адрес владельца ключа для большей безопасности. Чтобы убедиться, что всё работает, на клиенте введём команду ssh dnssync@<master_ip>, например # 'ssh dnssync@1.2.3.4 sync'. Последний аргумент требуется, чтобы сервер не показывал motd и прочие радости. В случае правильной настройки должен быть выведен список доменов, без запроса пароля. Теперь установим клиентский скрипт, который отвечает за изменение конфигурации BIND и его перезапуск: mkdir /root/bin vi /root/bin/dnssync.sh #!/bin/sh MASTERHOST="1.2.3.4" MASTERUSER="dnssync" DNSTMPDIR="/root/tmp" # fetching domain list from the master /usr/bin/ssh -o BatchMode=yes ${MASTERUSER}@${MASTERHOST} fetch > ${DNSTMPDIR}/domains.tmp </dev/null if [ "$?" -ne "0" ]; then echo "Error while transferring" exit 1 fi # simple check of the received file if [ -z `grep DOMAINLIST_START ${DNSTMPDIR}/domains.tmp` -o -z `grep DOMAINLIST_END ${DNSTMPDIR}/domains.tmp` ]; then echo "Invalid data received" exit 1; fi # check if the files are equal if [ -f ${DNSTMPDIR}/domains -a -z "`/usr/bin/cmp ${DNSTMPDIR}/domains.tmp ${DNSTMPDIR}/domains 2>/dev/null`" ]; then # files are equal, do nothing exit 0; fi # copy temporary file to the primary /bin/cp ${DNSTMPDIR}/domains.tmp ${DNSTMPDIR}/domains # creating output file for the dns /usr/bin/grep -v DOMAINLIST_ ${DNSTMPDIR}/domains \ | sed 's/\(.*\)/zone "\1" in { type slave; file "slave\/\1.db"; masters {'${MASTERHOST}';}; };/' \ > /etc/namedb/slave.conf /etc/rc.d/named restart >/dev/null Корректируем права доступа: chmod 700 /root/bin/dnssync.sh Этот скрипт при запуске подключается к master серверу, скачивает список доменов (проверяя его корректность), сравнивает с имеющимся файлов и в случае изменений создаёт /etc/namedb/slave.conf, содержащий список slave зон после чего перезапускает BIND. Запустите скрипт, в случае если всё работает правильно вы должны получить файл /etc/namedb/slave.conf содержащий конфигурацию slave зон. Чтобы named читал этот файл добавим строчку 'include "slave.conf";' в файл /etc/named.conf и перезапустим named. В случае отсутствия ошибок в директории /etc/namedb/slave появятся файлы зон. Для автоматической работы скрипт dnssync.sh добавляем в crontab пользователя root с требуемой вам периодичностью. Для вторичных серверов поступаете аналогично. TSIG - безопасная передача зон Для увеличение безопасности работы я рекомендую использовать механизм TSIG. Достаточно подробное описание настройки можно прочитать в статье "Защита сервера DNS", так что я не вижу смысла дублировать это в своей заметке. Заключение Описанная схема прекрасно подходит для сравнительно небольших конфигураций. К её плюсам можно отнести простоту реализации (только shell), высокую безопасность и лёгкую переносимость. Недостатки - каждый раз передаётся полный список зон, в случае обновления требуется перезапуск named. В масштабах большого регистратора рекомендую подумать о более эффективных методах репликации, но для большинства других задач эти недостатки совершенно не существенны. Как всегда - буду рад замечаниям и советам. Alex Samorukov, samm@os2.kiev.ua

<< Предыдущая ИНДЕКС Исправить src / Печать Следующая >>

Обсуждение [ Линейный режим | Показать все | RSS ]
 
  • 1.1, Salvator (?), 18:56, 06/03/2008 [ответить] [показать ветку] [···]    [к модератору]
  • +/
    имхо, статья о том, как не надо делать. для таких целей есть директива masters в named.conf
     
     
  • 2.20, Samm (??), 23:19, 06/03/2008 [^] [ответить]    [к модератору]
  • +/
    Если вы расскажете как поставленную задачу решить средствами бинд - я удалю эту статью и попрошу извинения у читателей. Но что-то мне подсказывает, что дальше заголовка вас читать не научили.
     
  • 1.2, aZ (?), 19:17, 06/03/2008 [ответить] [показать ветку] [···]    [к модератору]
  • +/
    Велосипед. Зачем придумано master и slave в намеде - автору явно не известно.
     
     
  • 2.27, Samm (??), 23:32, 06/03/2008 [^] [ответить]    [к модератору]
  • +/
    >Велосипед. Зачем придумано master и slave в намеде - автору явно не
    >известно.

    Жду решения задачи описанной в статье встроенными средствами.

     
  • 1.3, Deepwalker (??), 19:19, 06/03/2008 [ответить] [показать ветку] [···]    [к модератору]
  • +/
    Автор, объясните пожалуста смысл действий. А то народ в недоумении, может я чего не допонял/не знаю? : (
     
     
  • 2.41, Samm (??), 00:54, 07/03/2008 [^] [ответить]     [к модератору]  
  • +/
    Смысл действий ясно описан в статье - автоматическое создание и удаление зон на ... весь текст скрыт [показать]
     
  • 1.4, Аноним (4), 19:22, 06/03/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    спасибо, но я буду пользоваться встроенными в бинд средствами синхронизации :))
     
     
  • 2.6, brandy (?), 19:44, 06/03/2008 [^] [ответить]    [к модератору]  
  • +/
    >спасибо, но я буду пользоваться встроенными в бинд средствами синхронизации :))

    +1 :)
    Автор, отсыпь :)

     
     
  • 3.21, Samm (??), 23:23, 06/03/2008 [^] [ответить]    [к модератору]  
  • +/
    Да не вопрос, обращайся. Только до этого опиши, как решить задачу распространения вновь созданных или удалённых зон встроенными средствами. Отсыплю стакан.
     
     
  • 4.31, brandy (?), 23:36, 06/03/2008 [^] [ответить]    [к модератору]  
  • +/
    Дико извиняюсь, таки недосмотрел и не до конца внимательно прочитал, а так, бегло, между строк...
    Идея отличная.
    Попроси лучше вебмастеров/админов сайта переименовать статью :)
     
     
  • 5.40, Samm (??), 00:52, 07/03/2008 [^] [ответить]    [к модератору]  
  • +/
    Не страшно, да и с названием я и в самом деле накосячил. Заявку на изменение названия сразу отправил, надеюсь завтра поправят. Просто не понимаю, зачем писать комментарии к тексту не прочитав его.
     
  • 1.5, Аноним (-), 19:35, 06/03/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    более того, встроенные средства красиво оформляют файлы зон =)
     
     
  • 2.23, Samm (??), 23:26, 06/03/2008 [^] [ответить]    [к модератору]  
  • +/
    >более того, встроенные средства красиво оформляют файлы зон =)

    И распространяют вновь созданные? Почитайте статью. Название и в самом деле неудачно,

     
  • 1.7, shad (??), 20:32, 06/03/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    С ума сойти... ну понятно когда такое проделывают с djb dns, но с named, имхо - извращение...
     
  • 1.9, uldus (ok), 21:33, 06/03/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    А слабо комментаторам прочитать статью ? Речь про то как _автоматически_ синхронизировать зоны на слейв, без ручной правки конфигов слейва, просто добавил домен на мастере, он сам заведется на слейве. У меня например это делается формированием конфига слейфа на стороне мастера и последующим его копированием.
     
     
  • 2.13, Anonymous (?), 21:45, 06/03/2008 [^] [ответить]    [к модератору]  
  • +/
    Но это должно делаться только один раз при создании зоны
     
     
  • 3.15, Аноним (4), 22:16, 06/03/2008 [^] [ответить]    [к модератору]  
  • +/
    А если слейвов >> 1? А если это должно происходить автоматически? Например, на мастере вписывают зоны из веб-панели. Ну и? Дальше что?
     
     
  • 4.18, Anonymous (?), 23:08, 06/03/2008 [^] [ответить]     [к модератору]  
  • +/
    Не досмотрел статью правильно надо было назвать Автоматическое создание slav... весь текст скрыт [показать]
     
     
  • 5.26, Samm (??), 23:30, 06/03/2008 [^] [ответить]     [к модератору]  
  • +/
    Название было выбрано неудачно, согласен Хотя в тексте ясно написано о чём идёт... весь текст скрыт [показать]
     
  • 4.38, Samm (??), 00:02, 07/03/2008 [^] [ответить]     [к модератору]  
  • +/
    Кстати, именно так и происходит Зоны создаёт менеджер - реселлер из веб морды ... весь текст скрыт [показать]
     
  • 3.16, uldus (ok), 22:29, 06/03/2008 [^] [ответить]     [к модератору]  
  • +/
    Посмотрите вы скрипт в статье в конце концов, там вся его работа сводится к авто... весь текст скрыт [показать]
     
     
  • 4.28, Samm (??), 23:33, 06/03/2008 [^] [ответить]     [к модератору]  
  • +/
    Большое спасибо что прочитали статью, ваш IQ явно много выше большинства пишущих... весь текст скрыт [показать]
     
  • 3.25, Samm (??), 23:29, 06/03/2008 [^] [ответить]    [к модератору]  
  • +/
    >Но это должно делаться только один раз при создании зоны

    Почитайте статью. Зон - порядка сотни, и правит их менеджер через веб морду. Задача решалась для небольшого хостинг-провайдера.

     
  • 2.24, Samm (??), 23:27, 06/03/2008 [^] [ответить]     [к модератору]  
  • +/
    Большое спасибо что смогли прочитать дальше заголовка в отличии от большинства ... весь текст скрыт [показать]
     
  • 1.10, ture (?), 21:40, 06/03/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Может книжку в начале почитал бы? А то читать тошно...
     
     
  • 2.17, uldus (ok), 22:32, 06/03/2008 [^] [ответить]     [к модератору]  
  • +/
    Книжку по магии У вас конфигурационный файл slave сервера волшебным образом со... весь текст скрыт [показать]
     
  • 2.35, Samm (??), 23:40, 06/03/2008 [^] [ответить]    [к модератору]  
  • +/
    >Может книжку в начале почитал бы? А то читать тошно...

    Тошно - не читайте. А теперь скажи мне, мой слаткий, в какой книжке это описано?

     
  • 1.12, alfss (?), 21:44, 06/03/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    pDNS
     
     
  • 2.39, Samm (??), 00:46, 07/03/2008 [^] [ответить]    [к модератору]  
  • +/
    Да, это 1 из вариантов, я его рассматривал, но всё же решил остановиться на бинд, ввиду его лучшей изученности :)  
     
  • 1.14, Аноним (4), 22:15, 06/03/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Почти все, кто сверху - идиоты. Речь идет о синхронизации зон и их содержания, а не только содержания. Некоторое время назад мне тоже пришлось решать такую задачку.
     
     
  • 2.19, Anonymous (?), 23:12, 06/03/2008 [^] [ответить]     [к модератору]  
  • +/
    Встречают по одежке Это я к чему - название статьи правильно надо писать ... весь текст скрыт [показать]
     
     
  • 3.30, Samm (??), 23:34, 06/03/2008 [^] [ответить]     [к модератору]  
  • +/
    Да, это была моя ошибка Но писать комментарии к статье НЕ ЧИТАВ ЕЁ - это идиоти... весь текст скрыт [показать]
     
  • 1.29, Onan (?), 23:34, 06/03/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Афтар, что мешало передать файл конфига по ftp? К чему такие сложности?
     
     
  • 2.32, brandy (?), 23:38, 06/03/2008 [^] [ответить]     [к модератору]  
  • +/
    Не автор не все же как Ранович отвечу вопросом на вопрос - а если слейв в десяти... весь текст скрыт [показать]
     
  • 2.33, Samm (??), 23:39, 06/03/2008 [^] [ответить]     [к модератору]  
  • +/
    1 ftp не безопасен 2 Передать файл откуда На мастере - совсем другая конфиг... весь текст скрыт [показать]
     
     
  • 3.72, Lazy (?), 11:20, 15/03/2008 [^] [ответить]    [к модератору]  
  • +/
    А rsync не лучше заюзать? Я понимаю, это конечно выходит за рамки средств ОС. но тем не менее.
     
  • 2.34, Pilat (?), 23:40, 06/03/2008 [^] [ответить]    [к модератору]  
  • +/
    >Афтар, что мешало передать файл конфига по ftp? К чему такие сложности?
    >

    Наверно, отличный от нуля IQ автора статьи помешал. Вам, наверно, не помешает.

     
  • 1.37, Samm (??), 23:42, 06/03/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Читаем новость:

    Alex Samorukov подготовил статью с рассказом как обеспечить автоматическую синхронизацию конфигурации первичного и вторичных DNS серверов.

    Что неясно, мои милые лемминги?

     
     
  • 2.43, Skif (ok), 02:00, 07/03/2008 [^] [ответить]     [к модератору]  
  • +/
    Саш, плюнь и не заводись Здесь многие сначала поливают, потом думают Столкнутс... весь текст скрыт [показать]
     
  • 1.42, daiver (??), 01:53, 07/03/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Samm, идея отличная и реализация тоже. Спасибо.
     
  • 1.44, alex (??), 08:34, 07/03/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Статья понравилась. Спасибо.
    "Теоретикам", написавшим максимум "hello, word" в своей жизни нужно научиться уважать людей, которые умеют генерить идеи и воплощать их в жизнь...

     
  • 1.45, ig0r (??), 08:43, 07/03/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Скрипт стоит подправить, чтобы срабатывало не по крону, а скажем вызывалось скриптом на мастере, после правки конфига, этот скрипт также могбы рестартовать named на мастере. В итоге, слейв синхронизируеться сразу, и нету ненужных синхронизаций в период когда конфиги не правились.
     
     
  • 2.50, Samm (??), 09:38, 07/03/2008 [^] [ответить]     [к модератору]  
  • +/
    В этом есть и плюсы и минусы Ну плюс очевиден - нет лишних обращений к мастеру ... весь текст скрыт [показать]
     
     
  • 3.57, ig0r (??), 10:35, 07/03/2008 [^] [ответить]     [к модератору]  
  • +/
    во первых не совсем понял о чём Вы говорите у всех клиентов должен быть для это... весь текст скрыт [показать]
     
     
  • 4.63, Samm (??), 18:46, 07/03/2008 [^] [ответить]     [к модератору]  
  • +/
    Это не сложно добавить, просто для моей задачи время синхронизации до 10 минут б... весь текст скрыт [показать]
     
  • 1.47, pablo (ok), 09:28, 07/03/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    "Если ключ ещё  создан"
    Видимо пропущена "не".

    Alex, а по -HUP named не перечитывает конфиг?

     
     
  • 2.49, Samm (??), 09:35, 07/03/2008 [^] [ответить]     [к модератору]  
  • +/
    Судя по документации Certain UNIX signals cause the name server to take specific... весь текст скрыт [показать]
     
  • 2.52, Samm (??), 09:51, 07/03/2008 [^] [ответить]    [к модератору]  
  • +/
    >"Если ключ ещё  создан"
    >Видимо пропущена "не".
    >
    >Alex, а по -HUP named не перечитывает конфиг?

    Да, и спасибо за "ключ ещё не создан" - действительно опечатка, послал запрос на исправление.

     
  • 1.48, dRiZd (?), 09:32, 07/03/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Сам в 96-ом году так-же парился, выкрутился подобным способом. Я думаю, для тех людей у кого голова дана не "для того, чтобы шляпу носить" - данная статья будет хорошим подспорьем.
     
  • 1.53, Аноним (4), 09:53, 07/03/2008 [ответить] [показать ветку] [···]     [к модератору]  
  • +/
    пипец, кто писал выше в начале клинические дибилы, прочитав заголовок я почемуто... весь текст скрыт [показать]
     
     
  • 2.55, Samm (??), 10:12, 07/03/2008 [^] [ответить]     [к модератору]  
  • +/
    Ну я бы решал задачу так 1 Перевёл бы мастер и слейвы на SQL драйвер конфигура... весь текст скрыт [показать]
     
     
  • 3.56, Аноним (4), 10:15, 07/03/2008 [^] [ответить]     [к модератору]  
  • +/
    Спасибо за отзыв пайду читать gt оверквотинг удален ... весь текст скрыт [показать]
     
  • 1.54, vl (??), 09:53, 07/03/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Спасибо за статью.
    Начал читать то же сразу не догнал, зачем так делать.
    Потом понял в чем смысл.
    Мне кажется название статьи лучше поменять на что нибудь такое: автоматическая синхронизация списка доменных зон ...
    И в пункте "Зачем это нужно?" акцент на это сделать.
     
  • 1.58, Egenius (??), 11:16, 07/03/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Спасибо за статью !
    Давно хотел найти нечто подобное.
    У меня только один вопрос.
    А почему нельзя читать зоны из named.conf ?
    При этом выборку делать по типу зоны и брать записи только с типом master.
    У меня, например сервер, являющийся мастером для одних доменов, в то же время является слэйвом для некоторых других.
    И мне трудно заставить, например Plesk, разделять мастер и слэйв зоны по разным директориям и писать файлы зон с окончанием ".db"
    Можно ли как то сделать выборку мастер зон из named.conf для передачи их Вашему скрипту ?
    Спасибо !
     
     
  • 2.62, Samm (??), 18:37, 07/03/2008 [^] [ответить]     [к модератору]  
  • +/
    Пожалуйста Можно, конечно, просто это услоэнит задачу В данном примере случа... весь текст скрыт [показать]
     
     
  • 3.68, Egenius (??), 16:40, 08/03/2008 [^] [ответить]    [к модератору]  
  • +/
    > С плеском я бы поступил иначе - весь конфиг он хранит в mysql, так что просто на сервере сделайте скрипт из mysql + sed :)

    Спасибо за совет.
    И как я раньше не догнал ?))

     
  • 1.59, Аноним (4), 14:34, 07/03/2008 [ответить] [показать ветку] [···]     [к модератору]  
  • +/
    Статья - ради статьи Теперь предлагается сделать форки этой статьи о пересылк... весь текст скрыт [показать]
     
     
  • 2.60, Samm (??), 17:17, 07/03/2008 [^] [ответить]    [к модератору]  
  • +/
    >Статья - ради статьи :(
    >Теперь предлагается сделать форки этой статьи о пересылке и разборе файла named.conf
    >по почте (и разбирать procmail), по ftp, по http, по .......
    >
    >Тут можно список продлить.
    >А потом добавить весь перечень статейсписок с использованием AWK, perl etc....

    Я надеюсь, что кому-та эта статья здорово сократит время для реализации данной задачи.

     
  • 1.61, Lin (??), 17:27, 07/03/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Спасибо за статью
    Сейчас пользую самописный скрипт scp/ssh для синхронизации 3-х серверов, но у меня его нужно запускать ручками
    На неделе буду внедрять!
     
  • 1.64, Аноним (64), 22:04, 07/03/2008 [ответить] [показать ветку] [···]     [к модератору]  
  • +/
    Начало статьи однозначно говорит о том, что автор собирается синхронизировать им... весь текст скрыт [показать]
     
     
  • 2.65, aZ (?), 23:17, 07/03/2008 [^] [ответить]    [к модератору]  
  • +/
    Согласен.

    А автора статьи за обзывания забанить. :D

     
     
  • 3.67, Samm (??), 23:34, 07/03/2008 [^] [ответить]    [к модератору]  
  • +/
    >Согласен.
    >
    >А автора статьи за обзывания забанить. :D

    Да ради бога! Пожалуйтесь редактору.

     
  • 2.66, Samm (??), 23:33, 07/03/2008 [^] [ответить]    [к модератору]  
  • +/
    >Начало статьи однозначно говорит о том, что автор собирается синхронизировать именно файлы
    >зон.
    >Отсюда и весь сыр, бор.
    >
    >Вот пример:
    >"Для одного из проектов мне потребовалось обеспечить автоматическое
    >распространение DNS зон, прописанных на master dns, slave серверам."
    >
    >Любой прочитавший это сразу задастся вопросом: А на кой сие? Сам BIND
    >это умеет и даже очень хорошо умеет.

    Да? умеет распространять зоны мастера, не прописанные на слейвах? А в ISC про это знают?
    >
    >Так же не освещена тема когда зона с основного сайта удаляется. На
    >резервном сервер ведь мусор остается.

    Ну остаётся и ладно, меня не напрягает наличие мусора в дире слейв. Если вас напрягает - 2 строчке в скрипте-апдейтере, diff + awk + xargs и всё. В любом случае они НИ НА ЧТО не влияют.

     
     
  • 3.69, mega (??), 17:38, 08/03/2008 [^] [ответить]    [к модератору]  
  • +/
    в PowerDNS задача отлично решается встроенными средствами. И испортировать зоны из бинда тоже можно. Имхо нет смысла изобретать велосипед.
     
  • 3.73, Andrey Y. Ostanovsky (?), 22:57, 14/05/2008 [^] [ответить]    [к модератору]  
  • +/
    > Да? умеет распространять зоны мастера, не прописанные на слейвах? А в ISC про это знают?

    Умеет, знают.:) Ловите нотификации - они присылаются на слэйвы независимо от того - прописано там что-то у них в конфигах, или нет:
    14-May-2008 18:06:20.053 notify: info: zone sxxxxxxxxxxxx/IN/regular: sending notifies (serial 20080426)

     
     
  • 4.75, Samm (??), 14:19, 13/06/2008 [^] [ответить]    [к модератору]  
  • +/
    >> Да? умеет распространять зоны мастера, не прописанные на слейвах? А в ISC про это знают?
    >
    >Умеет, знают.:) Ловите нотификации - они присылаются на слэйвы независимо от того
    >- прописано там что-то у них в конфигах, или нет:
    >14-May-2008 18:06:20.053 notify: info: zone sxxxxxxxxxxxx/IN/regular: sending notifies (serial 20080426)

    С точки зрения security крайне стрёмное решение )

     
  • 1.70, tsv4g (ok), 01:50, 09/03/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Alex, мне кажется у тебя в статье закрался один косяк "по процедуре"

    вот в этой строке
    /bin/ls *.db|/usr/bin/sed 's/\.db//'

    будут неправильно обрабатываться домены типа domain.dbxxxxx.com  и т.д.
    т.е. содержащие .db внутри имени домена

    решается банально:
    /bin/ls *.db|/usr/bin/sed 's/\.db$//'

    но лучше в статье написать правильно - некоторые могут наступить на эти грабли, огорчатся потом ...


    Про статью вообще - задачка довольно специфическая, но решение адекватное - дёшево и сердито.

     
  • 1.71, Anonymous (?), 15:52, 13/03/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Интересное решение, простое и надежное. Репликация базы имеет свои риски и тонкости, например упасть может MySQL, база попортиться может, да и вообще любое лишнее звено снижает надежность. А то можно дойти до того, что давайте все конфиги в базе хранить, а /etc удалим за ненадобностью :)

    Можно предложить улучшение: файлы копировать через rsync. Он по ssh работает, передает только диффы и сжимает данные. Трафик будет виден только под микроскопом.

     
  • 1.74, VB (?), 03:23, 22/05/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    У нас была аналогичная проблема на MS DNS серверах (тоже хостинг-провайдер где клиенты добавляют домены через веб интерфейс).
    Нашли готовый софт:
    http://tools.tripletee.com/3tdns/
     
  • 1.76, Sergej Kandyla (?), 23:33, 15/10/2008 [ответить] [показать ветку] [···]    [к модератору]  
  • +/
    Hi!

    идея отличная. Сам писал подобное (с учетом специфики своей задачи) на основе shell+rsync(via ssh).

    я удивляюсь всяким "комИнтОтАрам" которые банально не одупляют суть вопроса, лишь бы что-то ляпнуть....в духе "аФтор не курил ман бинда"

    Спасибо!

     
     
  • 2.77, zerg23k (??), 15:07, 16/01/2009 [^] [ответить]    [к модератору]  
  • +/
    Автору спасибо за идею и статью, я тоже боролся с подобной проблемой чуть меньше месяца назад. Читал про многие DNS демоны, но задача стояла (работа с кириллическими доменами), а на данный момент с ними работает только ibind. Поэтому проблемма синхронизации зон - была решена подобным способом с передачей через rsync.
    Спасибо автору..
     

    Ваш комментарий
    Имя:         
    E-Mail:      
    Заголовок:
    Текст:




      Закладки на сайте
      Проследить за страницей
    Created 1996-2017 by Maxim Chirkov  
    ДобавитьРекламаВебмастеруГИД  
    Hosting by Ihor