Динамическое обновление DNS-сервера BIND при помощи ISC DHCP

Динамическое обновление DNS-сервера BIND при помощи ISC DHCP

2023-09-25 · 2 мин. для прочтения

Динамическое обновление DNS-сервера BIND при помощи ISC DHCP.

Содержание

1 Ключи

  • Создадим ключ:
    1tsig-keygen -a HMAC-SHA512 DHCP_UPDATER > /etc/dhcp/keys/dhcp_updater.key
    
  • Файл /etc/dhcp/keys/dhcp_updater.key будет иметь следующий вид:
    1key DHCP_UPDATER {
    2    algorithm hmac-md5;
    3    secret "EgxIOyQglf4KAUF7lgu9yA==";
    4};
    

2 Настройка DHCP

  • Настройка происходит в файле /etc/dhcp/dhcpd.conf.

  • Включим динамическое обновление:

    1ddns-updates on;
    2ddns-update-style interim;
    3ignore client-updates;
    4update-static-leases on;
    
    • Данные опции включают динамическое обновление DNS и предписывают делать это в том числе и для статических записей.
  • Подключим ключ к dhcp:

    1include "/etc/dhcp/keys/dhcp_updater.key";
    
  • Добавим зоны, которые мы обновляем:

    1zone local.zone. {
    2     primary 127.0.0.1;
    3     key DHCP_UPDATER;
    4}
    5
    6zone 0.168.192.in-addr.arpa. {
    7      primary 127.0.0.1;
    8       key DHCP_UPDATER;
    9}
    
    • Имена зон мы пишем в абсолютном формате, т. е. с точкой на конце.
    • Внутри каждой секции указываем адрес первичного DNS-сервера и ключ доступа к нему.
  • Можно увеличить время аренды адреса:

    1default-lease-time 604800;
    2max-lease-time 1814400;
    
  • Проверяем конфигурацию на ошибки:

    1dhcpd -t -cf /etc/dhcp/dhcpd.conf
    

3 Настройка DNS Bind

  • Настройка происходит в файле /etc/named.conf.
  • Ключ скопируем на хост с DNS-сервером (если это другой сервер).
  • Поместим его в файл /etc/named/keys/dhcp_updater.key.
  • Подключим ключ:
    1include "/etc/named/keys/dhcp_updater.key";
    
  • Разрешим обновление зон:
     1zone "local.zone" IN {
     2     type master;
     3     file "local.zone.db";
     4     allow-update { key DHCP_UPDATER; };
     5};
     6
     7zone "0.168.192.in-addr.arpa" IN {
     8     type master;
     9     file "192.168.0.db";
    10     allow-update { key DHCP_UPDATER; };
    11};