URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 39392
[ Назад ]

Исходное сообщение
"OpenNews: Настройка DNS сервера на базе пакета BIND с хранением зон в MySQL"

Отправлено opennews , 14-Дек-07 11:08 
В статье "Setting up a BIND DLZ Nameserver with MySQL Replication (http://www.zazzybob.com/bind_dlz.html)" представлен пример настройки  DNS сервера, распределенного для повышения надежности на несколько серверов, через хранение данных в  MySQL с применением репликации данных.


Для хранения данных в БД используется патч bind-dlz (http://bind-dlz.sourceforge.net/), обеспечивающий поддержку БД
Berkeley DB, PostgreSQL, MySQL ODBC (thus Firebird, DB2, Oracle, Sybase, SAPDB) или LDAP. Следует заметить, что при использовании bind-dlz сильно понижается (http://bind-dlz.sourceforge.net/perf_tests.html) производительность, по сравнению с оригинальным bind.


URL: http://www.zazzybob.com/bind_dlz.html
Новость: http://www.opennet.ru/opennews/art.shtml?num=13254


Содержание

Сообщения в этом обсуждении
"Настройка DNS сервера на базе пакета BIND с хранением зон в MySQL"
Отправлено rxx_void , 14-Дек-07 11:08 
нуу и зачем оно нужно ? надёжность ?

"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено sauron , 14-Дек-07 11:19 
Для руления очень большими зонами. А то знаете BIND их в памяти хранит. Хотя лучше для этого заюзать PowerDNS. Он лучше с базами работает.

"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено GR , 14-Дек-07 11:34 
Например для хостингов, позволить через веб фигачить клиентам свои зонны. Вообще кашерней  в базе инфу хранить.

"Настройка DNS сервера на базе пакета BIND с хранением зон в MySQL"
Отправлено amix , 14-Дек-07 11:18 
при большом кол-ве зон, на мощном железе можно уступить производительность в обмен на управляемость.

"Настройка DNS сервера на базе пакета BIND с хранением зон в MySQL"
Отправлено dawnshade , 14-Дек-07 11:37 
кстати в FreeBSD 6.3-PRE уже из коробки этот функционал, не в курсе либо в 9,4 бинд это втянули, либо патчат руками.

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


"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено reaper , 14-Дек-07 12:34 
>кстати в FreeBSD 6.3-PRE уже из коробки этот функционал, не в курсе
>либо в 9,4 бинд это втянули, либо патчат руками.

шо, серьезно? пошел обновляться :)


"Настройка DNS сервера на базе пакета BIND с хранением зон в MySQL"
Отправлено vbv , 14-Дек-07 13:36 
На мой взгляд вещь без смыла :(
rndc с ключами для руления ни кто не отменял.
Память дешевая. Не могу представить размера базы, что бы надо было это хранить в СУБД.

"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено dawnshade , 14-Дек-07 14:25 
>На мой взгляд вещь без смыла :(
>rndc с ключами для руления ни кто не отменял.
>Память дешевая. Не могу представить размера базы, что бы надо было это
>хранить в СУБД.

а зря.
mysql> select count(*) from records;
+----------+
| count(*) |
+----------+
|  5790753 |
+----------+
1 row in set (3 min 19.16 sec)


"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено dawnshade , 14-Дек-07 14:26 
>[оверквотинг удален]
>>хранить в СУБД.
>
>а зря.
>mysql> select count(*) from records;
>+----------+
>| count(*) |
>+----------+
>|  5790753 |
>+----------+
>1 row in set (3 min 19.16 sec)

а еще на этой базе ваш любимый rndc тупо валится по таймауту.


"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено vbv , 18-Фев-08 14:27 
>[оверквотинг удален]
>>mysql> select count(*) from records;
>>+----------+
>>| count(*) |
>>+----------+
>>|  5790753 |
>>+----------+
>>1 row in set (3 min 19.16 sec)
>
>а еще на этой базе ваш любимый rndc тупо валится по таймауту.
>

Если Вы ведете корневой DNS это другой разговор.
Но иначе, если у Вас в зарегистрировано 5790753 записей в DNS, надо понять для чего такой номер может вообще понадобиться.
Извините но представить вменяемую конфигурация для которой может понадобиться такое кол-во записей - мягко говоря сложно :(


"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено dawnshade , 18-Фев-08 14:33 
>Извините но представить вменяемую конфигурация для которой может понадобиться такое кол-во записей
>- мягко говоря сложно :(

развивайте воображение :)
локальный RBL некрупного релея.


"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено vbv , 18-Фев-08 15:15 
>>Извините но представить вменяемую конфигурация для которой может понадобиться такое кол-во записей
>>- мягко говоря сложно :(
>
>развивайте воображение :)
>локальный RBL некрупного релея.

Ну хорошо, если для локального - то зачем пихать это хозяйство в DNS....
Есть более простые и более производительные способы. Как вариант складывать в файл и блокировать (выборка grep'ом):)

Если же мы делаем открытый RBL там возможно такое и нужно,
хотя если я делал бы - наверно выбрал другой путь (надо подумать но в базу пихать бы не стал).

По поводу спама вообще - RBL для меня не применимо, и (мое личное мнение!) это баловство.
т.к. машины к-е рассылают спам, как правило являются зараженными и т.о. в блокировку попадают целые организации.
Мне лично по душе пришелся SPF работает достаточно надежно, да не все его сейчас поддерживают но я думаю это вопрос времени.
И не мешало бы провайдерам всяких ADSL отказаться от прописывания реверсной зоны, а по RFC почтовик обязан иметь реверсную зону, как вариант проверять и это.
А вот в случае больших пулов и возникают громадные базы адресов.

А как только человек поймал вируса - его в топку, ну на мой взгляд это не совсем правильно. А если он вылечился. :)

PS: Если делать по уму глупостей можно и избежать. (Это мое личное мнение не претендующее на истину в последней инстанции.)


"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено Аноним , 14-Дек-07 15:32 
т.е. 3минуты 19секунд база лежала? :)

"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено dawnshade , 14-Дек-07 15:33 
>т.е. 3минуты 19секунд база лежала? :)

это откуда вывод что mysql на select count(*) ложит базу??


"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено reaper , 14-Дек-07 16:08 
>>т.е. 3минуты 19секунд база лежала? :)
>
>это откуда вывод что mysql на select count(*) ложит базу??

от незнания


"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено Аноним , 14-Дек-07 18:53 
count(*) по несчасным 5 лимонам строк шел ____ТРИ____ минуты! В топку мыскль!

"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено replicant , 15-Дек-07 13:19 
Простите, а у вас mysql не на pentium 133 mhz 32 ram работает?

select count(*) from tables;

Запрос занял 0.0003 сек

count(*)  
23519676


"Настройка DNS сервера на базе пакета BIND с хранением зон в MySQL"
Отправлено chip , 14-Дек-07 13:36 
>> представлен пример настройки DNS сервера, распределенного для повышения надежности на несколько серверов, через хранение данных в MySQL с применением репликации данных.

Звучит достаточно идиотично в свете наличия в DNS своей AXFR/IXFR. bind в своей нише замечательно справляется с возложенными на него задачами, если требуется что-то большее то powerdns вполне подойдет.


"Настройка DNS сервера на базе пакета BIND с хранением зон в MySQL"
Отправлено Николай , 14-Дек-07 14:05 
Ерунда полная
Да, данные надо хранить в базе, и управлять ими в базе
Но ещё и работать напрямую с базой - увольте
Никакой секурности, надежности, и производительности.
Может апачу сразу виртхосты из базы брать, и sshd в mysql лезть за паролем акка?
У каждого приложения свой формат данных, обезспечивающий нужную функциональность и прозводительность, надо всего-навсего писать фильтры, который из данных в базе будут генерить конфиги для приложений.

"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено reaper , 14-Дек-07 14:29 
>Может апачу сразу виртхосты из базы брать, и sshd в mysql лезть
>за паролем акка?

за этим к libnss-mysql :)


