Для начала установите программное обеспечение Bind9, наиболее популярный DNS-сервер на Ubuntu. Выполните команду:
sudo apt update
sudo apt install bind9 bind9utils bind9-doc
Настройка файла конфигурации
Основной файл конфигурации расположен по пути /etc/bind/named.conf.options. Откройте его командой:
sudo nano /etc/bind/named.conf.options
Добавьте или раскомментируйте строчки, чтобы настроить параметры DNS-запросов:
options {
directory "/var/cache/bind";
forwarders {
8.8.8.8;
8.8.4.4;
};
listen-on { any; };
allow-query { any; };
recursion yes;
};
Выберите DNS-серверы-ретрансляторы, заменив IP-адреса в блоке forwarders по желанию.
Создание зоны DNS
Для добавления собственной зоны создайте файл с конфигурацией в /etc/bind/named.conf.local. Например, для зоны example.com добавьте:
zone "example.com" {
type master;
file "/etc/bind/db.example.com";
};
Создание файла зоны
Создайте файл db.example.com по пути /etc/bind/. Используйте следующую структуру:
$TTL 604800
@ IN SOA ns1.example.com. admin.example.com. (
2024042701 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS ns1.example.com.
@ IN A 192.168.1.10
ns1 IN A 192.168.1.10
www IN A 192.168.1.20
Замените IP-адреса и имена под свои нужды.
Проверка конфигурации и перезапуск сервиса
- Проверьте синтаксис командой:
- При отсутствии ошибок перезапустите DNS-сервер:
- Активируйте сервис для автоматического запуска при загрузке:
sudo named-checkconf
sudo named-checkzone example.com /etc/bind/db.example.com
sudo systemctl restart bind9
sudo systemctl enable bind9
Проверка работы сервера
Используйте команду dig для теста, например:
dig @127.0.0.1 www.example.com
Если получен ответ с правильным IP, настройки выполнены успешно.
