Я заметил что-то действительно странное, что не могу понять, пока проводил вразрез с обоими моими 2 Ubuntus 14.04 LTS: как-то случайно, Ubuntu, кажется, отбрасывает некоторые входящие ответы DNS. Это происходит как для IPv4, так и для IPv6, с таблицами ip(6) -P INPUT ACCEPT / ip(6) таблиц -P OUTPUT ACCEPT. Вот записи Wireshark (запутанные):

Протокол / Тип управляющего сообщения Интернета: 3 (пункт назначения недоступен) / Код: 3 (порт недоступен) Версия протокола Интернета 4, Src: 208.67.222.222 (208.67.222.222), Dst: 192.168.1.140 (192.168.1.140) Протокол пользовательских дейтаграмм, Порт Src: домен (53), порт Dst: 26305 (26305)

ICMPv6 / Тип: пункт назначения недоступен (1) / код: 4 (порт недоступен) Интернет-протокол версии 6, Src: 2620: 0: ccc:: 2 (2620: 0: ccc:: 2), Dst: 2001: db8: 0: 2:: 200 (2001: db8: 0: 2:: 200) Протокол пользовательских дейтаграмм, порт Src: домен (53), порт Dst: 60285 (60285)

Это происходит в случайное время, только несколько ответов отбрасываются во время большого теста DNS. Конечно, бывает, когда не бенчмаркинг. То же самое происходит на двух разных, свежих и отлично работающих Ubuntu 14.04 LTS.

Я исследовал сеть, нашел несколько подсказок (связанных с dnsmasq / new Ubuntu, способ обработки DNS-запросов / 127.0.0.1 локальный сервер имен), но ничего, что не позволило мне избавиться от этих досадных отбрасываний ответов DNS.

Есть какие-нибудь подсказки по этому поводу?

2 ответа2

0

Иногда dnsmasq запрашивает все свои серверы имен параллельно. Он делает это при первом запуске и, если некоторое время не было трафика, чтобы узнать, какой сервер имен лучше всего использовать. Под нагрузкой это происходит редко. Всякий раз, когда dnsmasq выполняет параллельный запрос, второй ответ (если есть) достигает закрытого порта, создавая сообщение о недоступном порту ICMP.

Дополнительную информацию можно найти по адресу https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=580064.

0

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .