Dhcp не обновляет dns

Обновлено: 04.07.2024

Я наткнулся на странное поведение с машинами Windows, которое, по-видимому, вполне соответствует всем версиям Windows от Vista / 2008 до 8.1 / 2012 R2; это не происходит вместо этого при использовании Windows XP или Windows Server 2003.

Проблема заключается в следующем: когда сетевой адаптер настроен для DHCP, а DHCP-сервер не регистрирует записи DNS от имени своих клиентов (потому что это не может или потому что он не настроен для этого), тогда запись A переадресации регистрируется, но обратная запись PTR - нет .

Еще несколько деталей:

И нет, настройка DHCP-сервера для регистрации DNS здесь не вариант.

Друг не из SF сказал: «Это нормально, PTR обновляется только через DHCP в Win2K +». Судя по вашему опыту, это не совсем так, но может быть близко . Я пытаюсь найти лучшую ссылку. Массимо, ты можешь проверить трассировку проволочной акулы и проверить пакет DHCPREQUEST? Должен быть установлен флаг в «1», если клиент должен обновить и запись A, и запись PTR. Флаг «0» означает, что клиент обновляет запись A и запрашивает, чтобы сервер обновил запись PTR от своего имени. По умолчанию "0". Также в области DHCP убедитесь, что == Перейдите на вкладку DNS, нажмите Свойства, а затем нажмите, чтобы выбрать Динамически обновлять записи DNS A и PTR, только если запрошен клиентами DHCP, установлен флажок ==. Это будет означать, что когда на сервере появляется флаг по умолчанию «0», он попытается зарегистрировать запись PTR на DNS-сервере (ах), для которого настроено обновление. И убедитесь, что учетные данные динамического обновления DNS правильные и для этого применяются соответствующие разрешения У меня такая же проблема. Использование pfSense в качестве DHCP-сервера. Win2k8 DC / DNS. Win7 клиенты. Клиенты регистрируют записи A, но не записи PTR.

Решение заключается в проверке Use this connection's DNS suffix in DNS registration в настройках TCP / IP сетевого интерфейса:

введите описание изображения здесь

Как ни странно, это единственное решение, гарантирующее, что Windows зарегистрирует записи A и PTR для сетевого подключения DHCP; в противном случае он зарегистрирует только запись А.

Я просто столкнулся с этим снова сам, мне кажется, что это ошибка. Было бы хорошо, если бы MS исправил.

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

Computer Configuration\Administrative Templates\Network\DNS Client

Интересный. Я уже пытался «Зарегистрировать записи PTR», но безрезультатно, но «Зарегистрировать записи DNS с DNS-суффиксом для конкретного подключения» могло бы сработать, потому что это действительно происходит при ручном включении этой опции в свойствах сетевого подключения (см. Принятый ответ). ). @Massimo, да, это соответствует тому, что я видел. Мне нужен был способ для этого, поэтому я продолжал играть с политикой, пока она не сработала.

Windows 2000 .. отправляет параметр 81 и его полное доменное имя на сервер DHCP и просит сервер DHCP зарегистрировать запись ресурса указателя (PTR RR) от своего имени. Клиент динамического обновления регистрирует запись ресурса адреса (A RR). .. DHCP-сервер может быть настроен на указание клиенту разрешить серверу регистрировать обе записи в DNS.

Статически настроенные (не DHCP) клиенты регистрируют как A RR, так и PTR RR на DNS-сервере.

В статье также упоминается, Changing registry entries changes the behavior of the dynamic update DNS client. так что может быть обходной путь реестра . Поиск

Изменить:
Согласно статье, на которую ссылается TheCleaner ниже, объект групповой политики, о котором я упоминал в своем комментарии, не будет делать то, что вы хотите (да, MS и программное обеспечение с закрытым исходным кодом). Но флажки «Зарегистрировать адрес этого подключения в DNS» и «Использовать DNS-суффикс этого подключения в регистрации DNS» работают. У меня нет удобной тестовой среды, чтобы попробовать это .

Обратные зоны настроены? У нас как-то трабла была из-за этого, ЕМНИП


забыл добавить!

в обратную зону как раз то и добавляет (PTR) а в прямую отказывается(А)

DHCP на Windows 2003 что-ли?

1) сервер DHCP входит в группу DnsUpdateProxy?
2) в свойствах сервера DHCP в Credentials есть учетная запись, от имени которого производится регистрация записей в DNS

ну скорей всего 3-й вариант
3) Служба DHCP Client на сервере должна работать, иначе не будет работать Dynamic DNS Updates


DHCP да на Windows 2003

1) сервер dhcp он же и контролер домена, думаю разрешения в нутри себя должны быть полными
2)в свойствах сервера DHCP в Credentials есть учетная запись с админскими правами
3) на сервере DHCP Client работает

Ну тогда возникают несколько вопросов.

Вот это в корне меняет дело.

Цитата:
в обратную зону как раз то и добавляет (PTR) а в прямую отказывается(А)

1. Появляются ли записи в прямой зоне просмотра, если на стороне клиента запустить команду ipconfig /registerdns ?
2. На сервере сколько сетевых интерфейсов: 1 или более?
3. Руками в DNS добавляются записи?
4. Возможно у Вас 2 контроллера домена, соответствуют ли в 2-х DNS вложенность в зоне _msdcs ?
5. Запустите dcdiags, есть ли какие-то ошибки, связанные с регистрацией в DNS?

Попробуем докопаться до истины, но боюсь, что легче будет переустановить DHCP сервер. Наверное это не поможет, и, в конце концов, переустановить и DNS-сервер. На боевом контроллере это делать не рекомендуется, т.к. создаются зоны и записи при отработке dcpromo, но в принципе можно создать _msdcs руками и сделать netdiag /fix


результата пока не добился

1. У клиента запусаю команду ipconfig /registerdns результат 0
2. На сервере сколько сетевых интерфейсов: 1
3. В DNS добавляются записи руками
4. Да у нас Вас 2 контроллера домена, вложенность в зоне _msdcs соответствуют в обоих DNS
5. Запустил dcdiags, не чего не сказал все пункты "passed"

DHCP переустановил результат не дало! ДНС пока боюсь трогать, так как не сам подымал и много чего накопилось в них.

Всё-таки похоже на то, что проблема в DNS

Цитата:
У клиента запусаю команду ipconfig /registerdns результат 0

Что при этом происходит:
1) Если клиент получает адрес от DHCP, то после выполнения команды он обновляет аренду DHCP, получает адрес, а также другие данные, в том числе о DNS (если указано в настройках DHCP) и регистрирует все соответствующие имена DNS
2) Если у клиента сетевые настройки прописаны вручную, то после выполнения такой команды, начинает динамическую регистрацию в DNS того, что прописано руками
Т.о, для нас значит, нужно проверить, регистрируются ли имена клиентов с прописанными руками сетевыми настройками

На всякий случай пару вопросов, чтобы сразу их исключить:
1) в DNS-сервере в зоне разрешены безопасные обновления
2) у клиентов, независимо от способа получения адреса, включены службы DNS-клиент и DHCP-клиент, и в сетевом интерфейсе 2 DNS соответствуют тому что есть на самом деле, т.е. именно Ваши КД, а не какой-нибудь адрес DNS-сервера провайдера.
3) надеюсь клиенты - это не какая-нибудь кривая сборка по типу DVD Zver
?

Такое ощущение, что интегрированная в AD зона отказывает в запросе на обновление. Обычно подобное происходит из-за того, что клиенту не разрешено обновлять свою запись (имя) из-за прав доступа на зону или запись.

P.S. DNS пока не трогайте.


1. Да в DNS зоне разрешены как безопасные так и не безопасные обновления
2. На клиентской машине включены службы DNS и DHCP клиент, сетевой интерфейсе получает настройки автоматически и полученные настройки соответствуют параметрам DHCP сервера, т.е. внутрений DNS, шлюз и.п.
3. ОС клиента Windows 7 Pro (лицензионная), к тому же захожу черед учетную запись администратора.
4. После Идентификации клиентской машины на сервере в AD имя компьютера добавляется.

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

Цитата:
После Идентификации клиентской машины на сервере в AD имя компьютера добавляется Уточнение:
1) "имя компьютера добавляется" - это в DNS или в AD?
2) если добавляется в DNS, то происходит это после ввода компьютера в домен из рабочей группы?
3) или появляются только в AD, а до этого компа там не было?


