BIND9 — DNS-сервер
Собственный DNS-сервер BIND: зоны и записи, проверка конфигурации, отладка разрешения имён.
Шпаргалка
4 команды Версия для печати-
named-checkconfпроверить синтаксис named.conf -
named-checkzone example.com /etc/bind/db.example.comпроверить зону (ПЕРЕД reload) -
sudo rndc reloadприменить (или systemctl reload named) -
dig @localhost www.example.comспросить свой сервер - не забудь увеличить serial в SOA при правке зоны!
Обзор
BIND9 — самый распространённый DNS-сервер. Поднимают для своей зоны (авторитетный
сервер) или как кэширующий резолвер. Служба named (пакет bind9); клиентскую
сторону смотри в dns-resolv.
Конфигурация
Конфиг — /etc/bind/named.conf*; файлы зон — обычно /etc/bind/db.*.
При каждом изменении зоны увеличивай serial (число в SOA) — иначе вторичные серверы и кэши не подхватят правки.
Рецепты
1Неполадки
4Сервер не отвечает на запросы
named-checkconf (нет ли ошибок), служба активна, слушает 53 (ss -tulnp), порт
открыт в firewall (53/udp и 53/tcp). Проверь, что dig @IP доходит.
Изменил зону — старые данные
Не увеличил serial в SOA или не перезагрузил (rndc reload). Плюс TTL: пока не
истёк, кэши держат старое.
SERVFAIL
Ошибка в зоне (named-checkzone), битый делегат или DNSSEC. Смотри
journalctl -u named.
Резолвит только локально
Проверь allow-query / listen-on в named.conf.options — слушает ли на нужном
адресе и пускает ли клиентов.
См. также
- dns-resolv — Как имя превращается в IP — resolv.conf, systemd-resolved, /etc/hosts, dig.
- firewall — Фильтрация трафика — простой ufw и низкоуровневый nftables.
- journalctl — Чтение журнала systemd (journald) — фильтры по службе, времени, приоритету.
Есть неточность? Сообщить об ошибке в статье