1 просмотров
Рейтинг статьи
1 звезда2 звезды3 звезды4 звезды5 звезд
Загрузка...

Как запустить или перезапустить BIND DNS сервис (Named)

Содержание

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

BIND – наиболее распространенное open-source приложение, в котором реализованы протоколы DNS, предоставляющие возможность преобразования доменных имен в IP-адреса и наоборот.

Данная статья представляет собой руководство по быстрой настройке DNS-сервера в Linux при помощи BIND. Мы не будем подробно разбирать, что такое система DNS и как она работает, а сосредоточимся на примере настройки своей зоны и файла конфигурации для домена/узла с поддержкой сервисов www и электронной почты.

В нашем примере мы будем использовать следующие параметры:
IP-адрес, на котором будет установлен сервер имен: 172.31.0.122
имя домена/узла: itproffi.ru
авторитативные сервера имен для зоны itproffi.ru: ns1.itproffi.ru (172.31.1.10) и ns2. itproffi.ru (172.31.1.11)
службы www и электронной почты для itproffi.ru будут использовать адрес 172.31.1.10

Установка сервера bind

Установка bind очень проста – нужно воспользоваться менеджером пакетов. В Debian и Ubuntu выполните следующую команду:

В CentOS или Fedora:

Пакет dnsutils необязателен для запуска сервера bind, но для тестирования конфигурации мы будем пользоваться командой dig из этого пакета.

Создание файла зоны DNS

Дальнейшие примеры будут для Ubuntu/Debian, но также подходят и для Centos/RedHat, только директория с настройками зон в CentOS будет находиться в /etc/named/ , а основной файл конфигурации /etc/named.conf . Для начала нам потребуется создать новый файл зоны для домена itproffi.ru. Перейдите в директорию /etc/bind/ . создайте в ней поддиректорию zones/master/ и перейдите в нее, выполнив следующую последовательность команд:

Директория /etc/bind/zones/master будет содержать файл зоны для домена itproffi.ru. При желании можно использовать другую директорию. Файл зоны db.itproffi.ru будет содержать запись DNS, которая поможет серверу имен установить соответствие полного доменного имени IP-адресу. Создайте этот файл со следующим содержимым:

Рассмотрим ключевые строки этого файла:

  • Запись SOA: авторитативный сервер имен для itproffi.ru – это ns1.itproffi.ru, адрес ответственного за зону DNS администратора – admin@itproffi.ru
  • Записи NS: два сервера имен для зоны itproffi.ru – ns[1,2].itproffi.ru
  • Запись MX: почтовый сервер для itproffi.ru. Число 10 означает уровень приоритета
  • Записи A: A означает «адрес» (address). Другими словами, ns1 в зоне itproffi.ru будет иметь адрес 172.31.1.10
  • Запись CNAME (Canonical Name – каноническое имя): привязывает одно доменное имя к другому (каноническому), например, устанавливает соответствие mail.itproffi.ru и itproffi.ru.

Настройка обратной зоны

На данном этапе DNS-сервер bind может выдать IP-адрес, связанный с узлом itproffi.ru. Теперь нам нужно научить наш сервер имен обратному процессу, то есть устанавливать соответствие имени IP-адресу. Для этого создадим еще один файл db.172.31.1 со следующим содержимым:

Запись PTR: DNS-запись, используемая для определения соответствия IP-адреса имени узла.

Настройка файла конфигурации bind

На данный момент у нас должно быть два файла:

Теперь требуется вставить имена обоих файлов зоны в файл конфигурации bind /etc/bind/named.conf.local . Для этого добавьте в файл следующие строки:

Последний момент перед проверкой конфигурации – внести в файл named.conf.options IP-адрес стабильного DNS-сервера. Он будет использоваться, если локальный DNS-сервер не будет знать ответ на запрос разрешения имени. Часто этот адрес предоставляется интернет-провайдером, но если вы поклонник Google, можно указать адрес 8.8.8.8 или 8.8.4.4.

Замените следующий блок текста в файле named.conf.options:

на блок текста с адресом стабильного DNS-сервера

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

А лучше, для безопасности вместо any пропишите ваши сети с которых разрешено подключение

Если этого не сделать, то при попытке обращения к серверу с другого компьютера вы получите ошибку

