The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Каталог документации / Раздел "Руководства по FreeBSD на русском" / Оглавление документа

Chapter 6 Упражнения для интересующихся студентов

Table of Contents
6.1 Создание простого DNS-сервера
6.2 Использование PPP-фильтров

6.1 Создание простого DNS-сервера

В то время как управление иерархией DNS может быть довольно сложным процессом, все же существует возможность настроить мини-DNS-сервер на нашей FreeBSD-системе, которая к тому же функционирует в качестве шлюза к Вашему Интернет-провайдеру.

Основываясь на файлах каталога /etc/namedb, который был установлен процессе установки системы FreeBSD, стало возможным создать сервер имен, который будет одновременно и авторитетным для нашей локальной сети, используемой в этом руководстве, и "парадной дверью" в архитектуре DNS сети Интернет.

Для этой минимальной конфигурации DNS, необходимы только три файла:

/etc/namedb/named.boot
/etc/namedb/named.root
/etc/namedb/mydomain.db


Файл /etc/namedb/named.root автоматически устанавливается как часть базовой установки системы FreeBSD. Остальные два файла должны быть созданы вручную.

6.1.1 Файл /etc/namedb/named.boot

Файл /etc/namedb/named.boot управляет параметрами запуска DNS-сервера и содержит информацию, которую необходимо знать этому серверу имен, а именно:

  1. где искать конфигурационные файлы,

  2. за какие "доменные имена" он отвечает и

  3. где искать другие DNS-сервера.



Используя редактор 'ee', создайте файл /etc/namedb/named.boot содержащий следующее:

; загрузочный файл для мини-сервера имен

directory   /etc/namedb

; type    domain        source host/file        backup file

cache     .         named.root
primary   my.domain.        mydomain.db


Строки, начинающиеся с символа ";" являются комментарием. Строки, которые несут самую существенную информацию в этом файле приведены ниже:

  • directory /etc/namedb

    Сообщает серверу имен о том, где находятся конфигурационные файлы, на которые имеются ссылки в последних секциях файла '/etc/namedb/named.boot'.

  • cache . named.root

    Сообщает серверу имен о том, что список корневых DNS-серверов Интернет находится в файле 'named.root'. (Этот файл включен в базовую установку FreeBSD и его содержимое не описывается в этом руководстве.)

  • primary my.domain. mydomain.db

    Сообщает серверу имен о том, что он является "авторитетным" для домена "my.domain" и что список имен и IP-адресов систем домена "my.domain" (локальная сеть) находится в файле 'mydomain.db'.



После того, как файл /etc/namedb/named.boot будет создан и сохранен, переходите к следующему разделу для создания файла /etc/namedb/mydomain.db.

6.1.2 Файл /etc/namedb/mydomain.db

Файл /etc/namedb/mydomain.db содержит имена и IP-адреса каждой системы в Вашей локальной сети.

За более подробной информацией по операторам, используемым в этом файле обращайтесь к man-странице справочного руководства по named.

Файл /etc/namedb/mydomain.db для нашего небольшого DNS-сервера содержит следующее:

@  IN SOA  my.domain. root.my.domain.  (
                961230  ; Serial
                3600    ; Refresh
                300 ; Retry
                3600000 ; Expire
                3600 )  ; Minimum
    IN NS   curly.my.domain.

curly.my.domain.    IN A    192.168.1.1 # The FreeBSD box
larry.my.domain.    IN A    192.168.1.2 # The Win'95 box
moe.my.domain.      IN A    192.168.1.3 # The WfW box
shemp.my.domain.    IN A    192.168.1.4 # The Windows NT box

$ORIGIN 1.168.192.IN-ADDR.ARPA
        IN NS   curly.my.domain.
1       IN PTR  curly.my.domain.
2       IN PTR  larry.my.domain.
3       IN PTR  moe.my.domain.
4       IN PTR  shemp.my.domain.

$ORIGIN 0.0.127.IN-ADDR.ARPA
        IN NS   curly.my.domain.
1       IN PTR  localhost.my.domain.


Простыми словами, этот файл объявляет, что локальный DNS-сервер:

  • имеет полномочия ("SOA") на домен с именем 'my.domain',

  • является сервером имен ("NS") для домена 'my.domain',

  • является ответственным за обратное преобразование для всех IP-адресов, которые начинаются с '192.168.1.' и '127.0.0.' ("$ORIGIN ...")



Добавляя информацию о новой рабочей станции в этот файл, Вы должны добавлять две строки для этой системы: одну, в верхнюю секцию, которая отвечает за преобразование имени системы в Интернет-адрес ("IN A"), а другую, которая, наоборот, преобразует адрес в имя узла, в секцию $ORIGIN 1.168.192.IN-ADDR.ARPA.

6.1.3 Запуск DNS-сервера

По умолчанию DNS-сервер ('/usr/sbin/named') не запускается при загрузке системы. Однако, вы можете дать указание системе запустить DNS-сервер, изменив одну единственную строку в файле '/etc/rc.conf':

Используя редактор 'ee', загрузите файл /etc/rc.conf. Опустите курсор примерно на 40 строк вниз и Вы заметите секцию, которая выглядит как показано ниже:

---
named_enable="NO"                       # Run named, the DNS server (or NO).
named_flags="-b /etc/namedb/named.boot" # Flags to named (if enabled).
---
Измените эту секцию как показано ниже:
---
named_enable="YES"                      # Run named, the DNS server (or NO).
named_flags="-b /etc/namedb/named.boot" # Flags to named (if enabled).
---
Сохраните файл и перезагрузите систему.

Альтернативный способ: запустите демон сервера имен, введя следующую команду:

# named -b /etc/namedb/named.boot


Какие бы изменения Вы не производили в любом из файлов каталога /etc/namedb, Вам необходимо прервать выполнение сервера имен, для того, чтобы изменения вступили в силу. Это выполняется с помощью следующей системной команды:

# kill -HUP `cat /var/run/named.pid`


Этот, и другие документы, могут быть скачаны с ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

По вопросам связанными с FreeBSD, прочитайте документацию прежде чем писать в <questions@FreeBSD.org>.
По вопросам связанным с этой документацией, пишите <doc@FreeBSD.org>.
По вопросам связанным с русским переводом документации, пишите <frdp@FreeBSD.org.ua>.




Спонсоры:
Слёрм
Inferno Solutions
Hosting by Ihor
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2019 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру