Возможности Скайпа

Подробная настройка unbound в freebsd 10.3. Указание настроек сети вручную

Есть своя сеть с белыми IP (111.222.333.0) и доменом (mydomain.ru). Требуется поднять DNS который смотрит в интернет.
Загружаем образ FreeBSD 10.0

Устанавливаем, назначаем сетевому интерфейсу адрес 111.222.333.2

Настраиваем синхронизацию времени раз в сутки. добавляем в crontab :

1 6 * * * root ntpdate -s 0.freebsd.pool.ntp.org

Устанавливаем bind 9.9 из репозитория:

Pkg install bind99

Правим конфиг
В начале конфига прописываем правила для allow-recursion allow-transfer allow-query

Acl "recursion-ip" { 127.0.0.1; 111.222.333.0/24; }; acl "trusted-dns" { 111.111.111.111; 222.222.222.222; }; acl "query-ip" { 127.0.0.1; 111.222.333.0/24; };

В секции options прописываем:

// разрешаем рекурсивные запросы allow-recursion { recursion-ip; }; // разрешаем передачу зоны доверенным DNS серверам // (указывает ns сервера регистратора домена) allow-transfer { trusted-dns; }; // разрешаем подавать запросы нашему серверу allow-query { query-ip; }; // скрываем версию нашего сервера version "MyDNS";

Указываем на каких интерфейсах работать.

Listen-on { 127.0.0.1; 111.222.333.2; };

В конце файла прописываем прямую и обратную зону:

Zone "mydomain.ru" { type master; file "/usr/local/etc/namedb/master/mydomain.ru-forward.db"; }; zone "333.222.111.in-addr.arpa" { type master; file "/usr/local/etc/namedb/master/mydomain.ru-333.222.111-reverse.db"; };

Теперь создаем файлы зон. Прописываем в файл mydomain.ru-forward.db

$TTL 3600 @ IN SOA ns1.mydomain.ru. root.ns1.mydomain.ru. (2014040101 ; Serial 3600 ; Refresh 900 ; Retry 360000 ; Expire 3600 ; Neg. cache TTL) IN A 111.222.333.1 ; по этому адресу будет резолвиться наш домен mydomain.ru IN NS ns1.mydomain.ru. IN NS ns1-your_registrator.ru. ; ns сервера вашего регистратора IN NS ns2-your_registrator.ru. IN MX 10 mail.mydomain.ru. ; если есть почта в домене ns1 IN A 111.222.333.2 ; IP адрес нашего DNS first IN A 111.222.333.10 ; далее пойдут домены second IN A 111.222.333.11 ; третьего уровня нашей сети

Затем прописываем в файл обратной зоны mydomain.ru-333.222.111-reverse.db следущее:

$TTL 3600 @ IN SOA ns1.mydomain.ru. root.ns1.mydomain.ru. (2014032801 ; Serial 3600 ; Refresh 900 ; Retry 360000 ; Expire 3600 ; Neg. cache TTL) IN NS ns1.mydomain.ru. IN NS ns1-your_registrator.ru. IN NS ns2-your_registrator.ru. 2 IN PTR ns1.mydomain.ru. 10 IN PTR first.mydomain.ru. 11 IN PTR second.mydomain.ru.

Значение Serial (Серийный номер версии файла зоны) нужно увеличивать при каждом изменении в зоне.
По этому значению вторичный сервер обнаруживает, что надо обновить информацию.

Теперь проверим файлы зон:

Named-checkzone mydomain.ru mydomain.ru-forward.db named-checkzone 333.222.111.in-addr.arpa mydomain.ru-333.222.111-reverse.db

Вывод команды должен быть вида:

Zone mydomain.ru/IN: loaded serial 2014040101 OK

Настроим логирование.
Прописываем в конфиг bind (/usr/local/etc/namedb/named.conf )