Проверка файлов зоны и конфигурации

Прежде чем попытаться запустить сервер имен с новой зоной и конфигурацией, можно воспользоваться некоторыми инструментами, чтобы проверить, что конфигурация корректна и не содержит ошибок.

Для проверки файлов конфигурации выполните следующую команду:

С этой командой работает простое правило: отсутствие результата – это хороший результат. Если команда ничего не возвращает, значит ошибок в ваших файлах конфигурации не обнаружено.

Для проверки файлов зоны DNS можно воспользоваться командой named-checkzone:

Проверка обратной зоны

Запуск и перезапуск сервера bind

Теперь мы можем запускать сервер bind:

Если сервер уже был запущен, его можно перезапустить командой restart:

Для того что бы перечитать конфигурацию не перезапуская сервер, используйте команду

Тестирование сервера bind

Для тестирования новой конфигурации сервера имен bind нам пригодится команда dig из пакета dnsutils. Эту команду можно запустить на любом компьютере с сетевым доступом к вашему DNS-серверу, но лучше всего начать тестирование с локального узла. В рассматриваемом нами примере IP-адрес сервера имен 172.31.0.122. Сначала проверим прямое разрешение имени (получение IP-адреса по доменному имени):

dig @172.31.0.122 www.itproffi.ru

Теперь проверим обратную зону:

dig @172.31.0.122 -x 172.31.1.10

Если вы получили аналогичные результаты, то зона DNS настроена правильно. Вместо команды dig для тестирования можно также использовать команду nslookup.

nslookup 172.31.1.10 172.31.0.122

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Очистка и перезагрузка кеша DNS в Windows

Ошибка DNS при открытии страниц в браузере — довольна частая проблема. Решить её можно с помощью нескольких команд в терминале.

Очистка кеша DNS

Откройте командную строку с правами администратора:

  1. Нажмите «Пуск».
  2. Введите «Командная строка» в поле поиска.
  3. Щелкните правой кнопкой мыши на ярлыке командной строки в результатах.
  4. Выберите команду «Запуск от имени администратора».

В командной строке введите следующую команду и нажмите «Ввод»:

Эта команда работает во всех версиях Windows, включая Windows 10, 8, 7, Vista и XP.

Выполнение этой команды обычно должно исправить любые проблемы с DNS, которые у вас есть. Однако, некоторые приложения могут иметь свой собственный кеш DNS, который необходимо очистить, если у вас все еще возникают проблемы. Например, Firefox имеет свой собственный внутренний DNS-кеш, поэтому вам может понадобиться закрыть и снова открыть его или даже очистить настройки браузера, если вы столкнулись с проблемами в этом браузере.

Читать еще:  Смотрим информацию о системе в Linux (Ubuntu, CentOS, Fedora)

Перезапуск службы DNS

В старых версиях Windows вы также можете попробовать перезапустить службу DNS-клиента, которая обрабатывает кеширование DNS. Это невозможно в Windows 10 и 8.

Если вы используете старые версии Windows, то вы можете сделать это прямо из окна командной строки администратора, которое у вас уже открыто. Просто запустите следующие команды:

Если у вас возникли проблемы и вы почувствуете необходимость перезапуска этой службы в Windows 10, то вы всегда можете попробовать перезагрузить компьютер. Это перезапустит службу DNS-клиента и все остальные части программного обеспечения на вашем компьютере.

Спасибо, что читаете! Подписывайтесь на мой канал в Telegram и Яндекс.Дзен. Только там последние обновления блога и новости мира информационных технологий. Также, читайте меня в социальных сетях: Facebook, Twitter, VK, OK.

Респект за пост! Спасибо за работу!

Хотите больше постов? Узнавать новости технологий? Читать обзоры на гаджеты? Для всего этого, а также для продвижения сайта, покупки нового дизайна и оплаты хостинга, мне необходима помощь от вас, преданные и благодарные читатели. Подробнее о донатах читайте на специальной странице.

Спасибо! Все собранные средства будут пущены на развитие сайта. Поддержка проекта является подарком владельцу сайта.

2.1 Настройка DNS сервера bind

О сервере

