Готовится статья о DNS сервере Unbound

Проблемы с установкой, настройкой и работой системных и сетевых программ.

Модераторы: GRooVE, alexco

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение terminus » 2008-07-25 14:26:41

Мда 50 000 запросов это не слабо... Я сейчас на одном своем ради шутки выставил:

Код: Выделить всё

msg-cache-size: 100k
msg-cache-slabs: 1
rrset-cache-size: 200k
rrset-cache-slabs: 1
Но никаких сообщений об ошибках получить не удалось. Там правда запросов намного меньше...

В общем у меня идеи кончились. :sorry:
Может, если у вас есть время/интерес, опишете свою проблему и отправите разработчикам в лист unbound-users@unbound.net ? Было бы интересно проследить ...
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

seacat23
проходил мимо

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение seacat23 » 2008-07-25 14:32:39

Мне вот интересно можно ли верить статистике. Судя по ней то получается что ~100К запросов за 5мин.

Код: Выделить всё

[1216976067] unbound[4259:0] info: server stats for thread 0: 25475 queries, 13867 answers from cache, 11608 recursions
[1216976067] unbound[4259:1] info: server stats for thread 1: 25578 queries, 14121 answers from cache, 11457 recursions
[1216976067] unbound[4259:2] info: server stats for thread 2: 24888 queries, 13736 answers from cache, 11152 recursions
[1216976067] unbound[4259:3] info: server stats for thread 3: 26165 queries, 14340 answers from cache, 11825 recursions

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение terminus » 2008-07-25 14:44:46

Запустил на тестовой машине, и сделал 4 запроса. Статистика за 5мин:

Код: Выделить всё

[1216985735] unbound[1014:0] notice: init module 0: iterator
[1216985735] unbound[1014:0] info: start of service (unbound 1.0.1).
[1216986036] unbound[1014:3] info: server stats for thread 0: 3 queries, 0 answers from cache, 3 recursions
[1216986036] unbound[1014:3] info: server stats for thread 0: requestlist max 0 avg 0 exceeded 0
[1216986036] unbound[1014:3] info: average recursion processing time 0.151486 sec
[1216986036] unbound[1014:3] info: histogram of recursion processing times
[1216986036] unbound[1014:3] info: [25%]=0 median[50%]=0 [75%]=0
[1216986036] unbound[1014:3] info: lower(secs) upper(secs) recursions
[1216986036] unbound[1014:3] info:    0.008192    0.016384 1
[1216986036] unbound[1014:3] info:    0.065536    0.131072 1
[1216986036] unbound[1014:3] info:    0.262144    0.524288 1
[1216986036] unbound[1014:3] info: server stats for thread 1: 0 queries, 0 answers from cache, 0 recursions
[1216986036] unbound[1014:3] info: server stats for thread 1: requestlist max 0 avg 0 exceeded 0
[1216986036] unbound[1014:3] info: server stats for thread 2: 0 queries, 0 answers from cache, 0 recursions
[1216986036] unbound[1014:3] info: server stats for thread 2: requestlist max 0 avg 0 exceeded 0
[1216986036] unbound[1014:3] info: server stats for thread 3: 1 queries, 0 answers from cache, 1 recursions
[1216986036] unbound[1014:3] info: server stats for thread 3: requestlist max 0 avg 0 exceeded 0
[1216986036] unbound[1014:3] info: average recursion processing time 0.142721 sec
[1216986036] unbound[1014:3] info: histogram of recursion processing times
[1216986036] unbound[1014:3] info: [25%]=0 median[50%]=0 [75%]=0
[1216986036] unbound[1014:3] info: lower(secs) upper(secs) recursions
[1216986036] unbound[1014:3] info:    0.131072    0.262144 1
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение terminus » 2008-07-25 15:42:19

Кому интересно чем дело кончится - там в листе уже пошли ответы:
http://www.unbound.net/pipermail/unboun ... hread.html
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение ProFTP » 2008-07-26 15:41:41

а как базу данных с таблицами прикрутить? чтобы она работала на прямую? и конифгурировать с помошью web скриптов самписных!!

и какой DNS держит всю инофрмацию в mysql таблицах, или в DB на основе СУБД?
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение terminus » 2008-07-28 9:46:18

ProFTP писал(а):а как базу данных с таблицами прикрутить? чтобы она работала на прямую? и конифгурировать с помошью web скриптов самписных!!

и какой DNS держит всю инофрмацию в mysql таблицах, или в DB на основе СУБД?
Unbound с базами не работает - ему нечего там держать (кроме конфига).

