Djbdns | это... Что такое Djbdns? (original) (raw)
djbdns
djbdns | |
---|---|
Тип | DNS-сервер |
Разработчик | Дэниел Джулиус Бернштейн |
Написана на | Си |
ОС | UNIX |
Версия | 1.05 (11 февраля 2001) |
Лицензия | общественное достояние [1] |
Сайт | http://cr.yp.to/djbdns.html |
djbdns представляет собой простой и безопасный набор программ для обслуживания и разрешения (resolving) DNS зон, разработанный Дэниелом Бернштейном. Автор программы создал его после обнаружения многочисленных ошибок в коде BIND. Он пообещал премию в $1000 тому, кто найдёт ошибку в коде djbdns. [2]
В 2004 году стал вторым по популярности DNS сервером.
В 2009 году Матью Демпски (Matthew Dempsky) нашёл уязвимости в dnscache. [3]
Содержание
- 1 Компоненты djbdns
- 2 Пример использования клиентских утилит
- 3 Ситуация с лицензией
- 4 Примечания
- 5 Ссылки
Компоненты djbdns
Серверы:
- dnscache — кэширующий DNS сервер
- tinydns — полномочный DNS сервер
- walldns — «reverse DNS wall», обеспечивает только преобразование между IP-адресами и доменными именами.
- rbldns — сервер, разработанный для RBL.
- axfrdns — сервер для переноса зоны.
Клиентские программы:
- axfr-get — клиент для переноса зон.
- dnsip — простое разрешение FQDN-имени в ip-адрес.
- dnsipq — разрешение неполных имен на основе правил изменения (дополнения) имен.
- dnsname — простой поиск имени по IP-адресу.
- dnstxt — простой поиск TXT-записи.
- dnsmx — поиск почтового обменника (mail exchanger).
- dnsfilter — параллельный поиск имен для IP-адресов, считываемых из стандартного ввода (stdin).
- dnsqr — рекурсивный поиск записей.
- dnsq — нерекурсивный поиск записей, удобен для отладки и поиска проблем.
- dnstrace (и dnstracesort) — всесторонняя проверка цепочек полномочий (chains of authority).
…и несколько сопутствующих инструментов конфигурирования.
В djbdns различные функции и сервисы, такие как передача зон через AXFR, разделены между отдельными программами. Разбор файла зон, кэширование DNS-записей и рекурсивный поиск записей также выполнены в виде отдельных программ. Результатом этого дизайнерского решения стало чрезвычайное уменьшение объёма кода и сложности программ-демонов, которые отвечают на клиентские запросы. Даниел Бернштейн (и многие другие) осознают, что этот подход хорошо согласуется с духом UNIX, и делает проверку безопасности более простой.
Пример использования клиентских утилит
Обратный резолвинг нескольких хостов из файла:
root@host[/root]# cat file-with-list-ip.txt | dnsfilter 194.87.0.50=www.ru 87.118.90.81=ns.km35112.keymachine.de 93.158.134.8=ya.ru
Содержание файла file-with-list-ip.txt:
194.87.0.50 87.118.90.81 93.158.134.8
Получение ip адреса по имени, для нескольких хостов из файла:
#!/bin/sh
Use: ./h2ip.sh dns-list-file.txt
Example output:
www.ru=194.87.0.50
ns.ru=87.118.90.81
ya.ru=93.158.134.8 77.88.21.8 213.180.204.8
echo "Using DNS file list: $1"
for name in cat $1
;
do
echo -n $name=;
dnsip $name;
done
Использование:
chmod +x h2ip.sh; ./h2ip.sh dns-list-file.txt
Для bash, в консоли:
for name in cat dns-list-file.txt
; do echo -n name=;dnsipname=;dnsip name=;dnsipname; done
Ситуация с лицензией
Ранее пакет распространялся как программное обеспечение без лицензии, что не согласовалось с Open Source Definition. Это мешало djbdns быть включённым в некоторые дистрибутивы Linux, такие как Debian GNU/Linux. Использование djbdns было бесплатно для всех; исходный код был общедоступен и мог быть загружен бесплатно всеми желающими; он был открыт для проверки и изменения всеми желающими. Единственное ограничение состояло в том, что нельзя было распространять модифицированную версию djbdns; изменения могли распространяться только как заплатки к исходному коду.
28 декабря 2008 года djbdns (точнее файл djbdns-1.05.tar.gz [4], чья хеш-сумма MD5 равна 3147c5cd56832aa3b41955c7a51cbeb2) перешёл в общественное достояние.
Примечания
- ↑ Daniel J. Bernstein Frequently asked questions from distributors (англ.). Проверено 7 марта 2010.
- ↑ Daniel J. Bernstein The djbdns security guarantee (англ.). Проверено 7 марта 2010.
- ↑ Security issue in djbdns confirmed (англ.). Проверено 7 марта 2010.
- ↑ http://cr.yp.to/djbdns/djbdns-1.05.tar.gz
Ссылки
- Официальная страница djbdns (англ.)
- Henning Brauer. Life with djbdns
- Перевод книги «Life with djbdns», а также статьи и FAQ о djbdns (рус.)
- Григорий Ситкарев. DJBDNS или как убить BIND
- FAQ о djbdns на faqts.com (англ.)
- Jonathan de Boyne Pollard. The known problems with Dan Bernstein's djbdns
- Jonathan de Boyne Pollard. Some of what is said about djbdns is wrong
- Веб-утилита для создания новых DNS-записей для tinydns (англ.)
- http://tinydns.org/
- http://djbdnsrocks.org/
cdb | daemontools | djbdns | qmail | ucspi-tcp
Wikimedia Foundation.2010.