В состав репозитория РЕД ОС включен DNS сервер bind, поддерживающий стандарты RFC 1034,1035, 2136. Поддерживает реализацию хост-систем на базе стека протоколов Internet, описанных в RFC 1123. Поддерживает механизм инкрементального переноса зон IXFR, описанный в RFC 1995 и механизм извещения ведомых серверов NOTIFY, RFC 1996.

Подготовка сервера

Устанавливаем все обновления:

Устанавливаем утилиту для синхронизации времени, отключаем cronyd и запускаем ntpd

Настраиваем временную зону:

* в данном примере выбрано московское время.

И синхронизируем время с внешним сервером:

Установка и запуск BIND

Устанавливаем DNS-сервер следующей командой:

Запускаем сервис имен:

И проверяем, что он работает корректно:

Базовая настройка DNS-сервера

Открываем на редактирование конфигурационный файл bind:

и редактируем следующее в блоке options:

* 192.168.0.1 — IP-адрес нашего DNS-сервера, на котором он будет принимать запросы;

allow-query разрешает выполнять запросы всем, но из соображений безопасности можно ограничить доступ для конкретной сети, например, вместо any написать 10.10.1.0/24.

listen-on-v6 port 53 присвоим значение none, тем самым отключив ipv6

forward с параметром first указывает, DNS-серверу пытаться разрешать имена с помощью DNS-серверов, указанных в параметре forwarders, и лишь в случае, если разрешить имя с помощью данных серверов не удалось, то будет осуществлять попытки разрешения имени самостоятельно.

forwarders перенаправляем запросы, которые сами не резолвим, на днс сервер гугла.

Создание локальных зон DNS.

Создайте папку с мастер зонами

Прямая DNS зона.

Создайте прямую DNS зону.

Пример её содержимого с описанием ниже.

Рассмотрим подробнее написанное:
$TTL 3600 — Time to live время жизни, по умолчанию 1 день. По достижении установленного времени, кеширующий сервер запрашивает DNS сервер, содержащий доменную зону, информацию о зоне. И при необходимости обновляет записи.
example.org IN SOA ns01.example.org. root.example.org. зона обслуживания, адрес корневого сервера для зоны, акаунт её админа.
1; Serial -ее серийный номер DNS записи.
600; Refresh-указывает подчиненным DNS серверам как часто им обращаться, для поиска изменений к master серверу.
3600; Retry — говорит о том, сколько Slave сервер должен подождать, прежде чем повторить попытку.
1w; Expire — Максимальный срок жизни записей, после которой они потеряют актуальность (1 неделя)
300; Minimum TTL -минимальный срок жизни записи 5 мин.
NS ns01.example.org.-NS сервер который обслуживает эту зону
NS ns02.example.org.-NS сервер который обслуживает эту зону
NS ns03.example.org.-NS сервер который обслуживает эту зону
A 192.168.10.20 -если требуется попасть по адресу example.org, то клиенту будет выдан этот IP
ns01 A 192.168.10.50 — Записи для поиска наших NS серверов
ns02 A 192.168.10.60
ns03 A 192.168.10.70
test A 192.168.10.12 -Если клиент запрашивает адрес test.example.org, DNS выдаст ip 192.168.10.12?

Назначьте владельца и права.

В конфигурационный файл named.conf добавьте следующее:

* где exapmle.org — имя зоны, которую будет обслуживать наш DNS-сервер. Это и есть домен, для которого bind будет хранить записи. Должен совпадать по имени с файлом зоны в папке master.

Описание опций настройки зоны:

type тип зоны (в нашем случае первичная — значит master). Другие варианты — slave, stub, forward.

file Путь к файлу с записями зоны. В данном примере указан относительный путь — то есть файл находится по пути master/test.local, который начинается относительно рабочей директории (по умолчанию — /var/named/). Таким образом, полный путь до файла — /var/named/master/test.local.

Для каждой зоны создайте свой блок zone.

Чтобы настройки применились, необходимо перезапустить службу.

Для проверки работоспособности сервера с другого компьютера сети (например, на Windows) выполняем команду:

* данной командой мы пытаемся узнать IP-адреса сайта rgu.avo.ru через сервер 192.168.0.1.

Должно получиться, примерно, следующее:

Создание обратной зоны

