[devel] [sisyphus] bind-utils и русские домены

Victor Forsiuk force на altlinux.org
Ср Апр 13 13:52:06 UTC 2011


2011/3/28 Aleksey Novodvorsky <aen на altlinux.ru>:
> 24 февраля 2011 г. 17:54 пользователь Victor Forsiuk
> <force на altlinux.org> написал:
>>
>>
>> 2011/2/23 Andrii Dobrovol`s`kii <dobr на iop.kiev.ua>
>>>
>>> >
>>> Может временным решением может быть сборка параллельного пакета?
>>> С постепенной притиркой всего багажа патчей и аудитом кода...
>>> Кому важней уверенность -- ставит старый, кому необходимы новые
>>> возможности -- новый. Как будут выполнены все запланированные
>>> работы, "отстрел" старого пакета...
>>
>> Мысль, как я вижу, назрела. Андрей синхронно со мной предложил.
>>
>> Я потихоньку готовлю пакет. Начну с включения IPv6 и GSS TSIG.
>
> Виктор, процесс идет?

Процесс привел к появлению в сизифе (4 апреля) пакета
bind9.8-9.8.0-alt0.1. Большое спасибо Дмитрию Афанасову за
портирование патчей к 9.3.6 на эту версию!

Подозреваю, что не все заметили его появление - это ведь параллельный
пакет, а не вытесняющий bind. Поэтому анонсирую его тут и призываю
активнее тестировать. Все изменения отражены в ченжлоге, вкратце самые
важные:
- поддержка IDN
- поддержка IPv6
- поддержка GSSAPI (т.е., bind может работать с AD)
- собран как "легкий" вариант named, так и с поддержкой драйверов
загружаемых зон - SDB и DLZ

Две последние фичи - это конкретные вкусности свежего bind (а, еще
легкий доступ к статистике, по http), а вот корректную работу с IDN и
IPv6 я предлагаю рассматривать как обязательные свойства всех сетевых
приложений. Вплоть до блокеров на пакеты, которые собраны без их
поддержки...

Известный недостаток в этой сборке bind 9.8 - плохая работа с
pid-файлом. Хотя, и в bind-9.3.6-alt6 тоже не всё корректно работает,
только по-другому.

При запуске без ключика командной строки (-i) и с пустым значением
опции pid-file теперь pidfile просто не создается. В 9.3.6 в такой
ситуации pidfile появлялся в /var/run/named и корректно удалялся при
завершении работы bind.

Если указать pathname pid-файла в конфиге (например, pid-file
"/var/run/named/named.pid"), то такой файл создается относительно
chroot'а. Вообще говоря, это не то, чего хотелось бы :(. А вот в 9.3.6
значение опции конфига, как оказалось, просто игнорируется: что туда
ни пиши, используется /var/run/named.pid.

Второй момент более неприятен. По завершении работы свежего bind'а с
вышеупомянутыми патчами pid-файл не удаляется.

На "скорость полета" это, как говорится, не влияет, можно и без
pid-файла обходится. Но если у кого-то есть желание сделать в этом
месте красиво - было бы совсем хорошо. У меня с этим возиться
мотивации крайне мало.

В принципе, напрашивается _очень_ костыльное решение: до вызова chroot
вставить код открытия лежащего под чрутом конфига, парсинга оттуда
пути к pid-файлу и открытия его ДО захода в chroot.... Хотя это
грязный хак и апстрим такое никогда не примет... :( Видимо, лучше
просто хорошо откомментировать этот момент в конфиге и перевести
стрелки на "-i".


Что еще... Я не могу найти ни одного аргумента, который бы убедил
меня, что bind 9.3.6 чем-то безопаснее 9.8.0...

И, коллеги, не только в отношении bind, - давайте примем как аксиому,
что софт не умеющий работать с IPv6 и IDN в новый бранч попасть не
должен...


Подробная информация о списке рассылки Devel