Проблема с reverse DNS запросами на клиенте

StrangerR
Уже с Приветом
Posts: 38016
Joined: 14 Dec 2006 20:13
Location: USA

Re: Проблема с reverse DNS запросами на клиенте

Post by StrangerR »

Ощущение у меня, что оно сначала идет в какой нибудь там WINS и там пытается резолвить, или еще как-то. Попробуйте варешарком протрейсить ВСЮ работу сети, и посмотреть что происходит между запросом и посылкой первого запроса на DNS.

Стрейсом вы ничего не поймаете.
Loyder
Новичок
Posts: 82
Joined: 18 Feb 2007 20:50
Location: Moscow

Re: Проблема с reverse DNS запросами на клиенте

Post by Loyder »

StrangerR wrote: 17 Apr 2018 06:46 Ощущение у меня, что оно сначала идет в какой нибудь там WINS и там пытается резолвить, или еще как-то. Попробуйте варешарком протрейсить ВСЮ работу сети, и посмотреть что происходит между запросом и посылкой первого запроса на DNS.
Между вводом команды ping -a и посылкой первого запроса на DNS - никакой задержки нет (если быть предельно точным, то это сложно замерить, тут субъективный фактор вмешивается. Я замерял так - запускал WireShark, переключался в другое окно, запускал ping -a. Судя по тому, что запрос к DNS был на 2.13 секунде - вот эти 2 секунды можно списать на переключение между окнами. При запросе на уровне приложения с другого сервера тоже видно, что идет установка соединения, потом сразу же DNS запрос, потом задержка, и начинают посылаться данные)

Задержка возникает после получения DNS ответа и и между отправкой первого ICMP запроса.
На скриншоте на предыдущей странице видно, что
на 2.13 секунде идет запрос к DNS типа PTR
на 2.13 секунде идет ответ от DNS сервера (ip-адрес разрешен в имя)
на 6.89 секунде идет посылка первого ICMP запроса.
Loyder
Новичок
Posts: 82
Joined: 18 Feb 2007 20:50
Location: Moscow

Re: Проблема с reverse DNS запросами на клиенте

Post by Loyder »

Palych wrote: 17 Apr 2018 01:34 Ping должен быть не виндовский, а построенный в cigwin
Сам cygwin все-таки надо будет поставить
Тогда этот вариант пока отпадает, к сожалению...
Palych
Уже с Приветом
Posts: 13722
Joined: 16 Jan 2001 10:01

Re: Проблема с reverse DNS запросами на клиенте

Post by Palych »

Loyder wrote: 17 Apr 2018 08:05
Palych wrote: 17 Apr 2018 01:34 Ping должен быть не виндовский, а построенный в cigwin
Сам cygwin все-таки надо будет поставить
Тогда этот вариант пока отпадает, к сожалению...
Там инсталлятор весьма гибкий, можно поставить в домашний каталог.
Но он качает всё с тырнета (не помню можно ли это поменять)...

Идея в том чтобы посмотреть где ping замирает и попробовать догадаться чего он ждёт.
uncle_Pasha
Уже с Приветом
Posts: 19935
Joined: 30 Aug 2000 09:01
Location: WA

Re: Проблема с reverse DNS запросами на клиенте

Post by uncle_Pasha »

Надо еще посмотреть логи на сервере - может быть там что-то интересное.
Так же, посмотрите на предмет фаревола - может он блокирует порт 53 и до приложения ответ никогда не доходит? (Wireshark использует raw socket)
Loyder
Новичок
Posts: 82
Joined: 18 Feb 2007 20:50
Location: Moscow

Re: Проблема с reverse DNS запросами на клиенте

Post by Loyder »

uncle_Pasha wrote: 17 Apr 2018 15:27 Надо еще посмотреть логи на сервере - может быть там что-то интересное.
Так же, посмотрите на предмет фаревола - может он блокирует порт 53 и до приложения ответ никогда не доходит? (Wireshark использует raw socket)
В логах windows - ничего относящегося к DNS, разрешению имени, ошибок - не видно.
Firewall - отключен.
Loyder
Новичок
Posts: 82
Joined: 18 Feb 2007 20:50
Location: Moscow

Re: Проблема с reverse DNS запросами на клиенте

Post by Loyder »

Проблема решилась присвоением значения 1 параметру:

Code: Select all

DisableSmartNameResolution
В реестре:

Code: Select all

HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows NT\DNSClient
Объяснение возможно следующее: согласно идее, DNS запрос посылается на всех интерфейсах, и первый пришедший ответ должен транслироваться приложению.
Но в силу реализации, DNS клиент ожидает ответа на всех интерфейсах (или timeout'a), и лишь после этого транслирует ответ приложению.
Этот параметр отключает это поведение и возвращает предыдущее поведение системы (запрос посылается с соответствующего интерфейса)

Return to “Вопросы и новости IT”