Jump to content
Калькуляторы

Новый Named, роутеры не могут ресолвить DNS Проблемы с DNS ресолвом на роутерах через named

После обновления на DNS named на свежую версию, начались массовые обращения в службу тех поддержки.

 

Симптомы следующие:

1. Клиенты сидящие за роутерами ASUS, Zyxel,интеркросс не могут ресолвить DNS имена если в качестве DNS сервера указан ip адрес роутера. Если на клиенте прописываем DNS руками, то все работает.

2. С самого роутера все ресолвится отлично.

 

Копание в chengelog named дало следующее "RFC 1034" и как решение проблемы поставили no-case-compress { 0.0.0.0/0;}; в настройках named.

 

ASUS кстати официально признали существование проблемы и советуют обновить прошивку http://www.asus.com/ru/support/FAQ/1010145

Share this post


Link to post
Share on other sites

Какой-то желтый заголовок.

Версии "старого" и "нового" named в студию.

А также diff конфигов.

Share this post


Link to post
Share on other sites

Я аж заволновался. Интересно, у меня новый, или старый? :)

Share this post


Link to post
Share on other sites

Видимо автор давно не обновлялся просто, раньше была совсем старая-старая версия, а теперь новая (свежая)

Share this post


Link to post
Share on other sites

Тут уже мелькала подобная тема.

Кажется проблема в том, что новый бинд отдаёт ответ не в том регистре в котором клиент запросил, а в том в котором оно у него в кеше осело, а клиент видимо делает memcmp() по имени в ответе и дропает по несовпадению.

Share this post


Link to post
Share on other sites

А разве имена доменов регистрозависимые? :)

Share this post


Link to post
Share on other sites

Домены нет - проверка запроса\ответа домена у роутеров - очень может быть.

Share this post


Link to post
Share on other sites

До 9.10 обновляли? Было такое - в глобальных опциях named поставьте prefetch 0;

Share this post


Link to post
Share on other sites

До 9.10 обновляли? Было такое - в глобальных опциях named поставьте prefetch 0;

 

Обновлялся до 9.10 с 9.9.5

Share this post


Link to post
Share on other sites

У меня на 9.9.5 вылезло сегодня, после обновления.

Сейчас думаю что делать, опций для отключения такого поведения в

этой версии ещё нет, а отвечает уже в регистре из кеша.

Share this post


Link to post
Share on other sites
--- bin/named/client.c.orig     2015-04-16 19:25:44.000000000 +0300
+++ bin/named/client.c  2015-04-16 19:24:41.000000000 +0300
@@ -973,7 +973,7 @@ ns_client_send(ns_client_t *client) {
       result = dns_compress_init(&cctx, -1, client->mctx);
       if (result != ISC_R_SUCCESS)
               goto done;
-       dns_compress_setsensitive(&cctx, ISC_TRUE);
+       // dns_compress_setsensitive(&cctx, ISC_TRUE);
       cleanup_cctx = ISC_TRUE;

       result = dns_message_renderbegin(client->message, &cctx, &buffer);

Share this post


Link to post
Share on other sites

Спасибо, пересобрал.. захолдил пакет.

 

Лучше обновиться до 9.9.6 и добавить в конфиг строку вида

 no-case-compress { 10.0.0.0/8; };

Share this post


Link to post
Share on other sites

Ребят, на Debian 8 Jessie столкнулся с этой проблемой, не хочу собирать из сорцов. Кто откуда брал более свежий пакет? В CentOS 7 тоже старый.

Share this post


Link to post
Share on other sites
Ребят, на Debian 8 Jessie столкнулся с этой проблемой, не хочу собирать из сорцов. Кто откуда брал более свежий пакет? В CentOS 7 тоже старый.

Если вам только рекурсивный резолвер, может перейти на Unbound? Пользуюсь им очень давно, проблем нет.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
Sign in to follow this