Я выполняю порт BIND 9.10.2 на FreeBSD 10 в заключенной в тюрьму конфигурации, и у меня есть проблема это rndc reload
не забирает никого (основное ведущее устройство) зональные изменения файла, даже при том, что последовательный SOA правильно увеличен.
Сама команда, кажется, успешно выполняется:
#rndc reload
server reload successful
В журналах я вижу:
May 9 16:03:47 y named[81516]: all zones loaded
May 9 16:03:47 y named[81516]: running
И все же только перезапуск named
берет зональные обновления.
rndc zonestatus my_zone.com
печатает старый сериал. Таким образом, BIND так или иначе не удается перечитать зональный файл.
Как я могу отладить это?
Если это действительно динамически обновляемая зона (указана allow-update
/ update-policy
), редактировать файл зоны небезопасно. напрямую!
В такой настройке файл зоны поддерживает BIND; буферизация изменений в файле журнала ( .jnl
) и периодическая перезапись самого файла зоны.
Ожидается, что все изменения в данных зоны будут происходить через протокол динамического обновления и управляются BIND, а не напрямую вносит изменения в файл зоны.В любом случае изменение файла зоны приведет к несогласованному поведению, так как содержимое файла зоны будет не синхронизировано с содержимым журнала и состоянием с именем
.
Короче говоря, обычно вы вносите все изменения в такую зону. используя динамические обновления (например, nsupdate
или любой другой клиент), но если вам по какой-то причине абсолютно необходим прямой контроль над файлом зоны, вы можете временно приостановить динамические обновления, используя rndc freeze
, а затем возобновить с помощью rndc thaw
). Приостановка обновлений - довольно назойливая операция (любые обновления не будут выполнены, и история изменений может быть стерта в зависимости от ixfr-from-sizes
), поэтому вам, вероятно, не следует делать это во время нормальной работы.