Как сбросить или понизить серийный номер, используемый в записи SOA DNS-сервера BIND?

Как сбросить или понизить серийный номер, используемый в записи SOA DNS-сервера BIND?

Я использую BIND в качестве DNS-сервера дома. Для моего Start Of Authority (SOA-запись) я всегда использую серийный номер в рекомендуемом формате

ГГГГММДД##

где ##находится счетчик изменений в этот день.

К сожалению, я по ошибке изменил серийный номер и добавил еще 1 цифру. После обновления name-daemon я больше не мог это вернуть.

Есть ли возможность сбросить серийный номер/счетчик во внутренних библиотеках BIND?

решение1

Если у вас есть доступ к оболочке всех подчиненных серверов, есть более простое решение:

Чтобы иметь возможность уменьшить серийный номер на подчиненных серверах, вы можете войти на подчиненный сервер и запустить rndc retransfer my.zone.name. Это заставит подчиненный сервер извлечь зону из главного сервера и полностью проигнорировать серийный номер.

решение2

"Внутренние библиотеки BIND" не заботятся о том, какой серийный номер. Важно только соглашение между главным сервером и подчиненными серверами. Другими словами, BIND с радостью позволит вам уменьшить серийный номер в файле зоны без жалоб. Просто подчиненные серверы больше не будут получать обновления.

Серийные номера файлов зон — это беззнаковые 32-битные целые числа, и они оборачивались вокруг наибольшего возможного 32-битного беззнакового целого числа. Поэтому есть способ уменьшить серийный номер, увеличивая его многократно, пока он не перейдет и не станет ближе к нулю. Существует максимальная величина, на которую вы можете увеличить его за один раз, поэтому вам придется делать это итеративно в несколько шагов:

  • Увеличьте серийный номер на большую величину, но не более 2147483647.
  • Подождите, пока все подчиненные серверы не подтянутся и не будут обновлены до текущей версии SOA.
  • Повторить

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

Следоватьэто РУКОВОДСТВО.

Связанный контент