DNS настройка · 2 min read · Oct 03, 2025

Решение доменов внутренне и внешне с помощью Bind9 и кэшируемого DNS-сервера

Решение доменов внутренне и внешне с помощью Bind9 и кэшируемого DNS-сервера

Автор: Найяр Ахмад

Контакт: nayyares AT gmail DOT com

Посвящение: Моим питомцам, Боби и Тави.

Предисловие:

Иногда нам требуется разрешать наши внутренние домены на локальном DNS-сервере и внешние (интернет) домены с DNS-сервера провайдера. Существует несколько решений этой проблемы, но в этом руководстве мы собираемся решить ее, настроив комбинацию кэшируемого DNS-сервера и BIND 9.

Теория, стоящая за кэшируемым DNS-сервером и BIND 9:

Кэшируемый DNS-сервер — это тип DNS-сервера, который разрешает веб-адреса (доменные имена) из своего следующего или основного DNS и сохраняет эти записи в кэше. После первого разрешения он будет разрешать DNS-запросы локально, пока не истечет его TTL (время жизни).

BIND 9 используется для разрешения запросов на разрешение доменов из своей базы данных, так как он является SOA (начало полномочий).

Теперь ясно, что в нашей настройке кэшируемый DNS-сервер будет использоваться для разрешения доменных имен внешне (в интернете), в то время как BIND 9 будет использоваться для разрешения доменных имен из нашей локальной сети (внутри).

Теперь у нас в руках кэшируемый DNS-сервер и молоток BIND 9, давайте начнем его настраивать. :)

1. Установка кэшируемого DNS-сервера/BIND 9:

Самый простой способ установить все необходимые пакеты для этого руководства:

$ yum install caching-nameserver bind*

то же самое для систем на базе apt, но если у вас не настроены yum или apt, вы можете установить следующие пакеты с ваших дистрибутивных CD, я не упоминаю версии пакетов, так как это зависит от вашего дистрибутива, т.е.

Необходимые пакеты: bind, bind-chroot, bind-utils, bind-lib, caching-nameserver

После установки этих пакетов нам нужно проверить, установлены ли все необходимые пакеты. Для этого используйте следующую команду.

$ rpm -qa bind*
$ rpm -qa caching-nameserver

Вышеуказанные команды работают нормально, только если вы работаете на RPM-ориентированном дистрибутиве Linux, в противном случае проверьте в соответствии с методом вашего дистрибутива. Теперь, если вы видите все упомянутые пакеты, это значит, что вы готовы использовать молоток BIND на вашем DNS-сервере. :)

2. Редактирование named.conf:

Прежде всего, нам нужно зарегистрировать наше доменное имя в BIND, для этого мы отредактируем named.conf, откройте его и введите следующие строки.

$ vi /etc/named.conf

Теперь введите следующие строки, т.е.

zone "cbtcandy.org" IN {  
        type master;  
        file "cbtcandy.org.zone";  
        allow-update { none; };  
};

Вы должны заменить cbtcandy.org на ваше собственное доменное имя.

3. Запуск демона Bind:

Вы можете запустить демон/сервис bind, чтобы проверить, правильно ли написан ваш named.conf, теперь вы можете сделать это разными способами, я приведу два из них:

Для систем типа RedHat, CentOS, Fedora введите следующую команду,

$ service named start 

Для систем типа Suse, Debian,

$ /etc/rc.d/rc.bind start 

Теперь, если демон Bind успешно запущен, это значит, что мы на полпути к завершению.

4. Настройка автозапуска демона Bind при загрузке:

Следующая команда будет работать идеально на RedHat, CentOS, Fedora, но я не уверен насчет других дистрибутивов, поэтому лучше найдите ее эквивалент.

$ chkconfig named on --level 35 
Share: X/Twitter LinkedIn

Get new posts in your inbox

No spam. Unsubscribe anytime.