Установка пакета
Пакет bind9
входит в стандартный дистрибутив ОС ОН Орёл 2.12 и доступен через репозиторий ОС ОН Орёл.
Установку службы DNS BIND9 можно выполнить из графического менеджера пакетов, или из командной строки:
Command |
---|
sudo apt install bind9 |
При установке пакета bind9
будет автоматически уставновлен пакет инструментов командной строки bind9utils
. Из этих инструментов следует отметить:
- named-checkconf — инструмент проверки синтаксиса файлов конфигурации;
- named-checkzone — инструмент проверки файлов зон DNS;
- rndc — инструмент управления службой DNS.
В дополнение к пакетам bind9
и bind9utils
, рекомендуем сразу установить пакет инструментов командной строки dnsutils
, предназначенных для работы с DNS:
Command |
---|
sudo apt install dnsutils |
В составе пакета dnsutils
будут установлены следующие инструменты:
- dig - инструмент для опроса DNS-серверов и проверки их реакции
- nslookup - инструмент для проверки преобразования имен в IP-адреса
(далее в тексте используется термин "разрешение имён") - nsupdate - инструмент для динамического обновления записей DNS
Предупреждение |
---|
Многие устаревшие материалы в сети Интернет рекомендуют для работы bind создать учётную запись и группу named. |
Настройка службы
Предупреждение |
---|
После настройки службы DNS не забудьте перенастроить службу DHCP, |
Конфигурационные файлы BIND9находятся в каталоге /etc/bind.
При установке BIND9 автоматически создаются следующие конфигурационные файлы:
/etc/bind/named.conf | Основной файл конфигурации. Этот файл изменять не следует, так как он содержит в себе только сслылки на остальные конфигурационные файлы (см. ниже) |
/etc/bind/named.conf.options | Файл для глобальных настроек службы |
/etc/bind/named.conf.local | Файл для настроек зоны DNS |
/etc/bind/named.conf.default-zones | Файл конфигурации зон "по умолчанию". В частности, этом файле содержатся ссылки на автоматически созданные файлы конфигурации зоны localhost /etc/bind/db.local и /etc/bind/127.db |
Подробности о конфигурационных параметрах см. в руководстве man named.conf (5).
Получение списка корневых DNS-серверов
Информация |
---|
Данный пункт необязателен, и применим только для открытых сетей. |
Загружаем свежий список корневых DNS-серверов в файл /etc/bind/named.root:
Command |
---|
sudo wget -q -O /etc/bind/named.root http://www.internic.net/zones/named.root |
Предоставляем доступ к файлу учётной записи bind:
Command |
---|
sudo chown root:bind /etc/bind/named.root |
Дополнительно, можно установить задачу cron для автоматического обновления файла.
В файл конфигурации добавляем ссылку на файл:
Информация |
---|
// Имя из одной точки (.) предатсвляет собой корень всего пространства имён DNS namespace, |
Настройка BIND9 для работы с Samba AD
Параметры настройки BIND9 и BIND9_DLZ для использования в качестве DNS-сервера домена см. BIND9 как DNS-сервер для Samba AD
Вариант простейшей настройки "Кеширующий сервер DNS"
Если у вас уже есть настроенный и доступный DNS-сервер (собственный, или сервер провайдера), создание в локальной сети кеширующего DNS-сервера позволит без особых затрат ускорить работу с Интернет за счет ускорения разрешения имен по запросам различных сетевых служб и/или пользовательскими программами.
Для примера предположим, что у нас есть:
- сервер DNS с адресом
192.168.32.211
Для создания кеширующего dns-сервера
- раскомментируем в файле конфигурации
/etc/bind/named.conf.options
строки
Информация |
---|
// forwarders { // 0.0.0.0; // }; |
- указываем адреса используемых DNS-серверов, которым нужно передавать запросы (для примера взяты адреса DNS-серверов Google)
- и, в этом примере, отключаем авторизацию dnssec (использование dnssec будет рассмотрено позже)
Информация |
---|
forwarders { 8.8.8.8; };dnssec-validation False; |
Можно , но не обязательно, ещё добавить список интерфейсов компьютера, через которые сервис DNS должен принимать запросы:
Информация |
---|
listen-on { 127.0.0.1; |
- сохраняем файл конфигурации
- проверяем правильность конфигурации командой (если команда не выдаёт никаких сообщений - значит ошибок нет)
Command |
---|
sudo named-checkconf |
- и перезапускаем сервис
Command |
---|
sudo systemctl restart bind9 |
Проверить работоспособность и эффективность кеширующего DNS-сервера можно с помощью инструмента dig
:
Информация |
---|
|
Вариант простой настройки "Локальный сервер DNS"
Это вариант настройки собственного полноценного DNS-сервера, обеслуживающего собственную локальную сеть (собственный DNS-домен).
Создание DNS-сервера в локальной сети позволяет организовать единое пространство имён для всех сетевых служб и пользователей.
В отличие от кеширующего сервера из предыдущего примера, этот сервер самостоятельно обрабатывает запросы, относящиеся к его зоне ответственности.
Для примера, предположим, что у нас есть
- домен l
ocalnet.example.ru
- сервер DNS в этом домене с именем
dns.localnet.example.ru
и адресом192.168.32.211
- компьютер host в этом домене с именем
host.localnet.example.ru
и адресом192.168.32.96
Настройка конфигурации bind:
- на сервере DNS файл конфигурации
/etc/bind/named.conf.options
используем из предыдущего примера:
Информация |
---|
forwarders { 8.8.8.8; 8.8.4.4; }; listen-on { 127.0.0.1; 192.168.32.211; }; dnssec-validation False; |
- внесём информацию о домене в файл конфигурации
/etc/bind/named.conf.loca
l. Исходно в этом файле содержатся только комментарии. Добавляем следующие строки:
Информация |
---|
|
- создаём каталог для хранения файлов данных, и копируем в созданный каталог образцы файлов данных:
Информация |
---|
mkdir /etc/bind/zones |
- вносим изменения в файл прямой зоны /etc/bind/zones/db.localnet.example.ru:
Информация |
---|
|
- вносим измения в файл /etc/bind/zones/db.32.168.192 реверсивной зоны:
Информация |
---|
|
- проверяем созданную конфигурацию с помощью соответствующих инструментов :
Command |
---|
|
- и перезапускаем службу:
Command |
---|
|
Проверить работу сервера можно выполнив на сервере команду:
Command |
---|
dig @localhost host.localnet.example.ru |
Добавляем резервный сервер.
Как и в примере ранее, предположим, что у нас есть
- домен
localnet.example.ru
- сервер DNS в этом домене с именем
dns.localnet.example.ru
и адресом192.168.32.211
- компьютер host в этом домене с именем
host.localnet.example.ru
и адресом192.168.32.96
- и добавляется резервный сервер DNS
dns2.localnet.example.ru
и адресом192.168.32.212
Для добавления резервного сервера
- на основном сервере DNS внесём информацию о резервном сервере в файл конфигурации
/etc/bind/named.conf.loca
l, и перезапустим сервис. Добавляемые строки выделены:
Информация |
---|
}; |
- на резервном сервере DNS файл конфигурации
/etc/bind/named.conf.options
используем из предыдущего примера, но с одним отличием - резервный сервер слушает адрес 192.168.32.212:
Информация |
---|
forwarders { 8.8.8.8; 8.8.4.4; }; listen-on { 127.0.0.1; 192.168.32.212; # изменён адрес интерфейса }; |
- вносим изменения в файл конфигурации
/etc/bind/named.conf.loca
l.
Информация |
---|
|
- проверяем корректность конфигурации и перезапускаем сервис
Command |
---|
|
Добавляем служебные записи (SRV-записи).
Служебная запись (SRV-запись) — стандарт в DNS, определяющий имя хоста и номер порта серверов для определённых служб. Определяется в RFC 2782.
Могут использоваться в различных протоколах, например, в Kerberos.
SRV-записи располагаются в файлах зоны (в примере выше - это файл /etc/bind/zones/db.localnet.example.ru).
Формат записи:
Информация |
---|
_service._proto.name TTL class SRV priority weight port target |
Где:
- service - символьное имя сервиса;
- proto - транспортный протокол используемый сервисом, как правило _tcp или _udp;
- name - доменное имя, для которого эта запись действует;
- TTL - стандарт DNS, время жизни;
- class- стандарт DNS, поле класса (это всегда IN);
- priority - приоритет целевого хоста, более низкое значение означает более предпочтительный;
- weight - относительный вес для записей с одинаковым приоритетом;
- port - Порт TCP или UDP, на котором работает сервис;.
- target - канонические имя машины, предоставляющей сервис.
Примеры служебных записей (Kerberos и NTP)
Информация |
---|
$ORIGIN samdom.example.ru. 2 ; Serial |
Включение аутентификации по ключам.
В работе
Настройка клиентов
В работе.