URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 93941
[ Назад ]

Исходное сообщение
"bind(master) + nsd(slave)"

Отправлено skeletor , 22-Окт-12 17:43 
Есть проблемы с обновлением зон на slave: при обновлении зоны на master'e (номер Serial'a естественно увеличиваю при внесении изменений) зоны на slave не обновляются автоматически (после рестарта nsd изменения подтягиваются), при этом на том же сервере поднятый bind нормально подхватывает изменения. То есть дело не в файерволе, а в каких-то опциях автообновлений и автонотификации.

QQ.QQ.QQ.QQ - мастер
XX.XX.XX.XX; YY.YY.YY.YY; - слейвы

Вот часть настроек:


named.conf
...
        notify yes;
        allow-transfer {XX.XX.XX.XX; YY.YY.YY.YY;};
        allow-notify {XX.XX.XX.XX; YY.YY.YY.YY;};
        also-notify  {XX.XX.XX.XX; YY.YY.YY.YY;};
...
nsd.conf
...
zone:
        name: "domain.ua"
        zonefile: "domain.ua"
        allow-notify: QQ.QQ.QQ.QQ NOKEY
        request-xfr: QQ.QQ.QQ.QQ NOKEY
        allow-axfr-fallback: "yes"
...


Содержание

Сообщения в этом обсуждении
"bind(master) + nsd(slave)"
Отправлено Pahanivo , 22-Окт-12 17:45 
читай про механизм "notify"

"bind(master) + nsd(slave)"
Отправлено skeletor , 22-Окт-12 18:28 
Разобрался. Данные попадают в бинарную базу, а в текстовом файле отображаются только после выполнения nsdc patch

"bind(master) + nsd(slave)"
Отправлено Pahanivo , 22-Окт-12 19:33 
> Разобрался. Данные попадают в бинарную базу, а в текстовом файле отображаются только
> после выполнения nsdc patch

те только после того как ручками пнешь?


"bind(master) + nsd(slave)"
Отправлено skeletor , 23-Окт-12 12:20 
>> Разобрался. Данные попадают в бинарную базу, а в текстовом файле отображаются только
>> после выполнения nsdc patch
> те только после того как ручками пнешь?

Твоё "пнение" было совсем в другую сторону, так что без оскорблений, пожалуйста.


"bind(master) + nsd(slave)"
Отправлено Pahanivo , 24-Окт-12 10:16 
чиво???



"bind(master) + nsd(slave)"
Отправлено skeletor , 24-Окт-12 14:22 
> чиво???

Объясняю, что я имел ввиду. Чтение про notify (я про него читал до того, как задать вопрос)
в данном смысле ни к чему не привело, так как slav'ы успешно уведомляются (раз работало на bind), значит дело скорее всего в другом (в чём именно, написано ниже).


"bind(master) + nsd(slave)"
Отправлено Pahanivo , 24-Окт-12 20:41 
исвини друх
но я имел ввиду реализацию механизма нотифи для nsd, ибо что нотифы долетают и так понятно из твоего первого поста. собственно что ты и сделал :)
пысы: а вот сопли были не в тему :)

"bind(master) + nsd(slave)"
Отправлено skeletor , 25-Окт-12 15:34 
> исвини друх
> но я имел ввиду реализацию механизма нотифи для nsd, ибо что нотифы
> долетают и так понятно из твоего первого поста. собственно что ты
> и сделал :)
> пысы: а вот сопли были не в тему :)

Всё нормально, друх.
Там тоже всё было в порядке. Дело оказалось не в notify.


"bind(master) + nsd(slave)"
Отправлено Дядя_Федор , 22-Окт-12 20:19 
> Разобрался. Данные попадают в бинарную базу, а в текстовом файле отображаются только
> после выполнения nsdc patch

После правки зоны надо дать на мастере команду rndc имя_зоны reload. Тогда слейв сам подтянет изменения по изменившемуся сериалу. В противном случае (если его не уведомить об изменениях) - или по перезапуску (что Вы и наблюдали) или когда зона "протухнет" (параметр TTL).



