Начальные версии (до 1.04 включительно) были созданы Кириллом Вечерой. 25 января 2001 года вышла версия 1.05; авторы исправлений - D Kelmi aka MiksIr (miksir_at_mixup.org.ru) и Владимир Гребенщиков (vova_at_express.ru). Программа представляет собой скрипт на языке Perl, так что с переносимостью проблем быть не должно. К версии вышло два багфикса, последний (1.05.02) получен от Andy Igoshin (ai_at_vsu.ru) через MiksIr'а 10.04.2001.
28 июля 2001 года опубликована версия 1.06; автор исправлений - Дмитрий Морозовский (marck_at_rinet.ru).
Скачать программу можно здесь:Скачайте архив drbl.tgz и раскройте его, например, в директорию /usr/local/drbl.
Отредактируйте файл zones. Каждая строчка этого файла имеет три поля - имя голосующей зоны, вес, приписанный ей, и имя сервера, с которого эту зону можно взять по axfr. Например, файл zones может выглядеть так:
vote.drbl.this.is.my.network.ru 1 ns.in.my.network.ru vote.drbl.piter.net 0.7 main.piter.net vote.drbl.tomsknet.ru 0.7 ns.tomsknet.ru vote.rsbs.express.ru 0.7 ns1.express.ru
Отредактируйте файл header. Содержимое этого файла всегда предваряет генерируемую информацию в рабочей зоне. Файл header должен содержать SOA-record вашей рабочей зоны (вместо serial можно подставить $time$, чтобы автоматически бралось время в секундах since epoch), а так же NS-records. Вот пример файла header:
@ IN SOA ns1.mynetwork.ru. abuse.mynetwork.ru. (
$time$ ; Serial == sec. since epoch
10800 ; Refresh
1800 ; Retry
604800 ; Expire
86400 ) ; Minimum
IN NS ns1.mynetwork.ru.
IN NS ns2.mynetwork.ru.
Собственно генерация производится скриптом build_drbl. Скрипт имеет три параметра. Первый - путь к файлу zones. Второй - пороговое значение. Третий - путь к файлу header. Например, если все файлы находятся в директории /usr/local/drbl, можно дать примерно такую команду:
cd /usr/local/drbl ./build_drbl ./zones 1 ./headerКоманда выдаст на stdout содержимое генеренной зоны. Если все в порядке, остается только дать эту команду еще раз, перенаправив вывод в файл вашей рабочей зоны, и перезапустить named.
После нескольких успешных ручных запусков рекомендуется вставить перегенерацию рабочей зоны в crontab.
build_drbl теперь умеет жить с bind 9. Обнаруженная ошибка: если $put_full_subnets = 0, то одиночные адреса из всех зон не включаются в итоговую.
(Комментарий получен от Andy Igoshin <ai_at_vsu.ru>)
Что исправлено: Описанный баг. Теперь вес некого адреса повышается весом подсети (в который этот адрес входит), взятой с некой голосующей зоны, только в том случае, если этот адрес еще не повышался из этой голосующей зоны. Поясню: если с vote1 пришел 4.3.2.1, а с vote2 *.3.2.1, то 4.3.2.1 получает вес 2-х vote зон (но не наоборот - вес сети *.3.2.1 не повышается). Однако, если с vote 3 придет 4.3.2.1 и *.3.2.1, то вес 4.3.2.1 повысится только один раз (раньше повышалось 2))
Что добавлено (все отключаемо):За работоспособность все еще есть сомнения - тестировалось весьма мало.
(Комментарий получен от D Kelmi (MiksIr) miksir_at_mixup.org.ru)
Сайт в настоящее время поддерживает Андрей Столяров (crocodil_at_croco.net)
Последний раз изменено 10 ноября 2002 года.