В конфигурационный файл named.conf добавьте следующее:

Создайте обратную DNS зону.

Пример её содержимого с описанием ниже.

Чтобы настройки применились, необходимо перезапустить службу.

Логирование Bind

Способ 1

По умолчанию, сервер Bind хранит логи в файле

Для его непрерывного просмотра вводим следующую команду:

Степень детализации логов можно настроить в конфигурационном файле:

* где file — путь к log-файлу; severity — уровень чувствительности к возникающим событиям. Возможны следующие варианты для severity:

  • critical — критические ошибки.
  • error — ошибки и выше (critical).
  • warning — предупреждения и выше. Предупреждения не говорят о наличии проблем в работе сервиса, однако это такие событтия, которые могут привести с ошибкам, поэтому не стоит их игнорировать.
  • notice — уведомления и выше.
  • info — информация.
  • debug — отладка (подробный лог).
  • dynamic — тот же debug

Способ 2

Создайте каталог для логов

В разделе logging задаются 2 параметра channel (можно и больше двух — на ваше усмотрение), эти параметры дословно можно назвать «канал» записи. Каждый канал определяет имя канала и настройки параметров записи (что записывать, а что — нет и куда писать). Директива category задает какую категорию сообщений в какой канал отправлять. Исходя из этого, мы имеем: запись стандартной информации в канал misc, а приходящие запросы посылаются в канал query. При этом, если файлы журнала достигают 4Мб (size 4m), он переименовывается добавлением к имени .1 и начинается запись в новый журнал, числа в конце других журналов увеличиваются. Журналы с номером, более указанного в version (в нашем случае 4) удаляются. Параметры print* определяют заносить ли в журнал время появления, важность и категорию информации. Более подробно про настройки раздела logging можно почитать в man (5) named.conf.

Добавьте конфигурацию логирования в файл /etc/named.conf

Проверка работоспособности

Для проверки работоспособности и правильной конфигурации DNS сервера, нужно сделать к нему несколько запросов. Для этого можно воспользоваться консольными утилитами ping, dig или nslookup.

Утилита пинг, при указании доменного имени, резолвит его с помощью DNS. Если пинг к хосту, указанному в DNS выполняется, то A запись данного хоста корректна.

С помощью dig или nslookup можно проверить обратные записи или иные специфические записи DNS сервера. Например:

# dig SRV _ldap._tcp.ad.test

Сделает запрос SRV записи на сервере в домене ad.test. Должен вывести ip адрес хоста с LDAP сервисом.

Запрос должен вывести хостнейм для введенного ip. Тем самым проверив обратную (PTR) запись.

Если вы нашли ошибку, выделите текст и нажмите Ctrl+Enter.

Как настроить Частные DNS-сервера с BIND на Ubuntu 16.04

Главное меню » Операционная система Ubuntu » Как настроить Частные DNS-сервера с BIND на Ubuntu 16.04

Требования:

  • Два сервера (NS1 и NS2), подключенный к частной сети
  • В этой статье мы будем использовать подсети 10.35.0.0/16
  • DNS-клиенты, которые будут подключаться к вашим DNS-серверам

1. Обновите оба сервера

Начните с обновления пакетов на обоих серверах:

Читать еще:  Неизвестная ошибка 14 при восстановлении прошивки или обновлении iPhone 4S, 5S, 6

2. Установите BIND на обоих серверах

3. Установите BIND в режим IPv4

Установка BIND в режиме IPv4, мы сделаем это путем редактирования файла “/etc/default/bind9” и добавление «-4» к переменной OPTIONS:

Отредактированный файл должен выглядеть следующим образом:

Теперь давайте настроим ns1, как наш основной сервер DNS.

4. Настройка первичного сервера DNS

Отредактируйте файл named.conf.options:

В верхней части блока параметров добавьте новый блок с именем trust. Этот список позволит клиентам, указанным в нем, отправлять рекурсивные DNS-запросы на наш основной сервер:

5. Включить рекурсивные запросы на нашем ns1 сервере, и прослушайте сервер в нашей частной сети

Затем мы добавим несколько параметров конфигурации для включения рекурсивных запросов на нашем ns1 сервере и возможность сервера прослушивать нашу частную сеть, добавьте параметры конфигурации в каталоге “/var/cache/bind”, как в примере ниже:

Если директива “listen-on-v6” присутствует в файле named.conf.options, удалите ее, так как мы хотим BIND слушать только на IPv4.
Теперь на ns1 откройте файл named.conf.local для редактирования:

Здесь мы собираемся добавить zone:

Наша частная подсеть 10.35.0.0/16, поэтому мы добавим обратную zone со следующими строками:

Если серверы находятся в нескольких частных подсетей на том же физическом месте, необходимо указать зону и создать отдельный файл zone для каждой подсети.

6. Создание файла обратной зоны

Теперь мы создадим каталог, где мы будем хранить наши файлы зоны:

Мы будем использовать пример файла db.local, чтобы сделать наш прямой файл zone, давайте скопируем файл первым:

Теперь отредактируйте файл зоны, мы просто скопировали:

Это должно выглядеть как на примере ниже:

Теперь давайте отредактируем запись SOA. Заменим Localhost на доменное имя вашего Ns1 сервера, а затем заменим «root.localhost» на «admin.test.example.ru». Каждый раз, когда вы редактируете файл zone, увеличьте серийное значение перед перезапуском имени иначе привязка не будет применять изменение к zone, мы увеличим значение до “3”, это должно выглядеть примерно так:

Затем удалите последние три записи, помеченные как «delete this» после записи SOA.

Добавьте записи серверов имен в конце файла:

После этого добавить записи для хостов, которые должны находиться в этой зоне. Это означает, что любой сервер, имя которого мы хотим закончить на «.test.example.ru»:

Файл db.test.example.ru должен выглядеть следующим образом:

7. Создание файла обратной зоны

Зададим записи PTR для обратных DNS-запросов в файлах обратных зон. Когда сервер DNS получает запрос подстановок PTR для примера для IP: «10.35.55.154», он будет проверять обратный файл зоны для извлечения полного доменного имени IP-адреса, в нашем случае это будет «host1.test.example.ru».

Мы создадим обратную файл zone для каждой обратной зоны, указанной в файле named.conf.local, который мы создали для ns1. Мы будем использовать файл зоны db.127 как образец для того чтобы создать наш обратный файл zone:

Отредактируйте файл обратной зоны, чтобы он соответствовал обратной зоне, определенной в named.conf.local:

Исходный файл должен выглядеть следующим образом:

Вы должны изменить запись SOA и увеличивать серийное значение. Это должно выглядеть примерно так:

Затем удалите последние три записи, помеченные «delete this» после записи SOA.

Добавьте записи серверов имен в конце файла:

Теперь добавить ptr-записи для всех узлов, которые находятся в одной подсети в файл зоны, который вы создали. Он состоит из наших хостов, которые находятся в подсети 10.20.0.0/16. В первой колонке мы изменим порядок последние два октета IP-адреса узла, которые мы хотим добавить:

Сохранить и выйти из обратного файла зоны.

Файл обратной zone «/etc/bind/zones/db.10.35» должен выглядеть следующим образом:

8. Проверьте файлы конфигурации

Используйте следующую команду, чтобы проверить синтаксис конфигурации всех файлов named.conf, которые мы сконфигурировали:

Если файлы конфигурации не имеют каких-либо проблем синтаксиса, вывод не будет содержать каких-либо сообщений об ошибках. Однако, если у вас есть проблемы с файлами конфигурации, сравните параметры в раздела «Настройка основного DNS-сервера» с файлами, если у вас есть ошибки, сделайте правильные корректировки, и вы можете попробовать еще раз, выполнив команду named-checkconf.

named-checkconf может быть использован для проверки правильности конфигурации ваших файлов зон. Вы можете использовать следующую команду, чтобы проверить зону напрямую «test.example.ru»:

И если вы хотите проверить конфигурацию обратной zone, выполните следующую команду:

После того, как вы правильно настроили файлы конфигурации и zone, перезапустите службу BIND:

9. Настройка вторичного DNS-сервера

Настройка вторичного сервера DNS всегда хорошая идея, так как он будет служить в качестве перехода на другой ресурс и будет отвечать на запросы, если первичный сервер не отвечает на запросы.