"bind(master) + nsd(slave)"
Отправлено Pahanivo , 23-Окт-12 07:40 
>> Разобрался. Данные попадают в бинарную базу, а в текстовом файле отображаются только
>> после выполнения nsdc patch
>  После правки зоны надо дать на мастере команду rndc имя_зоны reload.
> Тогда слейв сам подтянет изменения по изменившемуся сериалу. В противном случае
> (если его не уведомить об изменениях) - или по перезапуску (что
> Вы и наблюдали) или когда зона "протухнет" (параметр TTL).

как я понял а автора какраз слей и не хавает нотифы после релоада


"bind(master) + nsd(slave)"
Отправлено Дядя_Федор , 23-Окт-12 10:25 
> как я понял а автора какраз слей и не хавает нотифы после
> релоада

Я понял несколько по другому. Исходя из вот этой фразы.

> зоны на slave не обновляются автоматически (после рестарта nsd изменения подтягиваются).

То есть - если провести изменения зоны, слейв(nsd) не подхватывает изменения. А вот после перезапуска оного - изменения проходят (что логично). :)


"bind(master) + nsd(slave)"
Отправлено skeletor , 23-Окт-12 12:32 
>> Разобрался. Данные попадают в бинарную базу, а в текстовом файле отображаются только
>> после выполнения nsdc patch
>  После правки зоны надо дать на мастере команду rndc имя_зоны reload.
> Тогда слейв сам подтянет изменения по изменившемуся сериалу. В противном случае
> (если его не уведомить об изменениях) - или по перезапуску (что
> Вы и наблюдали) или когда зона "протухнет" (параметр TTL).

Это всё делалось. Проблема была в том, что nsd нормально принимает изменения и пишет их в бинарную базу, а я смотрел файлик с зонами. Для того, что изменения отобразились в файлике с зоной, нужно выполнить nsdc patch . Эта команда внесёт все изменения из бинарной базы в файлик. Вот так работает nsd. Немного необычно и непривычно. Bind-же сразу вносит изменения  в файлик


"bind(master) + nsd(slave)"
Отправлено Дядя_Федор , 23-Окт-12 20:51 
> Это всё делалось. Проблема была в том, что nsd нормально принимает изменения
> и пишет их в бинарную базу, а я смотрел файлик с
> зонами. Для того, что изменения отобразились в файлике с зоной, нужно
> выполнить nsdc patch . Эта команда внесёт все изменения из бинарной
> базы в файлик. Вот так работает nsd. Немного необычно и непривычно.
> Bind-же сразу вносит изменения  в файлик

Значит и я Вас неправильно понял. :) Я правильно понял, что для Вас важно было именно то, чтобы изменения были отражены именно в текстовых файлах?  Я не совсем догоняю смысл - на уровне "шашечки или ехать?" Если сам сервер скушал изменения и корректно отвечает на запросы (с изменившимися данными) - то в чем смысл?



"bind(master) + nsd(slave)"
Отправлено skeletor , 24-Окт-12 14:47 
>[оверквотинг удален]
>> и пишет их в бинарную базу, а я смотрел файлик с
>> зонами. Для того, что изменения отобразились в файлике с зоной, нужно
>> выполнить nsdc patch . Эта команда внесёт все изменения из бинарной
>> базы в файлик. Вот так работает nsd. Немного необычно и непривычно.
>> Bind-же сразу вносит изменения  в файлик
>  Значит и я Вас неправильно понял. :) Я правильно понял, что
> для Вас важно было именно то, чтобы изменения были отражены именно
> в текстовых файлах?  Я не совсем догоняю смысл - на
> уровне "шашечки или ехать?" Если сам сервер скушал изменения и корректно
> отвечает на запросы (с изменившимися данными) - то в чем смысл?

Смысл в том, что хотелось видеть изменения в файликах, себе спокойнее.


"bind(master) + nsd(slave)"
Отправлено Pahanivo , 24-Окт-12 20:42 
дергай по крону