Выпуск DNS-сервера BIND 10 1.2.0 ознаменовал передачу проекта сообществу
Консорциум ISC опубликовал второе значительное обновление проекта BIND 10 — 1.2.0, в рамках которого развивается универсальный фреймворк для построения элементов интернет-инфраструктуры, таких как серверы DNS и DHCP. Выпуск примечателен завершением стадии развития проекта под покровительством консорциума ISC и передачей проекта сообществу, что подразумевает переход к более открытой и независимой модели разработки. Сообщается, что у консорциума ISC нет ресурсов для одновременного развития двух альтернативных проектов — BIND 9 и BIND 10, поэтому ISC продолжит разработку более широко используемого BIND 9, а BIND 10 передаст в руки сообщества. Для избежания путаницы с BIND 9, развиваемый силами сообщества проект будет распространяться под новым именем Bundy. Релизов BIND 10 больше выпускаться не будет, вместо них будут представлены выпуски Bundy. Весь груз по развитию и сопровождению кодовой базы передаётся заинтересованным лицам из сообщества и других компаний, официально ISC в разработке больше участвовать не будет. Код проекта будет перенесён на GitHub.
Ожидается, что расширение круга разработчиков, работающих над Bundy и изучающих этот код, приведёт к ускорению процесса выявления и исправления ошибок, а более открытый процесс развития Bundy даст возможность самостоятельно развивать необходимые функции, необходимость наличия которых может быть неочевидна при централизованной координации разработки. Разработка DHCP-сервера из состава BIND 10 вынесена в отдельный субпроект Kea и будет развиваться в качестве обособленного DHCP-сервера на базе технологий BIND 10. При этом, наработки Kea также могут входить в состав релизов Bundy.
BIND 10 отличается переходом на новую внутреннюю архитектуру, подразумевающую запуск вместо монолитного процесса named серии сервисов, взаимодействующих через стандартные интерфейсы, каждый из которых выполняет свою узкоспециализированную функцию. Разделение по разным процессам позволяет более рационально использовать ресурсы многоядерных систем, даёт возможность более тонко управлять изоляцией процессов и повышает надёжность.
В виде отдельных модулей оформлены резолвер, подсистема для хранения данных, система обслуживания DNS-зон, авторитативный DNS-сервер, динамический DNS-сервер (DDNS), реализация протокола DNSSEC, механизм верификации TSIG, сервисы перенаправления запросов (forwarder), система накопления статистики, менеджер конфигурации, интерфейс для удалённого управления работой. Среди особенностей BIND 10 можно упомянуть поддержку различных моделей хранения данных (в том числе для хранения зон в SQL-базах), повышенную масштабируемость, повышение стойкости к DoS атакам, возможность акселерации выполнения запросов через схему бэкенд-фронтенд, поддержку кластеризации. Подробнее об архитектуре BIND 10 можно прочитать в анонсе первого выпуска данной системы.
Особенности новой версии BIND 10 1.2.0:
Учёт статистики входящих загрузок DNS-зон (incoming zone transfer); Поддержка RR-записей CAA (RFC 6844, Certification Authority Authorization) и TLSA (RFC 6698, DNS-Based Authentication of Named Entities Transport Layer Security Protocol); Поддержка директивы $GENERATE для генерации файлов зон для загрузчика зон; Опций «use_ixfr» конфигурации b10-xfrin объявлена устаревшей, вместо неё следует использовать «zones/request_ixfr»; В реализации DHCP-сервера добавлена поддержка ретранслированного (relayed) трафика DHCPv6; Добавлен модуль b10-dhcp-ddns для динамического обновления DNS; Представлен новый фреймворк Hooks для кастомизации и расширения поведения DHCP; Добавлены новые опции Vendor Class (обратная отправка client-id), Client FQDN и DHCPv4 Host Name; Поддержка делегирования префикса (опции IA_PD и IAPREFIX); Добавлены базовые средства для классификации клиентов; Возможность ответа на запросы напрямую подключенных клиентов, не имеющих IP-адреса; Поддержка определения сетевых интерфейсов для платформ FreeBSD, NetBSD, OpenBSD, OS X и Solaris 11; Экспериментальный бэкенд для хранения данных в СУБД PostgreSQL; Реализация хранилища для сброса хранимых в памяти БД в CSV-файл.
© OpenNet