На ns2, отредактировать файл named.conf.options:

В верхней части файла, добавьте ACL с частными IP-адресами для всех ваших доверенных серверов:

Так же, как в файле named.conf.options для ns2, добавьте следующие строки в директиве каталог “/var/cache/bind”:

Сохраните и закройте файл.

Теперь откройте файл named.conf.local для редактирования:

Теперь мы должны указать ведомые зону, соответствующие мастер-зоне на сервере DNS ns1. Директива мастера должна быть установлена на частный IP-адрес DNS Ns1 сервер:

Теперь сохраните и закройте файл.

Используйте следующую команду, чтобы проверить синтаксис конфигурационных файлов:

Затем перезапустить службу BIND:

10. Конфигурирование DNS-клиентов

Теперь настроим хосты в нашей 10.35.0.0/16 подсети использовать NS1 и NS2 сервера в качестве основных и вторичных серверов DNS. Это в значительной степени зависит от операционной системы, но для большинства дистрибутивов Linux настройки, которые должны быть изменены постоянно находиться в файле /etc/resolv.conf.

Как правило, на распределениях Ubuntu, Debian и CentOS просто отредактируйте файл /etc/resolv.conf, выполните следующую команду как root:

Затем замените существующие сервера имен на:

Теперь сохраните и закройте файл и клиент должен быть настроен на использование сервера имен NS1 и NS2.

Затем проверьте, как ваши клиенты могут отправлять запросы к DNS-серверам, которые вы только что настроили:

Вывод этой команды должен быть следующим:

Вы также можете проверить обратный поиск, запрашивая DNS-сервер с IP-адресом хоста:

Вывод должен выглядеть следующим образом:

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

Добавление нового хоста в DNS-сервера

Если вам нужно добавить хост в DNS-сервера, просто выполните следующие действия:

На сервере ns1 имен выполните следующие действия:

  • Создание записи A в файле передней зоны для хоста и увеличение значения последовательных переменных.
  • Создание записи PTR в обратном файле зоны для хоста и увеличение значения последовательных переменных.
  • Добавить частного IP-адреса хоста в доверенном ACL в named.conf.options.
  • Обновить BIND с помощью следующей команды: sudo service bind9 reload

На сервере ns2 имен выполните следующие действия:

  • Добавить частный IP-адрес хоста в доверенном ACL в named.conf.options.
  • Обновить BIND с помощью следующей команды: sudo service bind9 reload

На хост-компьютере выполните следующие действия:

  • Отредактируйте /etc/resolv.conf и измените сервер имен для вашего DNS-серверов.
  • Используйте nslookup, чтобы проверить, что хост запрашивает DNS-серверы.

Удаление существующего хоста из ваших DNS-серверов

Если вы хотите удалить узел из ваших DNS-серверов, просто отмените шаги, описанные выше.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

2.1 Настройка DNS сервера bind

О сервере

В состав репозитория РЕД ОС включен DNS сервер bind, поддерживающий стандарты RFC 1034,1035, 2136. Поддерживает реализацию хост-систем на базе стека протоколов Internet, описанных в RFC 1123. Поддерживает механизм инкрементального переноса зон IXFR, описанный в RFC 1995 и механизм извещения ведомых серверов NOTIFY, RFC 1996.

Подготовка сервера

Устанавливаем все обновления:

Устанавливаем утилиту для синхронизации времени, отключаем cronyd и запускаем ntpd

Настраиваем временную зону:

* в данном примере выбрано московское время.

И синхронизируем время с внешним сервером:

Установка и запуск BIND

Устанавливаем DNS-сервер следующей командой:

Запускаем сервис имен:

И проверяем, что он работает корректно:

Базовая настройка DNS-сервера

Открываем на редактирование конфигурационный файл bind:

Читать еще:  Как изменить MAC-адрес в Linux

и редактируем следующее в блоке options:

* 192.168.0.1 — IP-адрес нашего DNS-сервера, на котором он будет принимать запросы;

allow-query разрешает выполнять запросы всем, но из соображений безопасности можно ограничить доступ для конкретной сети, например, вместо any написать 10.10.1.0/24.

listen-on-v6 port 53 присвоим значение none, тем самым отключив ipv6

