LINUX.ORG.RU
ФорумAdmin

Проверка EDNS - старый сервис Bind 9.2.1

 , , ,


0

1

Всем доброго здравия.

Пока еще используется старый Bind 9.2.1, что усложняет администрирование. Появилась необходимость обрабатывать расширенные DNS сообщения, для получения которых в новых версиях Bind необходимо произвести конфигурацию:

server 0.0.0.0/0 {
       edns yes;
};

Не зная корректного листинга named.conf старой версии попробовал прописать рекомендуемые строки - сервис не запускался (ругаясь в логах на добавленные строки), в поле options пытался и размер EDNS сообщений задать, по разному игрался - не запускает. Поиски в сети свелись к не понимаю, может быть EDNS по умолчанию в данной версии включен без дополнительной конфигурации и работает, т.к.:

# dig @127.0.0.1 +noall +comments +bufsize=1 query

Выдает:

;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: SERVFAIL, id: 39365
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096

; EDNS: version: 0, flags:; udp: 4096 - значит, что DNS уже работает с включенным EDNS или сервис просто поддерживает этот функционал и его необходимо включить?

Подскажите, какие есть еще механизмы и аргументы для DIG или других утилит, для проверки корректности работы EDNS и проверки корректности обмена расширенными пакетами между серверами?

Буду благодарен любым советам, спасибо.



Последнее исправление: yar1k (всего исправлений: 1)

Не скажу точно про bind 9.2, но с помощью ″server″ задавись сервера, для которых нужно отключить edns (edns no), по умолчанию он был включён.

ИМХО, самый надёжный способо это запустить на сервере дамп пакетов на 53 порту и послать к серверу запрос на что-то большое, допустим (ANY ics.org). Если в дампе будет в ответ один udp-пакет большого размера то edns работает, а если переключение на tcp, то не работает.

mky ★★★★★
()
Ответ на: комментарий от mky

Спасибо, дельный совет по процедуре проверки. Боюсь не получится, сервер не обрабатывает внешние зоны Интернет, а в той сети, где он используется пока еще не найти соседа с включенной передачей расширенной информации.

Есть ли у кого сервера с выключенным EDNS (edns no в options), какой результат запроса к серверу командой:

dig @127.0.0.1 +noall +comments +bufsize=1 query

?

yar1k
() автор топика
Ответ на: комментарий от yar1k

Сорри за долгий ответ, но вот это:

(edns no в options)

поставило меня в тупик. Строка ″server 0.0.0.0/0 {edns no;};″ не кушается, когда она стоит внутри ″options{...};″, только когда как отдельный оператор конфига. Во всяком случае в моём bind версии 9.8.2.

Что с ней, что без неё, ответ на ваш dig одинаковый и содержет в конце

; EDNS: version: 0, flags:; udp: 4096

Всё таки эта директива конфига отключает edns для запросов, выполняемых bind'ом, а не для ответов.

Нагуглил патчи, полностью отключающие edns и из обсуждения понял, что их не хотят принмать в bind, потому что edns это круто и он всегда включён и если проблемы с firewall'ом или ещё с чем, то лучше решать их, чем отказываться от edns.

mky ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.