Проект BIND 10 готовится к началу тестирования

04.03.2010 16:30

Представители организации Internet Systems Consortium (ISC) объявили на выставке CeBIT 2010 о прогрессе в разработке принципиально новой реализации DNS-сервера Bind. Проект BIND 10, в рамках которого в апреле прошлого года началась работа по созданию переписанного с нуля DNS-сервера, приближается к стадии выпуска первого экспериментального релиза, который намечен на 19 марта. Код BIND 10 в своей основной массе написан на языке Python с реализацией требующих высокой производительности частей на языке C++. Исходные тексты распространяются в рамках лицензии BSD.

Ветка BIND 10 развивается при поддержке крупнейших мировых регистраторов доменов и отличается главным образом улучшением масштабируемости (средствами для организации кластеров) и полностью модульной структурой: резолвер, подсистема для хранения данных (классическая файловое хранилище или SQL-база) и кода для обслуживания DNS зон реализован в независимых модулях. В рамках BIND 10 будет подготовлен новый API и набор библиотек для интеграции функций для работы с DNS и средств для взаимодействия с DNS-сервером в сторонние приложения.

Некоторые идеи, которые будут реализованы в BIND 10:

  • Увеличение надежности, повышение стойкости к DoS атакам и способность работать до последнего, игнорируя возникающие ошибки (например, некорректные записи в DNS зонах);
  • Реализация возможности акселерации через схему бэкенд-фронтенд;
  • Не привязанность к конкретной модели хранения данных, подключение обработчиков хранилищ через модули. Включение в комплект модулей для хранения зоны в SQL базе, кеширования в памяти из файлов или использования встраиваемых БД;
  • Возможность определять в процессе сборки, на основе каких частей будет сформирована бинарная сборка. Например, может быть собран только кеширующий или только авторитативный сервер, что позволит создавать компактные версии bind, подходящие для использования во встраиваемых устройствах с ограниченными ресурсами;
  • Поддержка кластеризации: интеграция технологий, позволяющих организовать работу как единого целого нескольких копий BIND, размещенных на разных серверах;
  • Средства для интеграции BIND в программную инфраструктуру пользователя. Если сейчас базовая конфигурация оформляется в текстовых файлах, то появятся специальные программные интерфейсы для управления конфигурацией и мониторинга BIND из сторонних приложений. Например, можно будет более гибко организовать синхронизацию данных между DNS и DHCP серверами;
  • Контроль в процессе выполнения. Реконфигурация BIND 9 производилась исключительно через чтение файлов и примитивные rndc команды. В BIND 10 планируется реализовать более изящную и интерактивную схему контроля и мониторинга.