4.7. Внутренний DNS-сервер Samba (SAMBA_INTERNAL)
Контроллер домена предоставляет внутренний DNS-сервер, который поддерживает основные функции, необходимые для Альт Домен. Он прост в настройке и не требует дополнительного программного обеспечения или знаний о DNS. Создание домена с внутренним DNS-сервером рекомендуется для простых настроек DNS.
Внутренний DNS Samba имеет следующие недостатки:
нельзя использовать как кеширующий сервер (caching resolver);
не поддерживает рекурсивные запросы;
не поддерживает подпись транзакции с общим ключом (TSIG) (shared-key transaction signature);
не поддерживает работу с зонами-заглушками (stub zones);
не поддерживает передачу зоны DNS (zone transfers);
не поддерживает балансировку нагрузки циклического перебора между контроллерами домена (Round Robin load balancing among DC's).
Внутренний DNS-сервер может разрешать только DNS-зоны домена. Чтобы включить рекурсивные запросы других зон, следует в параметре
dns forwarder
(файл
smb.conf
) указать один или несколько IP-адресов DNS-серверов, поддерживающих рекурсивное разрешение. Например:
dns forwarder = 192.168.0.190
Samba 4.5 и более поздние версии в параметре dns forwarder
поддерживают несколько IP-адресов, разделенных пробелами. Старые версии поддерживают один IP-адрес. Обращение ко второму и последующим DNS-серверам произойдёт только в том случае, если первый не вернул никакого ответа.
Внешний DNS-сервер можно указать при создании домена.
При создании домена с внутренним DNS-сервером нужно использовать параметр --dns-backend=SAMBA_INTERNAL
или не указывать этот параметр вообще.
4.7.1. Настройка файла /etc/resolvconf.conf
Для корректного распознавания всех локальных DNS-запросов в файле
/etc/resolvconf.conf
должна присутствовать строка:
name_servers=127.0.0.1
Если этой строки в файле
/etc/resolvconf.conf
нет, то в конец этого файла следует добавить строку:
name_servers=127.0.0.1
и перезапустить сервис resolvconf:
# resolvconf -u
Если на сервере используется systemd-networkd, чтобы избежать конфликтов systemd-resolved с Samba DNS, следует отключить
DNSStubListener
:
в файле конфигурации systemd-resolved (
/etc/systemd/resolved.conf
) установить значение:
DNSStubListener=no
перезапустить службу systemd-resolved:
# systemctl restart systemd-resolved