NSD так же не имеет такой функциональности - данные зон хранятся в текстовых файлах/бинарных кеш-файлах. Принципиально к NSD можно прикрутить базу, но т.к. встороенной поддержки нет, то это будет самописный скрипт которых выдергивает данные из таблицы, сохраняет как текстовый файл зоны и запускает nsdc rebuild...
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение ProFTP » 2008-07-28 23:42:41

есть для работы с базами говрят хорошо PowerDNS

и еще вот http://www.zazzybob.com/bind_dlz.html
terminus писал(а): это будет самописный скрипт которых выдергивает данные из таблицы, сохраняет как текстовый файл зоны и запускает nsdc rebuild...
но все таки лучше сделать базой,

еще можно будет через sudo, но безопасно всё время sudo запускать?

а в базу вы наверное имеете ввиду поставить номер строки в файле и это будет зоной? а скрипт который будет брать из базы и записывать в файл будет запускаться каждые 5 мин?
но это по-моиму не очень хороший вариант, но решаемо на perl, только писать не хочеться :)
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

seacat23
проходил мимо

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение seacat23 » 2008-07-30 10:07:23

Итак проблему падения удалось решить. :"":

Код: Выделить всё

#!/bin/sh
ulimit -d 533504 -n 1024
/usr/local/sbin/unbound

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35139
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение Alex Keda » 2008-07-30 10:08:45

а ядрёные параметры всё равно же не перепрыгнешь...
Убей их всех! Бог потом рассортирует...

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение terminus » 2008-07-30 10:21:36

В FreeBSD 6.2 лимиты по умолчанию такие (какие в 7.0 не могу сейчас посмотреть...)

Код: Выделить всё

ulimit -a
core file size          (blocks, -c) unlimited
data seg size           (kbytes, -d) 524288
file size               (blocks, -f) unlimited
max locked memory       (kbytes, -l) unlimited
max memory size         (kbytes, -m) unlimited
open files                      (-n) 957
pipe size            (512 bytes, -p) 1
stack size              (kbytes, -s) 65536
cpu time               (seconds, -t) unlimited
max user processes              (-u) 478
virtual memory          (kbytes, -v) unlimited
Вы запускаете на NetBSD? Какие там были ulimit -a по умолчанию?

Спасибо за комменты - предупреждение на счет дескрипторов я уже внес в статью. Теперь внесу еще и на счет data seg size. :good:

И что, он у вас реально пропускает через себя 100К запросов, а BIND на той же машине выдавал 50К? Оно того стоит по-ходу ;-)
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

seacat23
проходил мимо

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение seacat23 » 2008-07-30 10:32:43

За работаю на NetBSD 3.1.1 (Нет пока времени обновиться до 4)

Код: Выделить всё

core file size        (blocks, -c) unlimited
data seg size         (kbytes, -d) 131072
file size             (blocks, -f) unlimited
max locked memory     (kbytes, -l) 1022510
max memory size       (kbytes, -m) 3067532
open files                    (-n) 64
pipe size          (512 bytes, -p) 1
stack size            (kbytes, -s) 2048
cpu time             (seconds, -t) unlimited
max user processes            (-u) 160
virtual memory        (kbytes, -v) 133120
FreeBSD 7.0-STABLE

Код: Выделить всё

cpu time               (seconds, -t)  unlimited
file size           (512-blocks, -f)  unlimited
data seg size           (kbytes, -d)  524288
stack size              (kbytes, -s)  65536
core file size      (512-blocks, -c)  unlimited
max memory size         (kbytes, -m)  unlimited
locked memory           (kbytes, -l)  unlimited
max user processes              (-u)  5547
open files                      (-n)  11095
virtual mem size        (kbytes, -v)  unlimited
sbsize                   (bytes, -b)  unlimited

seacat23
проходил мимо

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение seacat23 » 2008-07-30 10:34:48

И что, он у вас реально пропускает через себя 100К запросов, а BIND на той же машине выдавал 50К? Оно того стоит по-ходу
Ну поживём увидим. Вот думаю как теперь статистику снимать. :unknown:

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение terminus » 2008-07-30 10:49:15

А в BIND статистика снималась через SNMP или локально? Мне самому было бы интересно адаптировать тот Cacti скрипт для сбора локальной статистики, но не обещаю что у меня получится...
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35139
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение Alex Keda » 2008-07-30 10:50:41

http://forum.lissyara.su/viewtopic.php? ... mit#p39532
некоторые - не совсем такие и зашиты жёстко
Убей их всех! Бог потом рассортирует...

seacat23
проходил мимо

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение seacat23 » 2008-07-30 13:25:30

