Назад | Перейти на главную страницу

Экспорт данных Bind-DLZ в традиционный named.conf?

Я хочу преобразовать настройку на основе Bind-DLZ в настройку на основе PowerDNS. Для этого я хотел бы использовать инструмент zone2sql, поставляемый с PowerDNS. К сожалению, этот инструмент пропускает прямо через определенную зону DLZ в моем named.conf. Я искал сценарий, который сбрасывает базу данных DLZ в традиционные файлы DNS и named.conf это ссылается на них, но не повезло.

Такой инструмент существует? Если да, не могли бы вы связать меня с ним?

Самый простой способ извлечь информацию DNS из базы данных Bind-DLZ - использовать AXFR запрос для каждой «зоны» в базе данных.

Во-первых, определите зоны, хранящиеся в вашей базе данных, подключившись к ней с помощью того клиента, который подходит для вашего типа базы данных (например, mysql) и выдачи выписки:

SELECT DISTINCT zone FROM dns_records;

Где dns_records table - это таблица, в которой хранится ваша информация DNS.

Во-вторых, убедитесь, что сервер привязки разрешает запросы на передачу от хоста, на котором вы будете выполнять извлечение. Отредактируйте свой named.conf и соответствующим образом настройте блок параметров (затем перезапустите Bind):

options {
  # Allow host 192.168.1.5 to issue AXFR queries to this server
  allow-transfer { 192.168.1.5; };
};

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

$ dig AXFR @your-dns-server.example.com a.zone.com > a.zone.com.zonefile

Где «a.zone.com» - это зона из списка (например, «example.com»), а «a.zone.com.zonefile» - это файл, который будет создан с записями зоны.

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