forward с параметром first указывает, DNS-серверу пытаться разрешать имена с помощью DNS-серверов, указанных в параметре forwarders, и лишь в случае, если разрешить имя с помощью данных серверов не удалось, то будет осуществлять попытки разрешения имени самостоятельно.

forwarders перенаправляем запросы, которые сами не резолвим, на днс сервер гугла.

Создание локальных зон DNS.

Создайте папку с мастер зонами

Прямая DNS зона.

Создайте прямую DNS зону.

Пример её содержимого с описанием ниже.

Рассмотрим подробнее написанное:
$TTL 3600 — Time to live время жизни, по умолчанию 1 день. По достижении установленного времени, кеширующий сервер запрашивает DNS сервер, содержащий доменную зону, информацию о зоне. И при необходимости обновляет записи.
example.org IN SOA ns01.example.org. root.example.org. зона обслуживания, адрес корневого сервера для зоны, акаунт её админа.
1; Serial -ее серийный номер DNS записи.
600; Refresh-указывает подчиненным DNS серверам как часто им обращаться, для поиска изменений к master серверу.
3600; Retry — говорит о том, сколько Slave сервер должен подождать, прежде чем повторить попытку.
1w; Expire — Максимальный срок жизни записей, после которой они потеряют актуальность (1 неделя)
300; Minimum TTL -минимальный срок жизни записи 5 мин.
NS ns01.example.org.-NS сервер который обслуживает эту зону
NS ns02.example.org.-NS сервер который обслуживает эту зону
NS ns03.example.org.-NS сервер который обслуживает эту зону
A 192.168.10.20 -если требуется попасть по адресу example.org, то клиенту будет выдан этот IP
ns01 A 192.168.10.50 — Записи для поиска наших NS серверов
ns02 A 192.168.10.60
ns03 A 192.168.10.70
test A 192.168.10.12 -Если клиент запрашивает адрес test.example.org, DNS выдаст ip 192.168.10.12?

Назначьте владельца и права.

В конфигурационный файл named.conf добавьте следующее:

* где exapmle.org — имя зоны, которую будет обслуживать наш DNS-сервер. Это и есть домен, для которого bind будет хранить записи. Должен совпадать по имени с файлом зоны в папке master.

Описание опций настройки зоны:

type тип зоны (в нашем случае первичная — значит master). Другие варианты — slave, stub, forward.

file Путь к файлу с записями зоны. В данном примере указан относительный путь — то есть файл находится по пути master/test.local, который начинается относительно рабочей директории (по умолчанию — /var/named/). Таким образом, полный путь до файла — /var/named/master/test.local.

Для каждой зоны создайте свой блок zone.

Чтобы настройки применились, необходимо перезапустить службу.

Для проверки работоспособности сервера с другого компьютера сети (например, на Windows) выполняем команду:

* данной командой мы пытаемся узнать IP-адреса сайта rgu.avo.ru через сервер 192.168.0.1.

Должно получиться, примерно, следующее:

Создание обратной зоны

В конфигурационный файл named.conf добавьте следующее:

Создайте обратную DNS зону.

Пример её содержимого с описанием ниже.

Чтобы настройки применились, необходимо перезапустить службу.

Логирование Bind

Способ 1

По умолчанию, сервер Bind хранит логи в файле

Для его непрерывного просмотра вводим следующую команду:

Степень детализации логов можно настроить в конфигурационном файле:

* где file — путь к log-файлу; severity — уровень чувствительности к возникающим событиям. Возможны следующие варианты для severity:

  • critical — критические ошибки.
  • error — ошибки и выше (critical).
  • warning — предупреждения и выше. Предупреждения не говорят о наличии проблем в работе сервиса, однако это такие событтия, которые могут привести с ошибкам, поэтому не стоит их игнорировать.
  • notice — уведомления и выше.
  • info — информация.
  • debug — отладка (подробный лог).
  • dynamic — тот же debug

Способ 2

Создайте каталог для логов

В разделе logging задаются 2 параметра channel (можно и больше двух — на ваше усмотрение), эти параметры дословно можно назвать «канал» записи. Каждый канал определяет имя канала и настройки параметров записи (что записывать, а что — нет и куда писать). Директива category задает какую категорию сообщений в какой канал отправлять. Исходя из этого, мы имеем: запись стандартной информации в канал misc, а приходящие запросы посылаются в канал query. При этом, если файлы журнала достигают 4Мб (size 4m), он переименовывается добавлением к имени .1 и начинается запись в новый журнал, числа в конце других журналов увеличиваются. Журналы с номером, более указанного в version (в нашем случае 4) удаляются. Параметры print* определяют заносить ли в журнал время появления, важность и категорию информации. Более подробно про настройки раздела logging можно почитать в man (5) named.conf.

Добавьте конфигурацию логирования в файл /etc/named.conf

Проверка работоспособности

Для проверки работоспособности и правильной конфигурации DNS сервера, нужно сделать к нему несколько запросов. Для этого можно воспользоваться консольными утилитами ping, dig или nslookup.

Утилита пинг, при указании доменного имени, резолвит его с помощью DNS. Если пинг к хосту, указанному в DNS выполняется, то A запись данного хоста корректна.

С помощью dig или nslookup можно проверить обратные записи или иные специфические записи DNS сервера. Например:

# dig SRV _ldap._tcp.ad.test

Сделает запрос SRV записи на сервере в домене ad.test. Должен вывести ip адрес хоста с LDAP сервисом.

Запрос должен вывести хостнейм для введенного ip. Тем самым проверив обратную (PTR) запись.

Если вы нашли ошибку, выделите текст и нажмите Ctrl+Enter.

Кэширующий DNS сервер на BIND.

BIND9 один из самых известных DNS серверов под Линукс. Это полноценный сервер со всеми нужными возможностями, на котором вы можете поднять авторитетный, кэширующий или какой угодно другой dns сервер.

Установка сервера очень проста :

apt-get install bind9

Теперь сделаем основные настройки и кэширование запросов DNS, если конечно ваш сервер будет вообще принимать запросы ) Отредактируем файл настроек /etc/bind/named.conf.options

Перезапустим сервис и можем пользоваться свои кэширующим dns сервером ).

Настройка зоны.

Скажем у вас есть домен test.com для которого вы ходите сделать свой dns сервер зоны. Первым делом открываем файл /etc/bind/named.conf.local и вписывает туда настройки зоны :

zone «test.com» IN — собственно, название DNS зоны, которую мы будем обслуживать (доменное имя которое надо купить заранее).
type master; — тип данного сервера.
file «/var/lib/bind/test.com.db»; -путь к файлу с настройками данной зоны.
allow-transfer ; -разрешаем передачу данной зоны на остальные DNS сервера.
allow-update ; — разрешаем обновление.
notify yes; -включаем автоматическое уведомление подчиненных серверов об обновлении файла настроек DNS зоны.

Теперь создадим файл test.com.db :

Рассмотрим подробнее написанное:

$TTL 3600 — Time to live время жизни, по умолчанию ставим 1 час.
test.com IN SOA ns01.test.com. root.test.com. — сама зона, которая обслуживается данным сервером.
1; Serial — ее серийный номер DNS записи.
600; Refresh — указывает подчиненным DNS серверам как часто им обращаться, для поиска изменений к master серверу.
3600; Retry — говорит о том, сколько Slave сервер должен подождать, прежде чем повторить попытку.
1w; Expire — Максимальный срок жизни записей, после которой они потеряют актуальность (1 неделя).
300; Minimum TTL — минимальный срок жизни записи 5 мин.
NS ns01.test.com. — NS сервер который обслуживает эту зону.
NS ns02.test.com. — NS сервер который обслуживает эту зону.
A 192.168.10.20 — если требуется попасть по адресу test.com, то клиенту будет выдан этот IP.
ns01 A 192.168.10.5 — Записи для поиска наших NS серверов.
ns02 A 192.168.10.6
www A 192.168.10.1 — Если клиент запросит адрес www.test.com, то ему будет выдан IP 192.168.10.2
test A 192.168.10.12 — Если клиент запрашивает адрес test.test.com, какой будет выдан ему IP.

Перезапускаем сервис и не забываем указать ваш dns сервер в настройка регистратора домена. Успехов.

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Ссылка на основную публикацию
Статьи c упоминанием слов:
Adblock
detector