релиз , високо производителен авторитетен DNS сървър (рекурсорът е реализиран като отделно приложение), който поддържа всички съвременни възможности на DNS. Проектът се разработва от чешкия регистър на имената CZ.NIC, написан е на C и е с лиценз 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' и др. Поддръжката на старите имена ще бъде запазена поне до следващото значително издание.
Източник: opennet.ru
