Ставим не обходимы пакеты:
sudo apt update
sudo apt install -y bind9 bind9utils bind9-doc dnsutils
После установки всех пакетов перейдем к части конфигурации. Все файлы конфигурации для BIND находятся в папке ‘ /etc/bind ‘.
Одним из важных файлов конфигурации для bind является « /etc/bind/named.conf.options », в этом файле мы можем установить следующие параметры:
Разрешить запросы к вашему DNS из вашей частной сети (как следует из названия, только системы из вашей частной сети могут запрашивать DNS-сервер для преобразования имени в IP-адрес и наоборот)
Разрешить рекурсивный запрос
forwarders — (DNS-запрос например на внешний сайт, будет перенаправлен на указанные DNS сервера)
Переходим в папку с настройками:
sudo cd /etc/bind
sudo nano named.conf.options
Вставляем следующие параметры:
acl internal-network {
192.168.0.0/16;
10.100.0.0/16;
};
options {
directory «/var/cache/bind»;
allow-query { localhost; internal-network; };
allow-transfer { localhost; };
forwarders {
77.88.8.8;
77.88.8.1;
};
recursion yes;
dnssec-validation auto;
listen-on-v6 { any; };
};
Следующий важный файл конфигурации — « /etc/bind/named.conf.local », в этом файле определяются файлы зоны для нашего домена. Добавив в конфиг следующие записи:
cd /etc/bind
sudo nano named.conf.local
Вставляем строки:
zone «ikhodin.local» IN {
type master;
file «/etc/bind/forward.ikhodin.local»;
allow-update { none; };
};
zone «103.100.10.in-addr.arpa» IN {
type master;
file «/etc/bind/reverse.ikhodin.local»;
allow-update { none; };
};
Далее создадим указанные файлы зоны прямого просмотра и зоны обратного просмотра.
Сначала создайте файл зоны прямого просмотра.
Примеры файлов зоны- (db.local), уже есть в папке «/etc/bind» . Можно использовать этот пример из файла зоны.
sudo cp db.local forward.ikhodin.local
Открываем файл и добавляем строки:
sudo nano forward.ikhodin.local
; BIND data file for local loopback interface
;
$TTL 86400
@ IN SOA ns1.ikhodin.local. root.ns1.ikhodin.local. (
2025032610 ; Serial
3600 ; Refresh
1800 ; Retry
2419200 ; Expire
86400 ) ; Negative Cache TTL
;Name Server Information
@ IN NS ns1.ikhodin.local.
;IP address of Your Domain Name Server(DNS)
ns1 IN A 10.100.103.10
; @ IN AAAA ::1
; Mail Server MX (Mail exchanger) Record
ikhodin.local. IN MX 10 mail.ikhodin.local.
; A Record for Host names
www IN A 10.100.103.11
mail IN A 10.100.103.15
;CNAME Record
ftp IN CNAME www.ikhodin.local.
Мы добавили информацию о нашем DNS-сервере и также добавили А-записи для нескольких серверов (www, mail), также добавили МХ-запись для почтового сервера и запись CNAME для ftp-сервера.
Далее создаем файл зоны обратного просмотра в том же месте, пример файла зоны обратного просмотра (db.127) находится в этой же папке « /etc/bind ». Как и ранее можно скопировать пример из него:
sudo cp db.127 reverse.ikhodin.local
Создаем файл:
sudo nano reverse.ikhodin.local
Добавляем следующие строки:
; BIND reverse data file for local loopback interface
;
$TTL 86400
@ IN SOA ns1.ikhodin.local. root.ns1.ikhodin.local. (
2025032615 ; Serial
3600 ; Refresh
1800 ; Retry
2419200 ; Expire
86400 ) ; Negative Cache TTL
;Your Name Server Info;
@ IN NS ns1.ikhodin.local.
ns1 IN A 10.100.103.10
;Reverse Lookup for Your DNS Server
10 IN PTR ns1.ikhodin.local.
;PTR Record IP address to HostName
11 IN PTR www.ikhodin.local.
15 IN PTR mail.ikhodin.local.
Нужно обратить внимание на параметр: (2025032615 ; Serial) в примере из db.127 указано значение 2, в моем случае указана дата с дополнительным значением.
Обновите следующий параметр в файле « /etc/default/named », чтобы служба DNS начала прослушивание IPv4
OPTIONS=»-u bind -4″
Проверяем запущена ли служба, перезапускаем ее:
sudo systemctl status named
sudo systemctl restart named
В случае если служба не запустилась, запускаем и включаем службу BIND:
sudo systemctl start named
sudo systemctl enable named
Для проверки синтаксиса файлов зоны прямого и обратного просмотра используйте команду «named-checkzone» , пример показан ниже:
sudo named-checkzone ikhodin.local /etc/bind/forward.ikhodin.local
zone ikhodin.local/IN: loaded serial 2025032610
OK
sudo named-checkzone ikhodin.local /etc/bind/reverse.ikhodin.local
zone ikhodin.local/IN: loaded serial 2025032615
OK
далее правим файл /etc/resolv.conf
sudo nano /etc/resolv.conf
search ikhodin.local
nameserver 10.100.103.10