Logging { channel default_ch { file "/var/log/named/named.log" versions 3 size 500k; severity info; print-time yes; print-category yes; }; channel security_ch { file "/var/log/named/named-security.log" versions 3 size 500k; severity info; print-time yes; print-category yes; }; channel transfer_ch { file "/var/log/named/named-transfer.log" versions 3 size 500k; severity info; print-time yes; print-category yes; }; channel lame_ch { file "/var/log/named/named-lamers.log" versions 3 size 500k; severity info; print-time yes; print-category yes; }; category default { default_ch; }; // все, для чего нет собственного канала category security { security_ch; }; // события безопасности category xfer-in { transfer_ch; }; // отдача зон category xfer-out { transfer_ch; }; // прием зон category notify { transfer_ch; }; // уведомления и факты регистрации category lame-servers { lame_ch; }; // события от "кривых" DNS-серверов };

Выставим владельца на директорию /var/log/named

Chown bind:bind /var/log/named

Проверяем правильность конфига named.conf командой

Named-checkconf

Если результатом выполнения этой команды «ничего» то все ОК.
Теперь загрузим актуальный файл корневой зоны (named.root ).

Fetch ftp://ftp.internic.net/domain/named.root

Поместим его в каталог /usr/local/etc/namedb с заменой существующего.
Желательно периодически повторять эту процедуру, или настроить эту операцию посредством cron.
Все почти готово! Настроим утилиту управления — rndc
Переходим в каталог /usr/local/etc/namedb
Удаляем файл rndc.conf
Выполняем:

Rndc-confgen -a

Меняем владельца:

Chown bind:bind rndc.key

Задействуем автостарт сервера имен.
В файл /etc/rc.conf пропишем:

Named_enable="YES" # если нужен только IPv4, то named_flags="-4"

Настроим DNSSEC.
Создадим каталог keys для файлов ключей.
Создадим мастер ключ — Key Signing Key (KSK) и ключ для зоны — Zone Signing Key (ZSK) .

Команда создания KSK ключа:

Dnssec-keygen -f KSK -a RSASHA256 -b 2048 -n ZONE mydomain.ru

Команда для создания ZSK ключа:

Dnssec-keygen -a RSASHA256 -b 2048 -n ZONE mydomain.ru

удостоверьтесь что ваш регистратор домена поддерживает алгоритм RSASHA256

выставляем права на файлы ключей:

Chown bind:bind Kmydomain.ru*

Включим логирование. В конфиг /usr/local/etc/namedb/named.conf в секцию logging добавим:

Channel dnssec_ch { file "/var/log/named/named-dnssec.log" versions 3 size 500k; severity info; print-time yes; print-category yes; }; category dnssec { dnssec_ch; };

и добавим в описание зоны:

Key-directory "/usr/local/etc/namedb/keys"; inline-signing yes; auto-dnssec maintain;

теперь зона mydomain.ru выглядит так:

Zone "mydomain.ru" { type master; file "/usr/local/etc/namedb/master/mydomain.ru-forward.db"; key-directory "/usr/local/etc/namedb/keys"; inline-signing yes; auto-dnssec maintain; };

Для поддержки проверки DNSSEC на стороне резолвера добавте в секцию options :

Dnssec-enable yes; dnssec-validation yes;

После растарта демона в каталоге зон появятся файлы с расширением: .jbk, .jnl и.signed

Если вы используете DNSSEC Look-aside Validation (опцию dnssec-lookaside auto;), то можете наблюдать в логе множественные сообщения вида: got insecure response; parent indicates it should be secure. Чтобы предотвратить это установите значение dnssec-validation auto; и используйте в качестве forwarders серверов DNS с поддержкой DNSSEC, например от Google — 8.8.8.8

Чтобы заработал процесс верификации регистратору вашего домена нужно заверить созданный KSK ключ и подтвердить свое доверие.
для этого нужно прописать DS записи в панели управления доменом.
DS записи создаются на основе KSK ключа командой:

Dnssec-dsfromkey имя_файла_KSK_ключа

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

Mydomain.ru. IN DS 54808 5 1 0FC489EFD28C2...28EA985CAFBBC1 mydomain.ru. IN DS 54808 5 2 03B685D8003834B492F6...B134ABF9D41A28193171352F0280

У некоторых регистраторах также требуется прописать DSKEY из файла KSK ключа.

Mydomain.ru. IN DNSKEY 257 3 5 YthgRbNKP5P8e5cDJhYsCwFr7AK17m+SeV5pgW...bLVa2A0/dWXkPwi1TZ3lNfkjhhYFGR

И в заключении настроим файервол.
Создадим файл /etc/ipfw.my_rules следующего содержания:

#!/bin/sh cmd="/sbin/ipfw -q add" # команда добавления правил oint="vmx0" # интерфейс на котором запушен named ipo="111.222.333.2" # IP адрес этого интерфейса # Сбрасываем все правила: /sbin/ipfw -f flush # Проверяем на соответствие пакета динамическим правилам: ${cmd} check-state # Разрешаем весь траффик по внутреннему интерфейсу lo0 ${cmd} allow ip from any to any via lo0 # отсекаем попытки лезть от lo0 и к нему ${cmd} deny ip from any to 127.0.0.0/8 ${cmd} deny ip from 127.0.0.0/8 to any # блокируем частные сети и автоконфигурационную т.к. интерфейс смотрит в интернет. ${cmd} deny ip from any to 10.0.0.0/8 in via ${oint} ${cmd} deny ip from any to 172.16.0.0/12 in via ${oint} ${cmd} deny ip from any to 192.168.0.0/16 in via ${oint} ${cmd} deny ip from any to 0.0.0.0/8 in via ${oint} ${cmd} deny ip from any to 169.254.0.0/16 in via ${oint} # блокируем мультикастовые пакеты ${cmd} deny ip from any to 240.0.0.0/4 in via ${oint} # блокируем широковещательный и фрагментированный icmp ${cmd} deny icmp from any to any frag ${cmd} deny log icmp from any to 255.255.255.255 in via ${oint} ${cmd} deny log icmp from any to 255.255.255.255 out via ${oint} # траффик к частным сетям ${cmd} deny ip from 10.0.0.0/8 to any out via ${oint} ${cmd} deny ip from 172.16.0.0/12 to any out via ${oint} ${cmd} deny ip from 192.168.0.0/16 to any out via ${oint} ${cmd} deny ip from 0.0.0.0/8 to any out via ${oint} # автоконфигуреную частную сеть ${cmd} deny ip from 169.254.0.0/16 to any out via ${oint} # мультикастовые рассылки ${cmd} deny ip from 224.0.0.0/4 to any out via ${oint} ${cmd} deny ip from 240.0.0.0/4 to any out via ${oint} # разрешаем установленные соединения ${cmd} allow tcp from any to any established # разрешаем исходящий траффик от сервера ${cmd} allow ip from ${ipo} to any out xmit ${oint} # разрешаем синхронизацию времени через ntpdate ${cmd} allow udp from any 123 to any via ${oint} # разрешаем DNS ${cmd} allow udp from any 53 to any via ${oint} # разрешаем входящий DNS (протокол tcp нужен для трансфера зон) ${cmd} allow udp from any to any 53 via ${oint} ${cmd} allow tcp from any to any 53 via ${oint} # разрешаем ICMP - эхо-запрос, эхо-ответ, время жизни пакета истекло ${cmd} allow icmp from any to any icmptypes 0,8,11 # разрешаем 22 порт для определенного адреса и пишем в лог попытки соединиться с отличных адресов ${cmd} allow tcp from 111.222.333.3 to ${ipo} 22 via ${oint} ${cmd} deny log tcp from any to me 22 in via ${oint}

Для автостарта фаервола пропишем в файл /etc/rc.conf строки:

Firewall_enable="YES" firewall_script="/etc/ipfw.my_rules" firewall_logging="YES"

Логи будут писаться в файл /var/log/security

Пришла пора обновлять некоторые сервера с установленной на них FreeBSD 9.3. В FreeBSD 10 версии из базовой системы был удален сервер BIND, и если продолжать его использование и далее, то требуется установить его из портов.

После обновления системы у меня быстро изменив пару строк конфигов не получилось запустить BIND в chroot`e на FreeBSD 10, поэтому я и решил детально расписать этот процесс. Возможно кому-то это сэкономит время.

Устанавливаем BIND из портов.

cd /usr/ports/dns/bind99 && make install clean

Оставшаяся конфигурация от 9.Х находится по пути /var/named/etc/namedb. И если действовать в соответствии со стандартами, то конфигурацию перемещаем в /usr/local/var/named/etc/namedb, т.к. даже сама система нам говорит, что в /var/named/ у нас ничего не должно быть.

root@:/usr/src # make check-old
>>> Checking for old files
/var/named/etc/namedb/named.root
>>> Checking for old libraries
>>> Checking for old directories
/var/named/dev
/var/named/etc
/var/named/etc/namedb
/var/named/etc/namedb/dynamic
/var/named/etc/namedb/master
/var/named/etc/namedb/working
/var/named/etc/namedb/slave
/var/named/var
/var/named/var/dump
/var/named/var/log
/var/named/var/run
/var/named/var/run/named
/var/named/var/stats
/var/run/named
To remove old files and directories run "/usr/obj/usr/src/make.amd64/bmake delete-old".
To remove old libraries run "/usr/obj/usr/src/make.amd64/bmake delete-old-libs".

Создаем рабочую директорию для BIND.

mv /var/named /usr/local/var

Файлы конфигурации созданные инсталлятором будут находиться по пути /usr/local/etc/namedb. На всякий случай резервируем их.

mv /usr/local/etc/namedb /usr/local/etc/namedb.orig

ln -s /usr/local/var/named/etc/namedb /usr/local/etc/namedb

mkdir -p /usr/local/var/named/usr/local
cd /usr/local/var/named/usr/local ln -s ../../etc
cp /usr/local/etc/namedb.orig/named.root /usr/local/var/named/etc/namedb

Создаем правила для devfs. Правим /etc/devfs.conf.

# Custom rules for the named chroot dev
add hide
add path run unhide
add path random unhide

Добавляем в /etc/fstab.

devfs /usr/local/var/named/dev devfs rw,ruleset=4 0 0

Монтируем.

mount /usr/local/var/named/dev

Правим /etc/rc.conf примерно следующего содержания.

named_enable="YES" # Run named, the DNS server (or NO).
named_program="/usr/local/sbin/named" # path to named, if you want a different one.
named_chrootdir="/usr/local/var/named" # Chroot directory (or "" not to auto-chroot it)
named_conf="/usr/local/etc/namedb/named.conf" # Path to the configuration file
named_flags="-4" # Flags for named
named_uid="bind" # User to run named as
named_chroot_autoupdate="YES" # Automatically install/update chrooted
# components of named. See /etc/rc.d/named.
named_symlink_enable="YES" # Symlink the chrooted pid file
#named_wait="NO" # Wait for working name service before exiting
#named_wait_host="localhost" # Hostname to check if named_wait is enabled
#named_auto_forward="NO" # Set up forwarders from /etc/resolv.conf
#named_auto_forward_only="NO" # Do "forward only" instead of "forward first"

Правим конфигурационный файл /usr/local/etc/namedb/named.conf

directory "/usr/local/etc/namedb";

Выставляем правильные права доступа на конфигурационные файлы.

chown -R bind:wheel /usr/local/var/named/etc/namedb

На данный момент нужно еще поправить /usr/local/etc/rc.d/named иначе при остановке сервиса появляется ошибка.

Stopping named.
umount: /var/namedb/usr/local/lib/engines: statfs: No such file or directory
umount: /var/namedb/usr/local/lib/engines: unknown file system

Вносим следующие изменения

named_poststop()
{
- if [ -n "${named_chrootdir}" -a -c ${named_chrootdir}/dev/null ]; then
+ if [ -d ${_openssl_engines} -a -n "${named_chrootdir}" -a -c ${named_chrootdir}/dev/null ]; then

Запускаем BIND

/usr/local/etc/rc.d/named start

В статье использовались материалы.

В этой статье мы рассмотрим сетевые интерфейсы в FreeBSD 11.1 , покажем настройку сети через файл конфигурации /etc/rc.conf , а именно назначение статических настроек и получение их по DHCP. Пропишем адреса DNS -серверов, настроем hosts и рассмотрим указание временных настроек сети .

Просмотр сетевых интерфейсов.

Для начала проясним: Есть два состояния сетевой карты UP (задействована) и DOWN (не задействована).

Первым делом стоит посмотреть наши сетевые интерфейсы, смотреть будем командой ifconfig .(Рис.1) Вывод команды показывает все интерфейсы UP и DOWN.

Ifconfig

ifconfig -a покажет вам тоже самое.

Ifconfig -a

Вот тут есть некоторые отличия от ifconfig в Ubuntu server .(в Ubuntu server "ifconfig" показывает только интерфейсы UP , "ifconfig -a" показывает все интерфейсы и UP и DOWN )

Рис.1 - Результат ввода команды ifconfig.

И так что же мы видим:

  • em0 - наша сетевая карта, с IP адресом 192.168.3.11 .
  • em1 - вторая сетевая карта, не настроенная.
  • lo - локальная петля, она у всех присутствует по умолчанию.

Для того чтобы посмотреть интерфейсы только UP , используется команда ifconfig -u (Рис.2):

Ifconfig -u

а для просмотра интерфейсов только DOWN , используется команда ifconfig -d (Рис.3):

Ifconfig -d
Рис.2 - Результат ввода команды ifconfig -u.
Рис.3 - Результат ввода команды ifconfig -d.

В дальнейшем я буду показывать примеры настройки на интерфейсе "em0" .

Для включения интерфейса используется команда ifconfig "НАЗВАНИЕ-ИНТЕРФЕЙСА " up.

Ifconfig em0 up

Для выключения интерфейса используется команда ifconfig "НАЗВАНИЕ-ИНТЕРФЕЙСА " down.

Ifconfig em0 down

"Поиграйтесь" с интерфейсом, если вы конечно же не подключены по ssh , и оставьте его в состоянии UP .

Настройка сети через файл конфигурации.

Для настройки статического или динамического IP адреса нам надо отредактировать файл конфигурации сетевых интерфейсов - /etc/rc.conf мы будем редактировать его с помощью текстового редактора vi .(Рис.4) Сразу скажу, для того чтобы редактировать в vi нужно нажать букву "i" , а чтобы сохранить и закрыть документ надо нажать "Esc" ввести ":wq!" и нажать "Enter" .

Рис.4 - vi /etc/rc.conf.

Получение настроек сети по DHCP.

Чтобы назначить получение настроек по DHCP, нужно вписать(или изменить существующую) строчку в файл /etc/rc.conf .(Рис.5)

ifconfig_ НАЗВАНИЕ-ИНТЕРФЕЙСА ="DHCP"

Ifconfig_em0="DHCP"
Рис.5 - Получение сетевых настроек по DHCP.

Перезапускаем сетевую службу netif .(Рис.6)

/etc/rc.d/netif restart Рис.6 - Перезапуск сетевой службы FreeBSD.

Смотрим активные сетевые интерфейсы, видим, полученный по DHCP, IP адрес интерфейса em0 - 192.168.3.6 (Рис.7)

Ifconfig -u

Ping 8.8.8.8
Рис.7 - Проверка активных интерфейсов и доступа к сети.

Пинги идут. Всё отлично!

Указание настроек сети вручную.

Чтобы назначить статичный адрес для нашей Freebsd нужно в файл /etc/rc.conf вписать две строки(Рис.8)

ifconfig_ НАЗВАНИЕ-ИНТЕРФЕЙСА ="inet IP-АДРЕС-FREEBSD netmask МАСКА-СЕТИ "

defaultrouter=" IP-АДРЕС-ШЛЮЗА "

Ifconfig_em0="inet 192.168.3.11 netmask 255.255.255.0" defaultrouter="192.168.3.1"
Рис.8 - Статичные настройки сетевого интерфейса.

Перезапускаем сетевую службу.

/etc/rc.d/netif restart

Проверяем активные интерфейсы

Ifconfig -u

Проверяем выход в интернет пингуем гугловские восьмёрки.

Ping 8.8.8.8

Настройка DNS.

IP адреса DNS серверов хранятся в файле /etc/resolv.conf (Рис.9)

Открываем resolv.conf в редакторе vi .

Vi /etc/resolv.conf

Вписываем IP адрес DNS сервера. (Можно указать сколько угодно адресов.)

Nameserver 192.168.3.1 nameserver 8.8.8.8 nameserver 8.8.4.4

Если у вас нет файла resolv.conf то создайте его в каталоге /etc

Touch /etc/resolv.conf
Рис.9 - Содержимое файла resolv.conf.

Файл /etc/hosts.

Файл /etc/hosts содержит таблицы сопоставления DNS имен с IP адресами. В первую очередь ваш сервер будет обращаться к файлу hosts , а потом уже к DNS-серверу.

Лично для себя я отметил полезным внести в hosts запись этого freebsd (IP адрес локальной сети - имя сервера). Теперь мы можем во всех конфигурационных файлах указывать DNS имя, а не IP адрес, а в случае необходимости за кротчайшее время изменить свой IP адрес поправив hosts и настройки интерфейса в /etc/rc.conf .

Это просто для примера вам этого делать не обязательно .

Приступаю к редактированию(Рис.10):

Vi /etc/hosts

Вписываю:

192.168.3.11 freebsd.itdeer.loc Рис.10 - Содержимое файла hosts.

Проверю попинговав имена из hosts .(Рис.11)

Ping localhost ping freebsd.itdeer.loc
Рис.11 - Пингуем имена из hosts.

Временное назначение ip адреса.

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

Например, мы знаем что на 192.168.3.109 точно есть доступ в интернет, назначаем этот IP адрес нашему интерфейсу, так же нужно указать маску сети(Рис.12):

Ifconfig em0 192.168.3.109 netmask 255.255.255.0

или командой с короткой записью маски сети.

Ifconfig em0 192.168.3.109/24
Рис.12 - Указание временных настроек для сетевого интерфейса em0.

Интернет может не появиться, так как не указан шлюз по умолчанию. Прописываем его и пингуем гугловкие восьмёрки.(Рис.13)

Route add default 192.168.3.1 ping 8.8.8.8
Рис.13 - Указываем шлюз по умолчанию. Проверяем ping.

Правильно ли мы прописали наш шлюз по умолчанию можно посмотреть в таблице маршрутизации. Она выводится с помощью команды "netstat -rn" , Шлюз по умолчанию будет обозначен флагом UG .(Рис.14)

Netstat -rn
Рис.14 - Вывод таблицы маршрутизации.

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

Route del default

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

Добавляем маршрут в сеть 192.168.0.0/16 (Маска 255.255.0.0) через основной шлюз(gateway) 192.168.3.1/24

Route add 192.168.0.0/16 192.168.3.1

Вариант добавления маршрута с указанием полной маски.

Route add -net 192.168.0.0 -netmask 255.255.0.0 192.168.3.1

Переименовываем интерфейс em0 в wan0.

Для удобства некоторые админы переименовывают интерфейсы, чтобы сразу видеть для чего предназначен интерфейс. Допустим у нас шлюз с двумя сетевыми интерфейсами em0 (интернет) и em1 (локальная сеть) и работать с такими названиями неудобно, так как имея большое количество интерфейсов можно запутаться. Гораздо удобнее работать с интерфейсами wan0 и lan1 .

Мы покажем пример переименования интерфейса em0 в wan0 в файле /etc/rc.conf .(Рис.15)

Ifconfig_em0="inet 192.168.3.11 netmask 255.255.255.0"

Заменяем двумя строками:

Ifconfig_em0 _name="wan0 " ifconfig_wan0 ="inet 192.168.3.11 netmask 255.255.255.0"
Рис.15 - Переименовываем интерфейсы в файле /etc/rc.conf.

Не забываем перезапустить сетевую службу:

/etc/rc.d/netif restart

Проверю, введу команду ifconfig -u . Видим наш wan0 с нужным IP адресом .(Рис.16)

Ifconfig -u
Рис.16 - Проверяем новое название интерфейса. ifconfig -u.

// $FreeBSD: src/etc/namedb/named.conf,v 1.26.2.2.4.1 2009/04/15 03:14:26 kensmith Exp $
// Refer to the named.conf(5) and named(8) man pages, and the documentation
// in /usr/share/doc/bind9 for more details.
// If you are going to set up an authoritative server, make sure you
// understand the hairy details of how DNS works. Even with
// simple mistakes, you can break connectivity for affected parties,
// or cause huge amounts of useless Internet traffic.

key "rndc-key" {
algorithm hmac-md5;
secret "BYSzvbwt6grksw16bMIfrw==";
};

controls {
inet 127.0.0.1 port 953
allow { 127.0.0.1; } keys { "rndc-key"; };
};

acl "trusted"
{
192.168.0.0/24;
127.0.0.1;
195.24.128.164;
192.168.200.20;
85.119.72.2;
};

options {
// Relative to the chroot directory, if any
directory "/etc/namedb";
pid-file "/var/run/named/pid";
dump-file "/var/dump/named_dump.db";
statistics-file "/var/stats/named.stats";

Allow-transfer { trusted; }; allow-query { any; }; allow-recursion { any; };

// If named is being used only as a local resolver, this is a safe default.
// For named to be accessible to the network, comment this option, specify
// the proper IP address, or delete this option.
listen-on { 127.0.0.1; 192.168.200.10; };

// If you have IPv6 enabled on this system, uncomment this option for
// use as a local resolver. To give access to the network, specify
// an IPv6 address, or the keyword "any".
// listen-on-v6 { ::1; };

// These zones are already covered by the empty zones listed below.
// If you remove the related empty zones below, comment these lines out.
disable-empty-zone "255.255.255.255.IN-ADDR.ARPA";
disable-empty-zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA";
disable-empty-zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA";

// In addition to the "forwarders" clause, you can force your name
// server to never initiate queries of its own, but always ask its
// forwarders only, by enabling the following line:
// forward only;

// If you"ve got a DNS server around at your upstream provider, enter
// its IP address here, and enable the line below. This will make you
// benefit from its cache, thus reduce overall DNS traffic in the Internet.
/*
forwarders {
127.0.0.1;
};
};

zone "." { type hint; file "named.root"; };

zone "localhost" { type master; file "master/localhost-forward.db"; };

zone "127.in-addr.arpa" { type master; file "master/localhost-reverse.db"; };

zone "255.in-addr.arpa" { type master; file "master/empty.db"; };

// RFC 1912-style zone for IPv6 localhost address
zone "0.ip6.arpa" { type master; file "master/localhost-reverse.db"; };

// "This" Network (RFCs 1912 and 3330)
zone "0.in-addr.arpa" { type master; file "master/empty.db"; };

// Private Use Networks (RFC 1918)
zone "10.in-addr.arpa" { type master; file "master/empty.db"; };
zone "16.172.in-addr.arpa" { type master; file "master/empty.db"; };
zone "17.172.in-addr.arpa" { type master; file "master/empty.db"; };
zone "18.172.in-addr.arpa" { type master; file "master/empty.db"; };
zone "19.172.in-addr.arpa" { type master; file "master/empty.db"; };
zone "20.172.in-addr.arpa" { type master; file "master/empty.db"; };
zone "21.172.in-addr.arpa" { type master; file "master/empty.db"; };
zone "22.172.in-addr.arpa" { type master; file "master/empty.db"; };
zone "23.172.in-addr.arpa" { type master; file "master/empty.db"; };
zone "24.172.in-addr.arpa" { type master; file "master/empty.db"; };
zone "25.172.in-addr.arpa" { type master; file "master/empty.db"; };
zone "26.172.in-addr.arpa" { type master; file "master/empty.db"; };
zone "27.172.in-addr.arpa" { type master; file "master/empty.db"; };
zone "28.172.in-addr.arpa" { type master; file "master/empty.db"; };
zone "29.172.in-addr.arpa" { type master; file "master/empty.db"; };
zone "30.172.in-addr.arpa" { type master; file "master/empty.db"; };
zone "31.172.in-addr.arpa" { type master; file "master/empty.db"; };
zone "168.192.in-addr.arpa" { type master; file "master/empty.db"; };

// Link-local/APIPA (RFCs 3330 and 3927)
zone "254.169.in-addr.arpa" { type master; file "master/empty.db"; };

// TEST-NET for Documentation (RFC 3330)
zone "2.0.192.in-addr.arpa" { type master; file "master/empty.db"; };

// Router Benchmark Testing (RFC 3330)
zone "18.198.in-addr.arpa" { type master; file "master/empty.db"; };
zone "19.198.in-addr.arpa" { type master; file "master/empty.db"; };

// IANA Reserved - Old Class E Space
zone "240.in-addr.arpa" { type master; file "master/empty.db"; };
zone "241.in-addr.arpa" { type master; file "master/empty.db"; };
zone "242.in-addr.arpa" { type master; file "master/empty.db"; };
zone "243.in-addr.arpa" { type master; file "master/empty.db"; };
zone "244.in-addr.arpa" { type master; file "master/empty.db"; };
zone "245.in-addr.arpa" { type master; file "master/empty.db"; };
zone "246.in-addr.arpa" { type master; file "master/empty.db"; };
zone "247.in-addr.arpa" { type master; file "master/empty.db"; };
zone "248.in-addr.arpa" { type master; file "master/empty.db"; };
zone "249.in-addr.arpa" { type master; file "master/empty.db"; };
zone "250.in-addr.arpa" { type master; file "master/empty.db"; };
zone "251.in-addr.arpa" { type master; file "master/empty.db"; };
zone "252.in-addr.arpa" { type master; file "master/empty.db"; };
zone "253.in-addr.arpa" { type master; file "master/empty.db"; };
zone "254.in-addr.arpa" { type master; file "master/empty.db"; };

// IPv6 Unassigned Addresses (RFC 4291)
zone "1.ip6.arpa" { type master; file "master/empty.db"; };
zone "3.ip6.arpa" { type master; file "master/empty.db"; };
zone "4.ip6.arpa" { type master; file "master/empty.db"; };
zone "5.ip6.arpa" { type master; file "master/empty.db"; };
zone "6.ip6.arpa" { type master; file "master/empty.db"; };
zone "7.ip6.arpa" { type master; file "master/empty.db"; };
zone "8.ip6.arpa" { type master; file "master/empty.db"; };
zone "9.ip6.arpa" { type master; file "master/empty.db"; };
zone "a.ip6.arpa" { type master; file "master/empty.db"; };
zone "b.ip6.arpa" { type master; file "master/empty.db"; };
zone "c.ip6.arpa" { type master; file "master/empty.db"; };
zone "d.ip6.arpa" { type master; file "master/empty.db"; };
zone "e.ip6.arpa" { type master; file "master/empty.db"; };
zone "0.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "1.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "2.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "3.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "4.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "5.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "6.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "7.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "8.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "9.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "a.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "b.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "0.e.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "1.e.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "2.e.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "3.e.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "4.e.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "5.e.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "6.e.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "7.e.f.ip6.arpa" { type master; file "master/empty.db"; };

// IPv6 ULA (RFC 4193)
zone "c.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "d.f.ip6.arpa" { type master; file "master/empty.db"; };

// IPv6 Link Local (RFC 4291)
zone "8.e.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "9.e.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "a.e.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "b.e.f.ip6.arpa" { type master; file "master/empty.db"; };

// IPv6 Deprecated Site-Local Addresses (RFC 3879)
zone "c.e.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "d.e.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "e.e.f.ip6.arpa" { type master; file "master/empty.db"; };
zone "f.e.f.ip6.arpa" { type master; file "master/empty.db"; };

// IP6.INT is Deprecated (RFC 4159)
zone "ip6.int" { type master; file "master/empty.db"; };

/* An example dynamic zone
key "exampleorgkey" {
algorithm hmac-md5;
secret "sf87HJqjkqh8ac87a02lla==";
};
zone "example.org" {
type master;
allow-update {
key "exampleorgkey";
};
file "dynamic/example.org";
};
*/

/* Example of a slave reverse zone
zone "1.168.192.in-addr.arpa" {
type slave;
file "slave/1.168.192.in-addr.arpa";
masters {
192.168.1.1;
};
};

ч УЕФЙ йОФЕТОЕФ DNS ХРТБЧМСЕФУС ЮЕТЕЪ ДПУФБФПЮОП УМПЦОХА УЙУФЕНХ БЧФПТЙЪЙТПЧБООЩИ ЛПТОЕЧЩИ УЕТЧЕТПЧ ЙНЈО, УЕТЧЕТПЧ ДПНЕОПЧ РЕТЧПЗП ХТПЧОС (Top Level Domain, TLD) Й ДТХЗЙИ НЕОЕЕ ЛТХРОЩИ УЕТЧЕТПЧ ЙНЈО, ЛПФПТЩЕ УПДЕТЦБФ Й ЛЬЫЙТХАФ ЙОЖПТНБГЙА П ЛПОЛТЕФОЩИ ДПНЕОБИ.

оБ ДБООЩК НПНЕОФ РБЛЕФ BIND РПДДЕТЦЙЧБЕФУС Internet Systems Consortium https://www.isc.org/ .

25.6.6. лПОЖЙЗХТБГЙПООЩЕ ЖБКМЩ

жБКМЩ ЛПОЖЙЗХТБГЙЙ ДБЕНПОБ named ТБУРПМПЦЕОЩ Ч ЛБФБМПЗЕ /etc/namedb Й, ЪБ ЙУЛМАЮЕОЙЕН УМХЮБС, ЛПЗДБ ЧБН ФТЕВХЕФУС РТПУФП ТЕЪПМЧЕТ, ФТЕВХАФ НПДЙЖЙЛБГЙЙ.

25.6.6.1. /etc/namedb/named.conf

// $FreeBSD$ // // If you are going to set up an authoritative server, make sure you // understand the hairy details of how DNS works. Even with // simple mistakes, you can break connectivity for affected parties, // or cause huge amounts of useless Internet traffic. options { // All file and path names are relative to the chroot directory, // if any, and should be fully qualified. directory "/etc/namedb/working"; pid-file "/var/run/named/pid"; dump-file "/var/dump/named_dump.db"; statistics-file "/var/stats/named.stats"; // If named is being used only as a local resolver, this is a safe default. // For named to be accessible to the network, comment this option, specify // the proper IP address, or delete this option. listen-on { 127.0.0.1; }; // If you have IPv6 enabled on this system, uncomment this option for // use as a local resolver. To give access to the network, specify // an IPv6 address, or the keyword "any". // listen-on-v6 { ::1; }; // These zones are already covered by the empty zones listed below. // If you remove the related empty zones below, comment these lines out. disable-empty-zone "255.255.255.255.IN-ADDR.ARPA"; disable-empty-zone "0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA"; disable-empty-zone "1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.IP6.ARPA"; // If you"ve got a DNS server around at your upstream provider, enter // its IP address here, and enable the line below. This will make you // benefit from its cache, thus reduce overall DNS traffic in the Internet. /* forwarders { 127.0.0.1; }; */ // If the "forwarders" clause is not empty the default is to "forward first" // which will fall back to sending a query from your local server if the name // servers in "forwarders" do not have the answer. Alternatively you can // force your name server to never initiate queries of its own by enabling the // following line: // forward only; // If you wish to have forwarding configured automatically based on // the entries in /etc/resolv.conf, uncomment the following line and // set named_auto_forward=yes in /etc/rc.conf. You can also enable // named_auto_forward_only (the effect of which is described above). // include "/etc/namedb/auto_forward.conf";

лБЛ Й ЗПЧПТЙФУС Ч ЛПННЕОФБТЙСИ, ЕУМЙ ЧЩ ИПФЙФЕ РПМХЮЙФШ ЬЖЖЕЛФ ПФ ЙУРПМШЪПЧБОЙС ЛЬЫБ РТПЧБКДЕТБ, ФП НПЦОП ЧЛМАЮЙФШ ТБЪДЕМ forwarders . ч ПВЩЮОПН УМХЮБЕ УЕТЧЕТ ЙНЈО ВХДЕФ ТЕЛХТУЙЧОП ПРТБЫЙЧБФШ ПРТЕДЕМЈООЩЕ УЕТЧЕТЩ ЙНЈО йОФЕТОЕФ ДП ФЕИ РПТ, РПЛБ ОЕ РПМХЮЙФ ПФЧЕФ ОБ УЧПК ЪБРТПУ. рТЙ ЧЛМАЮЕОЙЙ ЬФПЗП ТБЪДЕМБ ПО ВХДЕФ БЧФПНБФЙЮЕУЛЙ ПРТБЫЙЧБФШ УЕТЧЕТ ЙНЈО ЧБЫЕЗП РТПЧБКДЕТБ (ЙМЙ ФПФ, ЛПФПТЩК ЪДЕУШ ХЛБЪБО), ЙУРПМШЪХС РТЕЙНХЭЕУФЧБ ЕЗП ЛЬЫБ. ОБМЙЮЙС ОХЦОПК ЙОЖПТНБГЙЙ. еУМЙ УППФЧЕФУФЧХАЭЙК УЕТЧЕТ ЙНЈО РТПЧБКДЕТБ ТБВПФБЕФ ВЩУФТП Й ЙНЕЕФ ИПТПЫЙК ЛБОБМ УЧСЪЙ, ФП Ч ТЕЪХМШФБФЕ ФБЛПК ОБУФТПКЛЙ ЧЩ НПЦЕФЕ РПМХЮЙФШ ИПТПЫЙК ТЕЪХМШФБФ.

рТЕДХРТЕЦДЕОЙЕ:

127.0.0.1 ЪДЕУШ ТБВПФБФШ ОЕ ВХДЕФ . йЪНЕОЙФЕ ЕЗП ОБ IP-БДТЕУ УЕТЧЕТБ ЙНЈО РТПЧБКДЕТБ.

/* Modern versions of BIND use a random UDP port for each outgoing query by default in order to dramatically reduce the possibility of cache poisoning. All users are strongly encouraged to utilize this feature, and to configure their firewalls to accommodate it. AS A LAST RESORT in order to get around a restrictive firewall policy you can try enabling the option below. Use of this option will significantly reduce your ability to withstand cache poisoning attacks, and should be avoided if at all possible. Replace NNNNN in the example with a number between 49160 and 65530. */ // query-source address * port NNNNN; }; // If you enable a local name server, don"t forget to enter 127.0.0.1 // first in your /etc/resolv.conf so this server will be queried. // Also, make sure to enable it in /etc/rc.conf. // The traditional root hints mechanism. Use this, OR the slave zones below. zone "." { type hint; file "/etc/namedb/named.root"; }; /* Slaving the following zones from the root name servers has some significant advantages: 1. Faster local resolution for your users 2. No spurious traffic will be sent from your network to the roots 3. Greater resilience to any potential root server failure/DDoS On the other hand, this method requires more monitoring than the hints file to be sure that an unexpected failure mode has not incapacitated your server. Name servers that are serving a lot of clients will benefit more from this approach than individual hosts. Use with caution. To use this mechanism, uncomment the entries below, and comment the hint zone above. As documented at http://dns.icann.org/services/axfr/ these zones: "." (the root), ARPA, IN-ADDR.ARPA, IP6.ARPA, and ROOT-SERVERS.NET are available for AXFR from these servers on IPv4 and IPv6: xfr.lax.dns.icann.org, xfr.cjr.dns.icann.org */ /* zone "." { type slave; file "/etc/namedb/slave/root.slave"; masters { 192.5.5.241; // F.ROOT-SERVERS.NET. }; notify no; }; zone "arpa" { type slave; file "/etc/namedb/slave/arpa.slave"; masters { 192.5.5.241; // F.ROOT-SERVERS.NET. }; notify no; }; */ /* Serving the following zones locally will prevent any queries for these zones leaving your network and going to the root name servers. This has two significant advantages: 1. Faster local resolution for your users 2. No spurious traffic will be sent from your network to the roots */ // RFCs 1912 and 5735 (and BCP 32 for localhost) zone "localhost" { type master; file "/etc/namedb/master/localhost-forward.db"; }; zone "127.in-addr.arpa" { type master; file "/etc/namedb/master/localhost-reverse.db"; }; zone "255.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; // RFC 1912-style zone for IPv6 localhost address zone "0.ip6.arpa" { type master; file "/etc/namedb/master/localhost-reverse.db"; }; // "This" Network (RFCs 1912 and 5735) zone "0.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; // Private Use Networks (RFCs 1918 and 5735) zone "10.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "16.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "17.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "18.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "19.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "20.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "21.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "22.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "23.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "24.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "25.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "26.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "27.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "28.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "29.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "30.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "31.172.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "168.192.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; // Link-local/APIPA (RFCs 3927 and 5735) zone "254.169.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; // IETF protocol assignments (RFCs 5735 and 5736) zone "0.0.192.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; // TEST-NET- for Documentation (RFCs 5735 and 5737) zone "2.0.192.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "100.51.198.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "113.0.203.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; // IPv6 Range for Documentation (RFC 3849) zone "8.b.d.0.1.0.0.2.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; // Domain Names for Documentation and Testing (BCP 32) zone "test" { type master; file "/etc/namedb/master/empty.db"; }; zone "example" { type master; file "/etc/namedb/master/empty.db"; }; zone "invalid" { type master; file "/etc/namedb/master/empty.db"; }; zone "example.com" { type master; file "/etc/namedb/master/empty.db"; }; zone "example.net" { type master; file "/etc/namedb/master/empty.db"; }; zone "example.org" { type master; file "/etc/namedb/master/empty.db"; }; // Router Benchmark Testing (RFCs 2544 and 5735) zone "18.198.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "19.198.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; // IANA Reserved - Old Class E Space (RFC 5735) zone "240.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "241.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "242.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "243.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "244.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "245.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "246.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "247.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "248.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "249.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "250.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "251.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "252.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "253.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "254.in-addr.arpa" { type master; file "/etc/namedb/master/empty.db"; }; // IPv6 Unassigned Addresses (RFC 4291) zone "1.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "3.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "4.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "5.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "6.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "7.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "8.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "9.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "a.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "b.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "c.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "d.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "e.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "0.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "1.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "2.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "3.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "4.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "5.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "6.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "7.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "8.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "9.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "a.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "b.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "0.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "1.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "2.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "3.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "4.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "5.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "6.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "7.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; // IPv6 ULA (RFC 4193) zone "c.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "d.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; // IPv6 Link Local (RFC 4291) zone "8.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "9.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "a.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "b.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; // IPv6 Deprecated Site-Local Addresses (RFC 3879) zone "c.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "d.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "e.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; zone "f.e.f.ip6.arpa" { type master; file "/etc/namedb/master/empty.db"; }; // IP6.INT is Deprecated (RFC 4159) zone "ip6.int" { type master; file "/etc/namedb/master/empty.db"; }; // NB: Do not use the IP addresses below, they are faked, and only // serve demonstration/documentation purposes! // // Example slave zone config entries. It can be convenient to become // a slave at least for the zone your own domain is in. Ask // your network administrator for the IP address of the responsible // master name server. // // Do not forget to include the reverse lookup zone! // This is named after the first bytes of the IP address, in reverse // order, with ".IN-ADDR.ARPA" appended, or ".IP6.ARPA" for IPv6. // // Before starting to set up a master zone, make sure you fully // understand how DNS and BIND work. There are sometimes // non-obvious pitfalls. Setting up a slave zone is usually simpler. // // NB: Don"t blindly enable the examples below. :-) Use actual names // and addresses instead. /* An example dynamic zone key "exampleorgkey" { algorithm hmac-md5; secret "sf87HJqjkqh8ac87a02lla=="; }; zone "example.org" { type master; allow-update { key "exampleorgkey"; }; file "dynamic/example.org"; }; */ /* Example of a slave reverse zone zone "1.168.192.in-addr.arpa" { type slave; file "/etc/namedb/slave/1.168.192.in-addr.arpa"; masters { 192.168.1.1; }; }; */

ьФП РТЙНЕТЩ ПРЙУБОЙК РТСНПК Й ПВТБФОПК ЪПО ЙЪ ЖБКМБ named.conf ДМС ЧФПТЙЮОЩИ УЕТЧЕТПЧ.

дМС ЛБЦДПЗП ОПЧПК ЪПОЩ, ЛПФПТХА ВХДЕФ ПВУМХЦЙЧБФШ УЕТЧЕТ ЙНЈО, Ч ЖБКМ named.conf ДПМЦОБ ВЩФШ ДПВБЧМЕОБ ЪБРЙУШ.

л РТЙНЕТХ, УБНБС РТПУФБС ЪБРЙУШ ДМС ДПНЕОБ example.org НПЦЕФ ЧЩЗМСДЕФШ ЧПФ ФБЛ:

Zone "example.org" { type master; file "master/example.org"; };

ъПОБ СЧМСЕФУС РЕТЧЙЮОПК, ЮФП ПФТБЦБЕФУС Ч РПМЕ type , Й ЙОЖПТНБГЙС П ЪПОЕ ИТБОЙФУС Ч ЖБКМЕ /etc/namedb/master/example.org , ЮФП ХЛБЪЩЧБЕФУС Ч РПМЕ file .

Zone "example.org" { type slave; file "slave/example.org"; };

ч УМХЮБЕ ЧФПТЙЮОПК ЪПОЩ ЙОЖПТНБГЙС П ОЕК РЕТЕДБЕФУС У ПУОПЧОПЗП УЕТЧЕТБ ЙНЈО ДМС ЪБДБООПК ЪПОЩ Й УПИТБОСЕФУС Ч ХЛБЪБООПН ЖБКМЕ. еУМЙ Й ЛПЗДБ ПУОПЧОПК УЕТЧЕТ ЙНЈО ЧЩИПДЙФ Й УФТПС ЙМЙ ОЕДПУСЗБЕН, ФП УЛБЮБООБС ЙОЖПТНБГЙС П ЪПОЕ ВХДЕФ ОБИПДЙФШУС ОБ ЧФПТЙЮОЩИ УЕТЧЕТБИ, Й ПОЙ УНПЗХФ ПВУМХЦЙЧБФШ ЬФХ ЪПОХ.ОБЮБМП ЪПОЩ ПФЧЕФУФЧЕООПУФЙ

NS

БЧФПТЙФБФЙЧОЩК УЕТЧЕТ ЙНЕО

A

БДТЕУ ИПУФБ

CNAME

ЛБОПОЙЮЕУЛПЕ ЙНС ДМС БМЙБУБ

MX

ПВНЕО РПЮФПК

PTR

ХЛБЪБФЕМШ ОБ ДПНЕООПЕ ЙНС (ЙУРПМШЪХЕФУС Ч ПВТБФОЩИ ЪПОБИ DNS)

Example.org. IN SOA ns1.example.org. admin.example.org. (2006051501 ; Serial 10800 ; Refresh after 3 hours 3600 ; Retry after 1 hour 604800 ; Expire after 1 week 300) ; Negative Response TTL

Example.org.

ЙНС ДПНЕОБ, Б ФБЛЦЕ ПТЙДЦЙО ДМС ЬФПЗП ЖБКМБ ЪПОЩ.

ns1.example.org.

ПУОПЧОПК/БЧФПТЙФБФЙЧОЩК УЕТЧЕТ ЙНЈО ДМС ЬФПК ЪПОЩ.

admin.example.org.

ЮЕМПЧЕЛ, ПФЧЕЮБАЭЙК ЪБ ЬФХ ЪПОХ, БДТЕУ ЬМЕЛФТПООПК РПЮФЩ У УЙНЧПМПН @ >> ЪБНЕОЕООЩН ОБ ФПЮЛХ. ( УФБОПЧЙФУС admin.example.org)

2006051501

РПУМЕДПЧБФЕМШОЩК ОПНЕТ ЖБКМБ. рТЙ ЛБЦДПН ЙЪНЕОЕОЙЙ ЖБКМБ ЪПОЩ ЬФП ЮЙУМП ДПМЦОП ХЧЕМЙЮЙЧБФШУС. ч ОБУФПСЭЕЕ ЧТЕНС ДМС ОХНЕТБГЙЙ НОПЗЙЕ БДНЙОЙУФТБФПТЩ РТЕДРПЮЙФБАФ ЖПТНБФ ЗЗЗЗННДДЧЧ. 2006051501 ВХДЕФ ПЪОБЮБФШ, ЮФП ЖБКМ РПУМЕДОЙК ТБЪ ЙЪНЕОСМУС 15.05.2006, Б РПУМЕДОЕЕ ЮЙУМП 01 ПЪОБЮБЕФ, ЮФП ЬФП ВЩМБ РЕТЧБС НПДЙЖЙЛБГЙС ЖБКМБ ЪБ ДЕОШ. рПУМЕДПЧБФЕМШОЩК ОПНЕТ ЧБЦЕО, ФБЛ ЛБЛ ПО УМХЦЙФ ДМС ФПЗП, ЮФПВЩ ЧФПТЙЮОЩЕ УЕТЧЕТЩ ХЪОБЧБМЙ ПВ ПВОПЧМЕОЙЙ ЪПОЩ.

IN NS ns1.example.org.

ьФП NS-ЪБРЙУШ. фБЛЙЕ ЪБРЙУЙ ДПМЦОЩ ЙНЕФШУС ДМС ЧУЕИ УЕТЧЕТПЧ ЙНЈО, ЛПФПТЩЕ ВХДХФ ПФЧЕЮБФШ ЪБ ЪПОХ.

Localhost IN A 127.0.0.1 ns1 IN A 192.168.1.2 ns2 IN A 192.168.1.3 mx IN A 192.168.1.4 mail IN A 192.168.1.5

ъБРЙУЙ ФЙРБ A УМХЦБФ ДМС ПВПЪОБЮЕОЙС ЙНЈО НБЫЙО. лБЛ ЬФП ЧЙДОП ЧЩЫЕ, ЙНС ns1.example.org ВХДЕФ РТЕПВТБЪПЧБОП Ч 192.168.1.2 .

IN A 192.168.1.1

ьФБ УФТПЛБ РТЙУЧБЙЧБЕФ IP БДТЕУ 192.168.1.1 ФЕЛХЭЕНХ ПТЙДЦЙОХ, Ч ДБООПН УМХЮБЕ ДПНЕОХ example.org .

Www IN CNAME @

ъБРЙУЙ У ЛБОПОЙЮЕУЛЙНЙ ЙНЕОБНЙ ПВЩЮОП ЙУРПМШЪХАФУС ДМС РТЙУЧПЕОЙС НБЫЙОБН РУЕЧДПОЙНПЧ. ч ЬФПН РТЙНЕТЕ www СЧМСЕФУС РУЕЧДПОЙНПН ДМС ЗМБЧОПК >> НБЫЙОЩ, ЙНС ЛПФПТПК РП ЧПМЕ УМХЮБС УПЧРБМП У ЙНЕОЕН ДПНЕОБ example.org (192.168.1.1). ъБРЙУЙ ФЙРБ CNAME ОЕМШЪС ЙУРПМШЪПЧБФШ УПЧНЕУФОП У ДТХЗЙНЙ ФЙРБНЙ ЪБРЙУЕК ДМС ПДОПЗП Й ФПЗП ЦЕ ЙНЕОЙ ИПУФБ (recordname).

IN MX 10 mail.example.org.

MX-ЪБРЙУШ ХЛБЪЩЧБЕФ, ЛБЛЙЕ РПЮФПЧЩЕ УЕТЧЕТЩ ПФЧЕЮБАФ ЪБ ПВТБВПФЛХ ЧИПДСЭЕК ЬМЕЛФТПООПК РПЮФЩ ДМС ЪПОЩ. mail.example.org СЧМСЕФУС ЙНЕОЕН РПЮФПЧПЗП УЕТЧЕТБ, Б 10 ПВПЪОБЮБЕФ РТЙПТЙФЕФ ЬФПЗП РПЮФПЧПЗП УЕТЧЕТБ.

нПЦОП ЙНЕФШ ОЕУЛПМШЛП РПЮФПЧЩИ УЕТЧЕТПЧ У РТЙПТЙФЕФБНЙ, ОБРТЙНЕТ, 10, 20 Й ФБЛ ДБМЕЕ. рПЮФПЧЩК УЕТЧЕТ, РЩФБАЭЙКУС ДПУФБЧЙФШ РПЮФХ ДМС example.org , УОБЮБМБ РПРТПВХЕФ УЧСЪБФШУС У НБЫЙОПК, ЙНЕАЭЙК MX-ЪБРЙУШ У УБНЩН ВПМШЫЙН РТЙПТЙФЕФПН (ОБЙНЕОШЫЙН ЮЙУМПЧЩН ЪОБЮЕОЙЕН Ч РПМЕ MX), ЪБФЕН У РТЙПТЙФЕФПН РПНЕОШЫЕ Й ФБЛ ДБМЕЕ, ДП ФЕИ РПТ, РПЛБ РПЮФБ ОЕ ВХДЕФ ПФРТБЧМЕОБ.

дМС ЖБКМПЧ ЪПО in-addr.arpa (ПВТБФОЩЕ ЪБРЙУЙ DNS) ЙУРПМШЪХЕФУС ФПФ ЦЕ УБНЩК ЖПТНБФ, ПФМЙЮБАЭЙКУС ФПМШЛП ЙУРПМШЪПЧБОЙЕН ЪБРЙУЕК PTR ЧНЕУФП A ЙМЙ CNAME.

$TTL 3600 1.168.192.in-addr.arpa. IN SOA ns1.example.org. admin.example.org. (2006051501 ; Serial 10800 ; Refresh 3600 ; Retry 604800 ; Expire 300) ; Negative Response TTL IN NS ns1.example.org. IN NS ns2.example.org. 1 IN PTR example.org. 2 IN PTR ns1.example.org. 3 IN PTR ns2.example.org. 4 IN PTR mx.example.org. 5 IN PTR mail.example.org.

ч ЬФПН ЖБКМЕ ДБЕФУС РПМОПЕ УППФЧЕФУФЧЙЕ ЙНЈО ИПУФПЧ IP-БДТЕУБН Ч ОБЫЕН ПРЙУБООПН ТБОЕЕ ЧЩНЩЫМЕООПН ДПНЕОЕ.

уМЕДХЕФ ПФНЕФЙФШ, ЮФП ЧУЕ ЙНЕОБ Ч РТБЧПК ЮБУФЙ PTR-ЪБРЙУЙ ДПМЦОЩ ВЩФШ РПМОЩНЙ ДПНЕООЩНЙ ЙНЕОБНЙ (ФП ЕУФШ, ЪБЛБОЮЙЧБФШУС ФПЮЛПК . chroot (8) ); РПНЙНП ЬФПЗП, ЕУФШ ЕЭЕ ОЕУЛПМШЛП НЕИБОЙЪНПЧ, РПНПЗБАЭЙИ ЪБЭЙФЙФШУС ПФ ЧПЪНПЦОЩИ БФБЛ ОБ УЕТЧЙУ DNS .

чЕУШНБ РПМЕЪОП РТПЮЕУФШ УППВЭЕОЙС ВЕЪПРБУОПУФЙ CERT Й РПДРЙУБФШУС ОБ ДМС ФПЗП, ЮФПВЩ ВЩФШ Ч ЛХТУЕ ФЕЛХЭЙИ РТПВМЕН У ПВЕУРЕЮЕОЙЕН ВЕЪПРБУОПУФЙ Internet Й FreeBSD.

рПДУЛБЪЛБ:

еУМЙ ЧПЪОЙЛБЕФ РТПВМЕНБ, ФП ОБМЙЮЙЕ РПУМЕДОЙИ ЙУИПДОЩИ ФЕЛУФПЧ Й УЧЕЦЕУПВТБООПЗП named НПЦЕФ УРПУПВУФЧПЧБФШ ЕЈ ТЕЫЕОЙА.