Сбой проверки связи без IPv6 - PullRequest
0 голосов
/ 03 октября 2008

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

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

Когда IPv6 удален, проверка связи с теми же именами DNS возвращает IP-адрес в некоторой удаленной подсети (24.28.193.9; локальная подсеть - 192.168.1.1); наше приложение не может связаться. Когда IPv6 переустанавливается, разрешение DNS исправляет себя.

Даже без IPv6, когда ping не работает, я по-прежнему могу просматривать другие машины с помощью проводника Windows, введя \\\\MACHINE_NAME\\. Я не уверен, почему разрешение имени здесь работает. Мы работаем в среде Windows XP SP2.

IP-адреса машин могут быть успешно проверены. Только DNS-имена не разрешаются должным образом.

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

Самое странное, что я только что обнаружил, что не имеет значения, какое DNS-имя я пингую. Все проверки связи с DNS-именами возвращают один и тот же адрес: "24.28.193.9".

Я попытался очистить кэш DNS Resolver и зарегистрировать DNS на целевой машине и на исходной машине. Все безрезультатно. Единственное DNS-имя, которое я могу пропинговать, - это имя текущего компьютера.

Есть мысли, почему наше программное обеспечение не может обмениваться данными без установленного IPv6?


ОБНОВЛЕНИЕ:

Хорошо, я провел еще немного исследований.

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

Самое странное, что я только что обнаружил, что не имеет значения, какое DNS-имя я пингую. Все проверки связи с DNS-именами возвращают один и тот же адрес: "24.28.193.9".

Я попытался очистить кэш DNS Resolver и зарегистрировать DNS на целевой машине и на исходной машине. Все безрезультатно. Единственное DNS-имя, которое я могу пропинговать, - это имя текущего компьютера.

Есть еще предложения? Большое спасибо за вашу помощь.

Ответы [ 2 ]

4 голосов
/ 03 октября 2008

У вас здесь происходит несколько вещей

  1. Разрешение DNS-имен
  2. Разрешение имен Windows
  3. связь IP-IP ICMP

Вы написали свой вопрос так, как будто есть проблема с # 3, но все, что вы описываете, указывает на то, что проблема на самом деле связана с # 1. Если вы решите вопрос, можете ли вы пинговать правильные IP-адреса с нашими без установленного IPv6?

Похоже, у вас установлен сервер имен IPv6 с правильной информацией, а сервер имен IPv4 неверен? Вы получаете серверы имен через DHCP или жесткое кодирование? Какие IP-адреса серверов имен вы используете, когда установлен IPv6, а когда нет?

1 голос
/ 17 ноября 2008

Я знаю, что это поздний ответ, но в случае, если у кого-то еще есть такая же проблема, ключом является IP-адрес, "24.28.193.9". Быстрый поиск в Google показывает, что, похоже, это связано с тем, что ваш провайдер полностью нарушил протокол DNS, возвращая фиксированный IP-адрес для всех несуществующих доменных имен (правильный ответ будет NXDOMAIN). Скорее всего, ваш сетевой шлюз просто перенаправляет ваши запросы на серверы имен вашего провайдера.

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

Причина, по которой установка или удаление IPv6 меняет ситуацию, скорее всего связана с тем, что что-то, связанное с этим, меняет порядок разрешения имен (поиск других методов перед попыткой DNS). Таким образом, обходной путь - изменить порядок разрешения имен самостоятельно.

Реальным решением было бы либо перейти к лучшему провайдеру (который не нарушает установленные протоколы), либо запустить собственный DNS-сервер (что я начал делать на всех системах, которые я администрирую с тех пор, как VeriSign вытащил похожий трюк ; их было еще хуже в том смысле, что смена провайдеров не имела никакого значения).

Ссылки:

...