1. Имя компьютера добавляется в AD!
2. запись от клентского компьютера добавляет в обратную зону DNS добавляет как только получает настройки от DHCP без входа в домен находясь просто в рабочей группе.
3. Когда ввожу его в домен то контролер домена нормально добавляет его в AD. Соответственно в AD имя клиента есть, а в DNS он виден только в обратной зоне.
4. Имя домена неоднокомпонентное! пример: dcyktnef.local

Я так понимаю из прочитанной кучи литературы про авторегистрацию в DNS что:
1. Клиент при первом подключении пускает широковещательный запрос для перво попавшего DHCP сервера "кто я"
2. DHCP рамках пула выделяет ip и остальные настройки DNS-a и Шлюза
3. Клиент получив настройки IP, DNS и шлюза, сразу направляет в полученный IP адрес DNS-сервера запрос на регистрацию в нем своего имени и IP в прямой и обратной зоне.
4. В DNS-сервере если разрешены небезопасные записи, то прописывает эти настройки у себя в прямую и обратную зону.

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

это все функциональные роли вашего сервера или нет? Файловый сервер, терминальный, или еще чего?

Причем, это происходит выборочно, win98 - не регистрирует ни в прямой, ни в обратной зоне, win2000/XP - регистрирует.

как вы определяете что в DNS зоне регистрирует записи узлов именно ваш DHCP сервер?
может он и их не регистрирует тоже.
может быть такое что Windows 2000, XP выполняют регистрацию самостоятельно?
Помните на клиентской ОС - настройку TCP/IP протокола - Дополнительно - DNS -> "Зарегистрировать адрес этого соединения в DNS" ?

Для отслеживания работы и выявления ошибок в работе серверных служб используется справочная служба и включение (если необходимо, тк часть ролей ведет их сами) ведения протоколирования или ведения журналов на проблемных службах.
В вашем случае имеется проблема между взаимодействием DNS и DHCP служб на Windows Server 2003.

Для DHCP сервера протоколирование ведется автоматически - см статью Windows Server 2003 TechCenter - DHCP - Analyzing server log files

Для DNS сервера мониторинг нужно подключать дополнительно (рекомендую включить режим вывода подробной информации) - см статью Windows Server 2003 TechNet - DNS - Using server debug logging options

---------
Вернемся же к вопросу темы:

Все, что вы описали,все есть. И параметры, которые прописаны в DHCP сервисе: маршрутизатор, суффикс, DNS -сервер и т.д - все устанавливается на всех рабочих станциях, в том числе и на win98. И все это увидеть с помощью ipconfig /all
давайте получим конфигурацию DHCP сервера через команды раздела netsh dhcp server show, а именно по настройкам DNS:

Например, там говорится:

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

Вот поэтому мне кажется что в вашей конфигурации не хватает как раз этой учетноq записи.

Настраивается она (см более подробно справку встроеную) : через netsh set dnscredentials - как указано выше, либо в свойствах DHCP сервера на последней закладке: Устновить учетные данные для динамического обновления.
Создайте новую учетную запись служб, пароль никогда не истекает и добавьте ее в группу Builtin\DnsUpdateProxy (НЕ следует указывать для этих целей учетную запись администратора домена)
вот пример команд

