Прежде, чем начать выполнение лабораторной работы
- Убедитесь, что Вы понимаете:
- в чем отличие домена от зоны?
- как функционирует система DNS?
- что такое рекурсивный и итеративный запрос?
- Прочитайте документацию к пакету bind и утилитам:
- nslookup
- host
- dig
Задание на лабораторную работу
- Проверить, установлены ли на узлах host1 и host3 пакеты: bind, bind-utils, bind-libs, bind-chroot.
- На узле host3.
- Измените (если это потребуется) файл /etc/resolv.conf так, чтобы клиент DNS в качестве сервера использовал узел 192.168.1.11. (фраза server).
- Запустите утилиту nslookup. Какому серверу будут отдаваться запросы?
- Получите:
- адрес узла linux.csc.local (A);
- информацию о зоне csc.local (SOA). Поясните полученный результат;
- имена и адреса узлов для передачи почты в домен csc.sibsutis.ru (MX и A)
- текстовый комментарий к доменному имени csc.sibsutis.ru (TXT)
- всю информацию о доменном имени sibnet.ru (ANY)
- Повторите действия п. 3 запуская nslookup в неинтерактивном режиме (из коммандной строки).
- Отправьте запросы п. 3 серверу 192.168.1.1 не изменияя содержимого файла /etc/resolv.conf (команда server или указав параметр в коммандной строке).
- Выполните действия п. 3 с использованием утилиты dig, затем host. Поясните полученные результаты. Отличаются ли они от тех, которые Вы получили с использованием утилиты nslookup?
- Добавьте в файл /etc/resolv.conf строку (search), содержащую перечень доменов, в которых клиенту необходимо искать неполные имена. Проверье настройки с использованием утилит nslookup, host и dig.
- Настройте DNS сервер так, чтобы он переправлял все запросы на узел 192.168.1.1. Для этого:
- Изучите файл /etc/sysconfig/named. Что определяет переменная ROOTDIR?
- Посмотрите содержимое файла /etc/named.conf (не забудте про ROOTDIR !!!). Определены ли там какие-либо зоны ответственности?
- Добавьте в файл настройки named.conf опцию forwarders с указанием узла 192.168.1.11 как цели.
- Запустите сервис named. Убедитесь, что запуск прошел успешно (записи в файле /var/log/messages).
- Измените настройки DNS клиента (файл /etc/resolv.conf) так, чтобы запросы передавались серверу 127.0.0.1.
- Повторите п. 3. Поясните полученный результат.
- На узле host1.
- Измените содержимое файла named.conf так, чтобы сервер нес ответственность за прямую зону groupN.local и обратную зону [N*10].16.172.in-addr.arpa, а все неизвестные запросы передавал узлу host3. Файл с информацией о прямой зоне должен храниться в файле /var/named/grouopN.local.zone, обратной - /var/named/172.16.[N*10].zone (с учетом параметра ROOTDIR !!!).
- Создайте файл с зонной информацией для groupN.local (пример), содержащий следующие записи:
- Записи об адресах локальных интерфейсов всех узлов Вашей сети (host1, host2, host3).
- Серверами имен для зоны являются узлы host1 и host3.
- Узел host2 имеет текстовое описание, содержащее фразу "MAIN HOST IN MY NETWORK".
- Создайте файл с зонной информацией для [N*10].16.172.in-addr.arpa, содержащий о всех адресах Вашей сети.
- Запустите сервис named.
- На узле host2 (не забудьте про сетевой экран !!!).
- Настройте клиента так, чтобы DNS запросы передавались на сервер host1.
- Получите информацию о зонах groupN.local. и [n*10].16.172.in-addr.arpa. (SOA), узлах host1, host2, host3 (A, TXT) и всех адресах Вашей сети.
- Проверьте, сможете ли Вы узнать информацию о почтовых узлах для домена mail.sibnet ru. Поясните полученный результат.
- На узле host3.
- Измените настройки DNS сервера так, чтобы он нес ответственность за зону "." (root).
- Создайте файл описания зоны "." (root.zone), в котором укажите данные серверах имен о всех соседних зонах.
- Перезапустите сервис named.
- На узле host2.
- Получите информацию о зонах соседних групп (N+1 и N-1).
- Проверьте, сможете ли Вы узнать информацию о почтовых узлах для домена mail.sibnet ru. Поясните полученный результат.
Контрольные вопросы
- Что такое DNS?
- Чем отличается прямая зона от обратной?
- Что указывается в файле resolv.conf?
- Что такое основной суффикс и дополнительные суффиксы?
- Зачем нужна зона root.hints?
Полезные ссылки
Настройка сервера BIND v9 [1]