Только один домен не разрешается через DNS-сервер Windows в нескольких местах, но находится в других

У меня довольно странная проблема. Были проблемы с доставкой почты на определенный домен. Посмотрев ближе, я понял, что DNS для этого домена не разрешается через внутренний DNS-сервер Windows 2003 SP2.

C:\>nslookup foodmix.net 
Server:  DC.DOMAIN.com
Address:  10.1.1.1

 DNS request timed out.
     timeout was 2 seconds. DNS request timed out.
     timeout was 2 seconds.
 *** Request to DC.DOMAIN.com timed-out

(DC.DOMAIN.com и 10.1.1.1 являются общими значениями для замены реальных)

Даже если я запускаю этот nslookup с сервера DC.DOMAIN.com, я получаю тот же результат. Однако все остальные запросы работают как надо. У меня был друг-сисадмин, который пробовал этот поиск DNS на серверах в нескольких компаниях, с которыми он консультируется (которые также являются серверами AD Windows 2003). Странно то, что у некоторых из них была та же самая проблема. Однако использование публичных DNS-серверов работает. Я попытался очистить кэш DNS, перезапустить сервер, перезапустить службы и т. Д. Ничего не помогло.

Одно странное событие, которое я заметил в журналах событий DNS-сервера и которое может быть связано, - это идентификатор события 5504 со следующим описанием:

The DNS server encountered an invalid domain name in a packet from 192.33.4.12. The packet will be rejected. The event data contains the DNS packet.

For more information, see Help and Support Center at http://go.microsoft.com/fwlink/events.asp.

В разделе данных ниже, я вижу следующее упомянутое:

ns2.webhostingstar.com

Который, случается, является сервером имен для рассматриваемого домена. Несколько обсуждений и MS KB указывают на отключение EDNS. Я сделал это через "dnscmd /config /enableednsprobes 0", и это не решило проблему.

Больше информации:
Я добавил отрывок Wireshark ( TXT), который показывает запрос DNS. Просто чтобы уточнить, внутренняя сеть - это 2.0.0.0/22, сеть - это внутренняя сеть (я ее не настраивал, и глупо, что она настроена таким образом). Внутренний DNS-сервер 2.0.0.10.

Итак, насколько я вижу, вот что происходит:

  1. Внутренний DNS-сервер запрашивает запись для foodmix.net из своей записи NS (ns2.webhostingstar.com) и не получает ответа
  2. Внутренний DNS-сервер отправляет другой запрос под тем же идентификатором транзакции. Он запрашивает запись A для foodmix.net из своей другой записи NS (ns.webhostingstar.com) и не получает ответа
  3. Внутренний DNS-сервер отправляет запрос под новым идентификатором транзакции. Он запрашивает запись A для foodmix.net с сервера имен 192.31.80.30 (d.gtld-servers.net).
  4. Он получает ответ от 192.31.80.30 без записей, просто перечисляя официальные NS-серверы.

3 ответа

Решение

Хорошо, извините, что отправил вас всех в погоню за гусем. Запустил еще несколько сеансов Wireshark и понял, что ns.webhostingstar.com и ns2.webhostingstar.com не отправляли никаких ответов. Поэтому я заставил наш DNS-сервер подключиться к другому интернет-соединению, и это сработало. Из того, что я могу сказать, сервер имен блокирует наши запросы, приходящие с некоторых из наших IP-адресов. Я связывался с людьми, управляющими сервером, и они собирались выяснить, смогут ли они исправить это со своей стороны.

Обновить
После долгих испытаний мы поняли, что проблема в том, что трафик, отправляемый нам из их сети, отбрасывается. Оказывается, у них где- то был устаревший файл из IANA, в котором перечислены все зарезервированные сети, и он блокировал трафик в эти сети. Наши публичные IP-адреса попали в один из этих диапазонов, несмотря на тот факт, что он был выделен некоторое время назад... они просто использовали устаревший список.

Использование корневых ссылок по умолчанию, если информация об IP/DNS, которую вы пытаетесь использовать в DNS-инфраструктуре Windows 2003, такая же, как в общедоступном Интернете, например, в вашем примере: foodmix.net. 86399 В A 204.xyz тогда вам не нужно добавлять сервер пересылки для домена, однако, пока домен foodmix.net не используется в самом лесу активных каталогов.

На основании ваших записей в журнале событий я обнаружил http://support.microsoft.com/kb/920162 котором говорится, что DNS-серверы Windows 2003 не поддерживают атрибут "DNAME".

Таким образом, есть несколько вариантов: либо установить исправления, упомянутые на сайте MS, либо поработать с вашим поставщиком / конфигурацией DNS и удалить запись DNAME для зоны foodmix.net.

Согласно DavidB http://blacka.com/david/2006/12/04/dns-dname-is-almost-useless/ dnames используются для псевдонимов целых деревьев. Скорее всего, это будет что-то вроде записи @ foodmix.net или *.foodmix.net

Загрузите пакет сервера bind dns с isc: Bind-9.9.1-P1. Запустите BIND-Install.exe и установите только инструменты (снимите флажки с других полей). Это позволит вам использовать dig вместо nslookup. Если вы делаете dig +trace foodmix.net Скорее всего, вы сможете понять, что происходит.

Другие вопросы по тегам