Компания NLNet Labs объявила о выпуске DNS-сервера NSD 4.0, спустя семь лет с момента релиза NSD 3.0. Сервер поддерживает работу только в авторитативном режиме (обработка DNS-зон) и максимально оптимизирован для решения данной задачи. Стабильность и надёжность NSD подтверждена использованием данного DNS-сервера на нескольких корневых серверах DNS и серверах, обслуживающих домены первого уровня. Код NSD распространяется под лицензией BSD.

На уровне поддержки протоколов NSD полностью совместим с другими авторитативными и рекурсивными серверами DNS, а также может использоваться для DNSSEC (с поддержкой NSEC3). На уровне файлов зон NSD совместим с BIND и может работать файлами зон BIND, без необходимости внесения в них изменений. Исходные файлы зон компилируются в бинарное индексированное представление, которое обеспечивает минимальное время запуска, оптимальную производительность и гарантию отсутствия ошибок (все проблемы выявляются на стадии компиляции).

Ключевые особенности выпуска NSD 4.0:

  • Значительное повышение производительности, по сравнению с NSD 3;
  • Возможность динамического изменения конфигурации и управления работой DNS-сервера на лету при помощи новой утилиты nsd-control (например, при помощи команд addzone и delzone можно добавлять/удалять зоны без перезапуска демона, а командой применить изменения в nsd.conf). Поддержка утилиты nsdc прекращена (для перезапуска и остановки следует использовать nsd-control или kill -HUP/kill -TERM). Также прекращена поддержка запускаемой через cron команды "nsdc patch", вместо которой для создания файлов зон предлагается использовать операцию "nsd-control write". Nsd-control может использоваться для управления не только локальным сервером, но и удалённым с использованием аутентификации по ключам шифрования (для генерации ключей подготовлена утилита nsd-control-setup);
  • Изменения формата базы nsd.db и перевод внутренних структур на Radix Tree. Новый формат поддерживает операции чтения и записи, и предоставляет средства автоматической упаковки после внесения изменений, что избавляет от необходимости периодического выполнения "nsdc patch". Для доступа к nsd.db теперь используется маппинг в память. Обеспечена поддержка оценки изменения файлов зон с последующим обновлением в базе только изменившихся данных при инициировании операции обновления конфигурации. При этом обновление базы теперь выполняется на лету самим демоном, без необходимости использования компилятора zonec;
  • Поддержка технологии RRL (Response Rate Limiting) для ограничения интенсивности отправки ответов в привязке к адресу получателя (ограничения действуют только на исходящие запросы и не влияют на входящие). RRL является одним из способов противодействия использования DNS-сервера в качестве усилителя в DDoS-атаках;
  • Средства для использования NSD для обслуживания огромного числа зон;
  • Добавлена директива pattern для определения шаблонов типовых элементов конфигурации зон. Шаблоны могут включаться в состав зон или в состав других шаблонов;
  • Директива tcp-count, определяющая максимальное допустимое число одновременных запросов, теперь может принимать значения больше 1000. Добавлена поддержка epoll/kqueue через libevent.


Источник: http://www.opennet.ru/opennews/art.shtml?num=38304