Выпуск DNS-сервера KnotDNS 2.9.0

Опубликован релиз KnotDNS 2.9.0, высокопроизводительного авторитативного DNS сервера (рекурсор выполнен в виде отдельного приложения), поддерживающего все современные возможности DNS. Проект разрабатывается чешским реестром имен CZ.NIC, написан на языке Си и распространяется под лицензией GPLv3.

KnotDNS отличается ориентацией на высокую производительность обработки запросов, для чего применяется многопоточная, и по большей части неблокирующая реализация, хорошо масштабируемая на SMP-системах. Предоставляются такие возможности, как добавление и удаление зон на лету, передача зон между серверами, DDNS (динамические обновления), NSID (RFC 5001), расширения EDNS0 и DNSSEC (включая NSEC3), ограничения интенсивности ответов (RRL).

В новом выпуске:

  • Реализована полная поддержка различного вычисления серийных номеров (SOA) для зоны на master- и slave-серверах, при применении на slave-сервере заверения зоны цифровой подписью;
  • В модуль geoip добавлена поддержка записей с шаблонами подстановки (wildcard);
  • Для DNSSEC добавлена новая настройка ‘rrsig-pre-refresh’ для сокращения частоты событий заверения зоны цифровой подписью;
  • Добавлена настройка «tcp-reuseport» для установки режима SO_REUSEPORT(_LB) для TCP-сокетов;
  • Добавлена настройка «tcp-io-timeout» для ограничения времени входящих операций ввода вывода поверх TCP;
  • Существенно увеличена производительность операций изменения содержимого зоны;
  • Прекращена поддержка переконфигурации сетевых интерфейсов и обработчиков, так как она не может быть произведена после сброса процессом привилегий;
  • Переработана реализация DNS Cookies для полного соответствия черновой спецификации draft-ietf-dnsop-server-cookies;
  • По умолчанию ограничение числа TCP-соединений теперь ограничено половиной системного лимита на число файловых дескрипторов, а число открытых файлов значением 1048576;
  • При выборе числа запускаемых обработчиков теперь используется число CPU, но не меньше 10;
  • Переименованы многие опции, например ‘server.tcp-reply-timeout’ в ‘server.tcp-remote-io-timeout’, ‘server.max-tcp-clients’ в ‘server.tcp-max-clients’, ‘template.journal-db’ в ‘database.journal-db’ и т.п. Поддержка старых имён будет сохранена как минимум до следующего значительного выпуска.

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