"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено GR , 14-Дек-07 20:18 
>Ерунда полная
>Да, данные надо хранить в базе, и управлять ими в базе
>Но ещё и работать напрямую с базой - увольте
>Никакой секурности, надежности, и производительности.

Это вы разработчикам ldap скажите.


"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено fi , 14-Дек-07 21:11 
>Это вы разработчикам ldap скажите.

Не поверите, это они и говорят :) - не используйте SQL backend для праймори.


"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено GroundBeat , 14-Дек-07 21:30 
>Ерунда полная
>Да, данные надо хранить в базе, и управлять ими в базе
>Но ещё и работать напрямую с базой - увольте
>Никакой секурности, надежности, и производительности.
>Может апачу сразу виртхосты из базы брать, и sshd в mysql лезть
>за паролем акка?

PAM хорошая штука, уважаемый, и тоже имеет право на жизнь.
Не надо вешать ярлыки.
Пока не нашли устраивающего всех баланса секурности, надёжности, производительности и удобства. Если бы не пидорги-параноики поломавшие SMTP, может он так Simple и остался бы всем на радость.


"Настройка DNS сервера на базе пакета BIND с хранением зон в MySQL"
Отправлено Sampan , 14-Дек-07 14:31 
Типичное юношеское увлечение. Чего только не хранят в mysql! Два десятка учетных записей, файл hosts, а теперь и зоны DNS.