2.
удалить запись узла из DNS зоны
3.
включить протоколирование DNS и DHCP (во время работы журналы используются, поэтому лучше их скопировать в новый файлы и открывать WordPad'ом)
4.
перезагрузить клиентскую станцию
5.
просмотреть результат через инструменты консолей DHCP и DNS
6.
просмотреть результаты журналов их работы.


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

Хотя службы DNS в общем просты, в их работе бывают определенные нарушения. Довольно часто причиной этих нарушений оказываются неясные формулировки или плохо документированные параметры в различных диалоговых окнах Windows. В данной статье рассматриваются типичные неполадки DNS, которые доставляют немало хлопот администраторам.

Сбой динамического обновления


Управление DNS в домене упрощается благодаря возможности динамического обновления записей A и PTR на серверах DNS клиентами Windows. Таким образом, если в интегрированной с AD зоне на предприятии используется IP-адресация, клиентские компьютеры могут динамически обновлять AD, добавляя в нее свои новые IP-адреса. Но иногда можно заметить, что клиентские компьютеры не пополняют записей DNS новыми адресами. Чтобы корректно выполнить обновление, необходимо разрешить динамическое обновление на сервере DNS. Для этого требуется открыть окно свойств зоны DNS и выбрать режим Secure only for Dynamic updates (экран 1).
Затем следует открыть диалоговое окно Advanced TCP/IP Settings сетевого адаптера на клиентской системе, выбрать вкладку DNS и убедиться, что установлен флажок Register this connection’s addresses in DNS.
Наконец, клиентская служба DHCP (не только клиентская служба DNS) выполняет регистрацию DNS и должна функционировать на каждом компьютере. Даже если DHCP не используется для назначения IP-адресов, клиентская служба DHCP должна работать на всех компьютерах для динамического обновления записей DNS.
По умолчанию клиент обновляет записи DNS при начальной загрузке, при изменении IP-адреса или имени либо при выполнении команды ipconfig/registerdns. Кроме того, клиент повторно регистрирует IP-адрес через каждые 24 часа.

Падение производительности из-за клиентской службы DNS

При запуске клиентской службы DNS все записи из hosts-файла загружаются в кэш. Если для блокирования доступа к нежелательным именам узлов используется очень большой hosts-файл, эта служба может существенно замедлять работу компьютера. В таком случае ее стоит отключить.
Обычно отключение клиентской службы DNS не влияет на преобразование DNS. Тогда возникает вопрос, зачем вообще нужна такая служба.
Дело в том, что наличие клиентской службы DNS — не обязательное требование для преобразования имен; она лишь повышает эффективность и гибкость этого процесса. Главная цель клиентской службы DNS — обеспечить локальное кэширование записей DNS. В сущности, служба представляет собой сервер DNS. Вместо того чтобы опубликовать базу данных записей DNS, она просто кэширует ранее преобразованные записи DNS для ускорения будущих операций. Помимо кэширования, служба оптимизирует сетевые соединения путем приоритизации записей о ресурсах на основе сетевого местоположения, скорости и готовности.

Экран 1

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

Обязательная оптимизация правил брандмауэра

Если брандмауэр настроен на передачу любых запросов на сервер DNS, то необходимы правила, препятствующие злоупотреблениям со стороны посторонних лиц. DNS-запросы обычно поступают в UDP-порт 53 из порта-источника с номером более 1023. Сервер DNS отвечает с порта-источника 53 на тот же порт, используемый клиентом. Большинство брандмауэров c проверкой пакетов на соответствие заданным условиям может обслуживать ответы DNS, поэтому для управления запросами достаточно одного правила.
Если размер ответа на запрос превышает 512 байт, то сервер DNS сообщает клиенту, что ответ усечен. Клиент может повторно представить запрос с Extended DNS, в котором используются UDP-ответы большего размера, или клиент может повторно послать запрос через TCP. Если разрешены запросы TCP, необходимо правило, разрешающее поступление пакетов в TCP-порт 53 из порта-источника с номером более 1023. Если известно, что сервер DNS не отвечает на запросы размером более 512 байт, то порт можно оставить закрытым. В некоторых серверах DNS UDP- или TCP-порт 53 используется в качестве порта-источника и порта назначения для запросов сервер-сервер, поэтому, возможно, придется соответствующим образом настроить брандмауэр.

Каким образом Windows опрашивает несколько серверов DNS

По умолчанию Windows сначала запрашивает указанный первым сервер DNS на первичном сетевом адаптере. Если этот сервер не отвечает в течение секунды, Windows посылает запрос на указанный первым сервер DNS на любом другом сетевом адаптере компьютера. Если ответ не получен в течение двух секунд, Windows посылает запрос всем серверам DNS на всех сетевых адаптерах компьютера. Если в течение двух секунд ни один сервер не откликается, Windows вновь посылает запрос всем серверам и ждет четыре секунды. При необходимости запрос всем серверам повторяется, и ожидание длится восемь секунд.
Windows вносит коррективы в список опрашиваемых серверов DNS в зависимости от условий работы сети. Если ни один из серверов DNS для адаптера не отвечает на запросы, Windows предполагает, что произошел отказ сети, и не запрашивает серверы через этот адаптер в течение 30 секунд. Если один сервер DNS на сетевом адаптере возвращает отрицательный ответ на запрос, Windows не посылает повторных запросов ни на один из серверов DNS этого адаптера. Кроме того, Windows может изменить порядок опроса серверов DNS в пользу сервера, который отвечает быстрее других.

Медленная процедура настройки из графического интерфейса

Чтобы настраивать конфигурации большого числа серверов DNS на клиентских компьютерах, нужен более простой и эффективный метод, чем использование графического интерфейса Windows. Попробуем применить утилиты, запускаемые из командной строки. Чтобы получить список всех серверов DNS клиента, следует ввести команду

c:>netsh interface ip
show dns

Очистить список серверов DNS сетевого адаптера можно с помощью команды

c:>netsh interface ip
set DNS «Local Area Connection»
static none

где «Local Area Connection» — имя сетевого адаптера.
Чтобы добавить сервер DNS для сетевого адаптера («Local Area Connection» — имя сетевого адаптера), нужно ввести

:>netsh interface ip
set DNS «Local Area Connection»
static 192.168.0.1

Проблемы домена DNS

Ошибки в настройке параметров DNS — типичная причина неполадок в доменах Windows. Самый быстрый способ проверить параметры — выполнить преобразование самого имени домена, что можно сделать с помощью команды

c:>nslookup

Эта команда должна выдать список IP-адресов, которые указывают на каждый из контроллеров домена. Если получены иные результаты, необходимо проверить настройки DNS.
Проверить конфигурацию DNS можно, выполнив быстрый тест сетевой конфигурации на любом компьютере Windows XP или Windows Server 2003. В командной строке нужно ввести

c:>netsh diag show test

При этом выполняется эхо-тестирование всех серверов DNS и шлюзов в конфигурации TCP/IP. Если имеется набор ресурсов Microsoft Windows Server 2003 Resource Kit, то можно применить команду netdiag или dnsdiag

C:>netdiag /test:dns

C:>dnsdiag

c:> echo ls -d
nslookup —

BIND — акроним, а не глагол

Когда отключать рекурсию?

Блокирование узлов Internet

Дополнительные советы по DNS

Экран А

Чтобы сбалансировать нагрузку от DNS-запросов, сервер DNS использует циклическую ротацию для прохода по списку IP-адресов, равномерно распределяя трафик между различными серверами. При упорядочении с сетевой маской сервер DNS пытается выдать IP-адрес узла, физически расположенного ближе всех к клиенту. Для этого сервер DNS просматривает несколько первых октетов IP-адреса, предполагая, что сервер с IP-адресом, похожим на адрес клиента, будет ближе всего расположен к нему физически. По умолчанию сервер DNS отдает предпочтение любому адресу хоста в одной сети класса C с клиентом.
Может показаться, что нельзя одновременно применить циклическую систему и упорядочение с сетевой маской, но, как показано на экране A, Windows позволяет сочетать оба метода. Если выбраны оба метода, Windows проверяет список IP-адресов узла, чтобы выяснить, насколько близко IP-адрес в списке соответствует IP-адресу клиента. Если обнаружено совпадение, этому IP-адресу будет назначен более высокий приоритет для циклической ротации. Результат: сервер DNS выполняет циклическую ротацию IP-адресов, но чаще выбирает ближайшие к клиенту серверы.

Интеграция DNS и Active Directory

При установке DNS на контроллере домена (DC) Windows можно сохранить зонные файлы не в простых текстовых файлах, а в базе данных Active Directory (AD). Возникает вопрос: зачем тогда интегрировать зону с AD?
В большинстве случаев интеграция зон DNS с AD приносит много преимуществ, главное из которых — более эффективная репликация. В зонах, интегрированных с AD, автоматизирована репликация записей DNS между серверами. Репликация AD — репликация с несколькими «ведущими», то есть можно внести изменение на любом DC, и это изменение будет автоматически распространено по домену. Для зон DNS, которые не интегрированы с AD, необходимо назначить первичные и вторичные серверы DNS. Изменения обычно вносятся на первичном сервере, который обновляет все вторичные.

Читайте также: