В составе djbdns имеется набор компактных и очень полезных утилит. Они различны по назначению и функционалу. Это утилиты dnsq, dnsqr, dnstrace, tinydns-get и axfr-get. В кратце рассмотрим каждую из этих утилит и область их применения. Отметим также, что вывод этих утилит гораздо компактнее чем например аналогичной по функционалу утилиты dig и несомненно лучше читается.
dnsqr t fqdn
Утилита dnsqr посылает рекурсивный запрос DNS серверу на разрешение имени fqdn с типом t и, получив ответ, выводит на терминал в удобной форме результат. Постольку поскольку запрос является рекурсивным, утилита посылает запрос на DNS серверы, информация о которых доступна библиотечным функциям Си из файла /etc/resolv.conf. Рекурсивный запрос – это запрос к кеширующему DNS. На данный момент утилита “понимает” следующие типы записей: any, a, ns, mx, ptr, txt, cname, soa, hinfo, rp, sig, key, aaaa, axfr. Следует учесть, что если необходимо протестировать трансфер зоны, тогда для этого существует специальная утилита axfr-get.
dnsq t fqdn s
Утилита dnsq посылает нерекурсивный запрос DNS серверу s на разрешение имени fqdn с типом t, и получив ответ, выводит на терминал в удобной форме результат. Нерекурсивный запрос – это запрос к DNS серверу зоны. В целях безопасности, кеширующий сервер DNS должен отвергать нерекурсивные запросы.
tinydns-get t fqdn tiydns-get t fqdn ip
Эта утилита ведет себя аналогично dnsq, однако получает данные не от DNS сервера а из файла data.cdb в текущем каталоге. Точно таким же образом получают данные tinydns и axfrdns из файла data.cdb в каталоге root. Если передан параметр ip, в таком случае эмулируется DNS запрос от данного ip. Последнее может показаться нужным в случае, если данные о хостах в data.cdb различаются в зависимости от ip адреса стороны, приславшей запрос.
dnstrace t fqdn r
Утилита dnstrace производит поиск всех DNS серверов, которые влияют на разрешение имени fqdn с типом t, начиная с корневого сервера r. Можно указать список корневых серверов.
dnstrace использует стандартный алгоритм разрешения имен, однако следует всем возможным путям в этом алгоритме. Утилита выводит на терминал все ответы, полученные от серверов, выводится информация о медленных, “мертвых” и неправильно делегированных серверах а также о неверно сформированных ответных пакетах. Утилита dnstrace схожа с утилитой dnswalk, но гораздо более эффективна в выявлении проблем с разрешениями имен.