22 августа 2025 года состоялся выпуск открытого проекта PowerDNS Authoritative Server 5.0. Решение предназначено для организации отдачи DNS‑зон. Ранее проект PowerDNS Authoritative Server обслуживал до 30% из общего числа доменов в Европе и до 90% доменов с DNSSEC. Исходный код решения написан на C++ и Python и опубликован на GitHub под лицензией GPLv2.

По информации OpenNET, PowerDNS Authoritative Server предоставляет возможность хранения информации о доменах в различных базах данных, включая MySQL, PostgreSQL, SQLite3, LMDB, Oracle, и Microsoft SQL Server, а также в LDAP и обычных текстовых файлах в формате BIND. Отдача ответа может быть дополнительно отфильтрована (например, для отсеивания спама) или перенаправлена в собственные обработчики на языках Lua, Java, Perl, Python, Ruby, C и C++. Из особенностей также выделяются средства для удалённого сбора статистики, среди прочего по SNMP или через Web API (для статистики и управления встроен http‑сервер), мгновенный перезапуск, встроенный движок для подключения обработчиков на языке Lua, возможность балансировки нагрузки с учётом географического местоположения клиента.

Основные изменения и доработки в PowerDNS Authoritative Server 5.0:

  • поддержка представлений (views) в стиле DNS‑сервера BIND, позволяющих отдавать разное содержимое DNS‑зон в зависимости от IP‑адреса, с которого поступил запрос. Например, при помощи представлений пользователям с внутренними адресами (интранет) можно отдавать один вариант DNS‑зоны для запрошенного домена, а внешним пользователям — другой. Для хранения разных представлений DNS‑зон пока может использоваться только бэкенд LMDB;

  • добавлена поддержка привязки к Unix‑сокету вместо сокета TCP/IP;

  • в утилиту sdig добавлена поддержка EDNS Cookie;

  • в бэкенд LMDB добавлена возможность поиска записей и поддержка RFC-2136 (DNS UPDATE);

  • реализован новый синтаксис запуска утилиты pdnsutil — «pdnsutil тип_объекта команда аргументы» (поддержка старого синтаксиса сохранена);

  • добавлена новая команда pdnsutil backend‑lookup для поиска записей в бэкенде хранения;

  • добавлена поддержка RFC-9615 для автоматического аутентифицированного бутстраппинга DNSSEC;

  • реализована поддержка ведения лога пакетов, для которых возникли ошибки парсинга;

  • добавлена настройка «dnsupdate‑require‑tsig», включающая обязательное использование механизма TSIG (Transaction Signature) для операций обновления записей в DNS;

  • добавлена настройка «direct‑dnskey‑signature», включающая прямое извлечение цифровой подписи DNSKEY из бэкенда;

  • добавлена настройка «resolve‑across‑zones», при выключении которой DNS‑сервер не будет разрешать CNAME‑записи, указывающие на другие зоны;

  • расширены возможности по созданию обработчиков на языке Lua.