terminus писал(а):А в BIND статистика снималась через SNMP или локально? Мне самому было бы интересно адаптировать тот Cacti скрипт для сбора локальной статистики, но не обещаю что у меня получится...
через SNMP

pomka
проходил мимо

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение pomka » 2008-08-05 11:33:48

Подскажите, прописал в конфигурационном файле unbound опцию stub-zone:
stub-zone:
name: "example.com"
stub-addr: 192.168.1.253

Но nsd не отвечает на итерационные запросы. Если прописываю forward-zone, то все ОК, но запросы получется рекурсивные. Но ведь это не верно?

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение terminus » 2008-08-05 13:03:19

Оба сервера - Unbound и NSD, запущены на одном сервере или на разных?
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

Гость
проходил мимо

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение Гость » 2008-08-05 13:11:03

terminus писал(а):Оба сервера - Unbound и NSD, запущены на одном сервере или на разных?
На одном, на разных интерфейсах

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение terminus » 2008-08-05 13:15:43

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

Получив такой запрос он старается ответить на него той информацией которой распологает в своих зонах.
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение terminus » 2008-08-05 13:23:53

Гость писал(а):
terminus писал(а):Оба сервера - Unbound и NSD, запущены на одном сервере или на разных?
На одном, на разных интерфейсах

Я примерно знаю почему так - у меня была похожая трабла.
Смотрите, скажем Unbound запущен на IP 1.2.3.4, а NSD запущен на IP 1.2.3.5...
Проверьте на NSD в файле зоны example.com какие там стоят NS и на какой адркec они указывают?
Я так думаю, что там:

example.com. NS ns.example.com.
ns.example.com. A 1.2.3.4
вместо
ns.example.com. A 1.2.3.5

Поэтому, когда Unbound проводит итерационное разрешение имени www.example.com он, получив то NSD ответ что NS для example.com = ns.example.com = 1.2.3.4 идет не туда (сам на себя выходит).

А когда Unbound проводит рекурсивное разрешение имени www.example.com то NSD не отвечает ему о NS, а сразу же, сам, отвечает о www.example.com
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.

pomka
проходил мимо

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение pomka » 2008-08-05 13:28:45

Да нет, вроде все ОК:

Код: Выделить всё

$TTL 1h
@       IN      SOA     ns1.yar.[fake].local.        admin.yar.[fake].ru.  (
        2008080402      ; Serial
        3h              ; Refresh
        1h              ; Retry
        1w              ; Expiry
        1d              ; TTL
)
                NS      ns1.[fake].local

ns1             A       192.168.1.253
nsd висит на 192.168.1.253
unbound на 192.168.254.252


pomka
проходил мимо

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение pomka » 2008-08-05 13:37:07

terminus писал(а):На счет второй части вопроса про рекурсию - да, NSD позволяет отсылать на него рекурсивные запросы, но только такие, которые относятся к его зонам и данным в них. Никакие другие рекурсивные запросы он не обслуживает.

Получив такой запрос он старается ответить на него той информацией которой распологает в своих зонах.
Это верно, он отвечает и при обращении клиента. Но вот почему на итерационные запросы не отвечает?

Аватара пользователя
terminus
майор
Сообщения: 2305
Зарегистрирован: 2007-10-29 11:27:35
Откуда: Рига

Re: Готовится статья о DNS сервере Unbound

Непрочитанное сообщение terminus » 2008-08-05 14:10:28

У меня есть аналогичная конфигурация где оба висят на разных IP и используется stub-zone - это работает... Надо дебажить.

Включите в unbound логирование в файл с вербозностью 3 и посмотрите что он делает, когда указано

Код: Выделить всё

stub-zone:
name: "example.com"
stub-addr: 192.168.1.253


и когда

Код: Выделить всё

forward-zone:
name: "example.com"
forward-addr: 192.168.1.253
Попробуйте с локального хоста nslookup'ом поспрашивать NSD о NS записях для того домена, посылая ему итерационные запросы.


---

зона называется [fake].local. и там указано это?

Код: Выделить всё

$TTL 1h
@       IN      SOA     ns1.yar.[fake].local.        admin.yar.[fake].ru.  (
        2008080402      ; Serial
        3h              ; Refresh
        1h              ; Retry
        1w              ; Expiry
        1d              ; TTL
)
                NS      ns1.yar.[fake].local.

ns1.yar             A       192.168.1.253
Модель: AST-PM-105/0044; Тип: Универсальный, ремонтный; Название: Терминус; Род повреждения: Распад функций; Выводы: Сдать на слом.