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' тощо. Підтримка старих імен буде збережена щонайменше до наступного значного випуску.
Джерело: opennet.ru