LINUX.ORG.RU
решено ФорумAdmin

DNS иногда отвечает «no servers could be reached»

 , ,


0

4

Добрый день всем. При выполнении команды: nslookup kafka.zxc.stage @dns1.prod И иногда получаю ответ - ;; connection timed out; no servers could be reached. Например, когда я запускаю команду каждую секунду, 6 запросов за 6 секунд. Часть ответов - ;; connection timed out; no servers could be reached.

Я подумал, что это странно. И я решил посмотреть с помощью утилиты tcpdump. Я приведу два примера. Когда nslookup вернул А запись и когда «;; connection timed out; no servers could be reached».

Всё хорошо. Ответ вернулся на консоль, в дампе отобразилось -

3926 IP (tos 0x0, ttl 64, id 40303, offset 0, flags [none], proto UDP (17), length 202) 
    dns-int.prod > kafka.zxc.stage.33173: [bad udp cksum 0x4e30 -> 0x6909!] 14677* q: A? kafka.stage. 2/2/2 kafka.stage. [10m] CNAME kafka.zxc.stage., kafka.zxc.stage. [10m] A 100.200.40.22 ns: stage.zone. [30m] NS dns2-int.prod., stage.zone. [30m] NS dns-int.prod . ar: dns-int.prod . [1h] A 100.100.100.200, dns2-int.prod. [30m] A 100.100.100.100 (174)

Отправляю следующий запрос, около 2-3 секунд ожидания, консоль выдает «;; connection timed out; no servers could be reached», а в дампе -

4662 IP (tos 0x0, ttl 64, id 40543, offset 0, flags [none], proto UDP (17), length 129) 
    dns-int.prod > kafka.zxc.stage.52157: [bad udp cksum 0x4de7 -> 0x6fe7!] 53* q: AAAA? kafka.zxc.stage. 0/1/0 ns: stage.zone. [4d] SOA dns1.prod. admindn.mail.(101)

Насколько я понимаю, запись A предназначена для IPv4, а запись AAAA для IPv6.

Я до сих пор не понимаю, почему он пытается отправлять запросы таким образом. Я был бы очень рад, если бы кто-нибудь указал мне направление поиска решения. Я тоже буду искать решение. Спасибо.

UPD. Главный DNS отвечает долго

for i in {0..5}; do time dig @100.100.100.100 +short kafka.zxc.stage ; done 2>&1 | grep real
real    0m5.018s
real    0m5.012s
real    0m0.016s
real    0m0.013s
real    0m5.015s
real    0m10.021s

Проверяю конфигурацию хоста, конфига DNS не менялась давно, да и slave работает без ошибок



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

DNS иногда отвечает «no servers could be reached»

Это не DNS отвечает а nslookup.

Правильный синтаксис nslookup такой:

nslookup host dns_server
, символы '@' там не предусмотрены.

Что такое kafka.zxc.stage, что такое dns1.prod, что такое dns-int.prod, что такое 100.100.100.100?

Главный DNS отвечает долго

Он не долго отвечает а теряет пакеты.

На будущее, tcpdump надо вводить с ключом -n и показывать его вывод полностью (все запросы и все ответы) а не так.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 2)
Ответ на: комментарий от firkax

Вы абсолютно правы, на интерфейсе висит виртуальный айпишник. Прогонял с ключом -nnn, чтобы увидеть на обоих хостах, уходили с одного, но не было на них ответа.

В netstat -tlpn не было строчки что прослушивается. Пересоздал айпишник и появилась строчка - tcp 0 0 100.100.100.100:53 0.0.0.0:* LISTEN 22671/named

После этого всё работает отлично. Как он принимал запросы и, иногда, отвечал на них для меня остаётся секретом.

Tsunanik
() автор топика