Бред это! База данных типа mysql прежде всего заточена под оптимальное обслуживание интенсивных запросов чтения - записи в равных пропорциях. У любого DNS сервера соотношение запросов чтения к транзакциям записи, наверное, 999 к 1. Именно по этому BIND хранит зоны в памяти, а обновляет их пинком rndc. Люди, писавшие сей патч - может они и программисты (в смысле, знают С), но это очень ГЛУПЫЕ программисты.


"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено dawnshade , 14-Дек-07 14:37 
>Типичное юношеское увлечение. Чего только не хранят в mysql! Два десятка учетных
>записей, файл hosts, а теперь и зоны DNS.
>
>Бред это! База данных типа mysql прежде всего заточена под оптимальное обслуживание
>интенсивных запросов чтения - записи в равных пропорциях.

Это кто вам такую глупость сказал?
Покажите мне, например, где на http://dev.mysql.com/doc/refman/5.1/en/introduction.html это написано?

для сравнения кэши запросов:

Cache hitrate, 1, 5, 10 minute averages: 4.2%, 7.5%, 9.1%
Backend query cache hitrate, 1, 5, 10 minute averages: 57%, 57%, 57%


"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено uldus , 14-Дек-07 14:52 
>Бред это! База данных типа mysql прежде всего заточена под оптимальное обслуживание
>интенсивных запросов чтения - записи в равных пропорциях.

MySQL как раз на чтение заточена и очень редкую запись :-) При интенсивной записи, табличные блокировки в MyISAM убивают производительность.

Bind-dlz оправданная штука, только кэширования нормального не хватает, типа интегрированного memcached с возможностью задания таймаута для записей в базе.


"Настройка DNS сервера на базе пакета BIND с хранением зон в MySQL"
Отправлено Аноним , 14-Дек-07 17:26 
Мне PowerDNS очень уж нравится, сейчас зона на 3000 записей - хавает 6 метров оперативы и не грузит камень.
База юзается - sqlite...

"Настройка DNS сервера на базе пакета BIND с хранением зон в MySQL"
Отправлено SunTech , 14-Дек-07 17:38 
Можно бинд спрятать за кешируюищим сервером, чтобы основную нагрузку по отдаче воспринимал последний, а бинд будет просто из базы брать и отдавать при cache miss.

"OpenNews: Настройка DNS сервера на базе пакета BIND с хранен..."
Отправлено SubGun , 14-Дек-07 18:08 
Честно говоря, с трудом себе представляю эту картину. Особенно если учитывать, что BIND грузится гораздо раньше MySQL.

"OpenNews: Настройка DNS сервера на базе пакета BIND с хранен..."
Отправлено reaper , 14-Дек-07 18:12 
>Честно говоря, с трудом себе представляю эту картину.

а чего там представлять? поставь и посмотри в действии, благо времени отнимает немного

>Особенно если учитывать, что
>BIND грузится гораздо раньше MySQL.

это тут каким боком?


"Настройка DNS сервера на базе пакета BIND с хранением зон в MySQL"
Отправлено shutdown now , 14-Дек-07 18:58 
во фряшных портах этот патч давно
использование вполне конкретное - для авторитетного сервера с кучей зон
понятия первичный и вторичный неуместно, синхронизация зон происходит за счёт репликации mysql
такой сервер очень удобно использовать с какой-либо хостинговой панелью, можно легко отдать контроль за доменом пользователю

"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено GR , 14-Дек-07 20:23 
+1


"Настройка DNS сервера на базе пакета BIND с хранением зон в ..."
Отправлено Vladimir , 20-Дек-07 10:08 
Вообще хорошая штука но я так и не понял поддерживает ли он отсылку уведомлений об изменениях зоны другим серверам, на которых не стоит bind-dlz