Windows пытается искать записи AAAA IPv6, даже если у нее нет маршрутизируемого адреса IPv6?


8

Мой сетевой маршрутизатор - ZyXEL ZyWall USG 100, который имеет встроенный DNS-сервер. Многие компьютеры Windows подключаются к нему и получают адреса IPv4 через DHCP. Они также информируются о суффиксе DNS («внутреннем») с помощью «доменного имени» маршрутизатора. Обычно это работает нормально. Однако иногда машина с Windows (Vista или 7) не может разрешить IP-адрес машины с именем домена «domain-name» в записях DNS. Компьютер с IP-адресом, связанным с «domain-name», в данный момент включен и доступен другим компьютерам Windows.

Когда это происходит, он все равно может разрешить IP-адрес, используя «nslookup domain-name», но «ping domain-name», «ping -4 domain-name» и переход к « http: // domain-name » не удаются. Пинг "domain-name.internal" работает.

Я посмотрел на вывод команды «ipconfig / displaydns» на компьютере, затронутом этой проблемой, и вижу неожиданные записи IPv6, которые выглядят так:

domain-name
----------------------------------------
No records of type AAAA

Я могу временно решить проблему, перезапустив интерфейс сетевого адаптера.

На http://technet.microsoft.com/en-gb/library/bb878121.aspx Microsoft сообщает:

Примечание. Из-за неправильно настроенных DNS-серверов в Интернете компьютеры, использующие как IPv4, так и IPv6, могут быть не в состоянии разрешать имена и подключаться к интернет-ресурсам. Эта редкая проблема возникает, когда неправильно настроенный DNS-сервер получает запрос на преобразование имени в один или несколько адресов IPv6 (запрос на записи AAAA). Если DNS-сервер не поддерживает IPv6, запрос имени не выполняется. Затем запрашивающий узел отправляет запрос для разрешения имени на набор адресов IPv4 (запрос на записи A). Неправильно настроенный DNS-сервер отбрасывает последующий DNS-запрос для адресов IPv4, и попытка полного разрешения имен завершается неудачно, что приводит к нарушению сетевого подключения для запрашивающего узла. Если вы испытываете эту проблему, попросите вашего интернет-провайдера перенастроить свой DNS-сервер для принятия последующего DNS-запроса на записи A после сбоя DNS-запроса на записи AAAA. Кроме того, вы можете временно отключить IPv6 на запрашивающем компьютере. Эта проблема существует на DNS-серверах и является общей для всех компьютеров, которые используют как IPv4, так и IPv6.

Я думаю, что это может быть то, что происходит (у меня нет идей получше).

Пытается ли Windows найти записи IPv6 DNS (AAAA), даже если маршрутизатор не назначил маршрутизируемый (не локальный для канала) IPv6-адрес? Или у кого-то есть лучшее представление о том, что вызывает эту проблему?

Ответы:


5

Windows Vista и 7 будут запрашивать поиск AAAA перед поиском A, если включен IPv6 (и локальный адрес ссылки не отключен). Windows по умолчанию будет иметь локальный адрес ссылки и для этого будет использовать IPv6, если он доступен. Обычно это не проблема, так как поиск AAAA завершается неудачно, и он успешно перемещается к IPv4. Однако большинство приложений будут просто переходить к IPv4.


Я только что выполнил тест с Wireshark, где я очищаю кэш DNS, затем выполняю команду ping «имя домена» на компьютере с Windows 7, который имеет локальный IPv6-адрес, и сначала он не выполнял запрос AAAA. Должно быть что-то более тонкое. Как вы убедились, что вы сказали здесь?
RyanTM

Если компьютер уже установил, что IPv6 «не работает», он не будет пытаться снова, даже если вы очистите кеш. Я не помню, что другие факторы играют, вероятно, есть другие, которые я не помню.
Крис С

1
Один из способов узнать, что он установил в IPv6, - посмотреть состояние сетевого подключения. Моя статья гласит: «Подключение по протоколу IP4v: Интернет, подключение по протоколу IPv6: нет доступа к сети»
Ричард Гадсден,

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

Отключение IPv6 не помогло решить эту проблему.
RyanTM

0

Какая версия винды? Насколько я понимаю, XP никогда не будет общаться с DNS-сервером через IPv6. Это будет сделано только через IPv4. Я слышал, Vista и 7 не имеют проблемы.

По моему опыту, Windows не будет запрашивать запись AAAA, если ей не назначен маршрут IPv6. Я никогда не видел ни одного AAAA-поиска в журналах DNS.

У вас действительно есть компьютер с именем "domain-name"? Или это то, что вы придумали?


Привет. Извините, что не уточнил эти вопросы в моем вопросе. Я пересмотрел его, чтобы ответить на эти вопросы. Когда вы говорите DNS-логи, что вы имеете в виду? Вы имеете в виду журналы на вашем DNS-сервере, показывающие, кто что искал?
RyanTM

Перечитав свой вопрос, короче говоря, вы не можете пропинговать компьютер по имени хоста. Правильный?
Крыльцо

Когда эта проблема возникает, да. Все остальное время и на других компьютерах, не подверженных данной проблеме, нет.
RyanTM

Итак, позвольте мне убедиться, что я все правильно понимаю. В какой-то момент времени один ящик win 7 больше не может пропинговать любой другой хост в сети, по имени хоста. Он по-прежнему может пинговать веб-сайты, такие как Google. Все остальные хосты в сети работают нормально. Правильный? Любой другой хост Windows 7 в сети и есть ли у них такая же проблема?
Крыльцо

Да, но я не уверен, что машина не может пропинговать каждый хост в сети, я думаю, что она просто не может пропинговать хост с именем domain-name. Я не понимаю ваш последний вопрос.
RyanTM

0

Я не уверен, что эта статья точно ответит на ваш вопрос, но она может быть хорошим справочным материалом, когда вы говорите о смешивании IPv4 и IPv6 с DNS.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.