Установка и настройка DNS-сервера BIND9

BIND (Berkeley Internet Name Domain) — открытая и наиболее распространённая реализация DNS-сервера, обеспечивающая выполнение преобразования DNS-имени в IP-адрес и наоборот.

Установка в Linux Ubuntu:

sudo apt-get install bind9

Остановка/Запуск/Перезапуск Bind9:

sudo  /etc/init.d/bind9 stop/start/restart

Чтобы использовать локальный DNS нужно прописать в /etc/resolv.conf:

nameserver 127.0.0.1

Редактируем конфигурационные файлы в директории /etc/bind/ под свои нужды.

Откроем файл конфигурации named.conf.options например в текстовом редакторе nano:

sudo nano /etc/bind/named.conf.options

Добавим вначале ACL с сетями которым будут разрешены запросы к DNS серверу:

acl localclients {
localhost;
localnets;
10.0.0.0/8;
172.16.0.0/12;
192.168.0.0/16;
};

В options укажем этот ACL, разрешив запросы:

allow-recursion { localclients; };
allow-query { localclients; };
allow-query-cache { localclients; };

Можно указать IP-адреса на которых будет работать bind9:

listen-on {
127.0.0.1;
192.168.1.1;
};

Либо можно также указать адреса которым разрешена рекурсия, чтобы DNS не обслуживал запросы всех клиентов, а только указанных (все остальные не прописанные адреса смогут получить только информацию прописанную в этом DNS):

allow-recursion { 127.0.0.1; 10.0.0.0/8; 192.168.0.0/16; 172.16.0.0/16; };

Правильность настроек можно проверить следующей командой (если она ничего не сообщила — значит все в порядке):

named-checkconf

Применяем изменения:

sudo rndc reload

или так:

sudo  /etc/init.d/bind9 restart

Проверка:

rndc status
netstat -lnp | grep :53
sudo ps -ax | grep bind

Из Windows можно проверить командой (где 192.168.1.1 — адрес bind9):

nslookup example.com 192.168.1.1

Кэш DNS сервера можно очистить командой:

sudo rndc flush

Сохранить кэш в файл (/var/cache/bind/):

sudo rndc dumpdb

Смотрите также:
Настройка логов Bind9

Подписаться на IT Blog (RU) по Email
Subscribe to IT Blog (EN) by Email

Did my article help you? How about buying me a cup of coffee as an encouragement? Buy me a coffe.

Добавить комментарий