Настройка и проверка разрешения имен dns
В своё время открыл для себя простую истину: хочешь запомнить что-то — веди конспект (даже при чтении книги), а хочешь закрепить и систематизировать — донеси до людей (напиши статью). Поэтому, после двух лет работы в системной интеграции (сфере, которую я в бытность свою системным администратором, считал просто рогом изобилия для жаждущих прокачки специалистов), когда я понял, что знания постепенно вытесняются навыками правки документации и конфигурированию по мануалам и инструкциям, для поддержания формы я начал писать статьи о базовых вещах. Например вот — о DNS. Делал тогда я это больше для себя, но подумал — вдруг кому пригодится.
Сервис в современных сетях если не ключевой, то один из таковых. Те, для кого служба DNS — не нова, первую часть могут спокойно пропустить.
Содержание:
(анкеров нет, поэтому содержание без ссылок)
1. Основные сведения
DNS — это база данных, содержащая, в основном, информацию о сопоставлении имён сетевых объектов их IP-адресам. «В основном» — потому что там и ещё кое-какая информация хранится. А точнее, ресурсные записи (Resource Records — RR) следующих типов:
А — то самое сопоставление символьного имени домена его IP адресу.
АААА — то же что А, но для адресов IPv6.
CNAME — Canonical NAME — псевдоним. Если надо чтобы сервер с неудобочитаемым именем, типа nsk-dc2-0704-ibm, на котором вертится корпоративный портал, откликался также на имя portal, можно создать для него ещё одну запись типа А, с именем portal и таким же IP-адресом. Но тогда, в случае смены IP адреса (всякое бывает), нужно будет пересоздавать все подобные записи заново. А если сделать CNAME с именем portal, указывающий на nsk-dc2-0704-ibm, то ничего менять не придётся.
MX — Mail eXchanger — указатель на почтовый обменник. Как и CNAME, представляет собой символьный указатель на уже имеющуюся запись типа A, но кроме имени содержит также приоритет. MX-записей может быть несколько для одного почтового домена, но в первую очередь почта будет отправляться на тот сервер, для которого указано меньшее значение в поле приоритета. В случае его недоступности — на следующий сервер и т.д.
NS — Name Server — содержит имя DNS-сервера, ответственного за данный домен. Естественно для каждой записи типа NS должна быть соответствующая запись типа А.
SOA — Start of Authority — указывает на каком из NS-серверов хранится эталонная информация о данном домене, контактную информацию лица, ответственного за зону, тайминги хранения информации в кэше.
SRV — указатель на сервер, держатель какого-либо сервиса (используется для сервисов AD и, например, для Jabber). Помимо имени сервера содержит такие поля как Priority (приоритет) — аналогичен такому же у MX, Weight (вес) — используется для балансировки нагрузки между серверами с одинаковым приоритетом — клиенты выбирают сервер случайным образом с вероятностью на основе веса и Port Number — номер порта, на котором сервис «слушает» запросы.
Все вышеперечисленные типы записей встречаются в зоне прямого просмотра (forward lookup zone) DNS. Есть ещё зона обратного просмотра (reverse lookup zone) — там хранятся записи типа PTR — PoinTeR — запись противоположная типу A. Хранит сопоставление IP-адреса его символьному имени. Нужна для обработки обратных запросов — определении имени хоста по его IP-адресу. Не требуется для функционирования DNS, но нужна для различных диагностических утилит, а также для некоторых видов антиспам-защиты в почтовых сервисах.
Кроме того, сами зоны, хранящие в себе информацию о домене, бывают двух типов (классически):
Основная (primary) — представляет собой текстовый файл, содержащий информацию о хостах и сервисах домена. Файл можно редактировать.
Дополнительная (secondary) — тоже текстовый файл, но, в отличие от основной, редактированию не подлежит. Стягивается автоматически с сервера, хранящего основную зону. Увеличивает доступность и надёжность.
Для регистрации домена в интернет, надо чтоб информацию о нём хранили, минимум, два DNS-сервера.
В Windows 2000 появился такой тип зоны как интегрированная в AD — зона хранится не в текстовом файле, а в базе данных AD, что позволяет ей реплицироваться на другие контроллеры доменов вместе с AD, используя её механизмы репликации. Основным плюсом данного варианта является возможность реализации безопасной динамической регистрации в DNS. То есть записи о себе могут создать только компьютеры — члены домена.
В Windows 2003 появилась также stub-зона — зона-заглушка. Она хранит информацию только о DNS-серверах, являющихся полномочными для данного домена. То есть, NS-записи. Что похоже по смыслу на условную пересылку (conditional forwarding), которая появилась в этой же версии Windows Server, но список серверов, на который пересылаются запросы, обновляется автоматически.
Итеративный и рекурсивный запросы.
DNS-сервер обращается к одному из корневых серверов интернета, которые хранят информацию о полномочных держателях доменов первого уровня или зон (ru, org, com и т.д.). Полученный адрес полномочного сервера он сообщает клиенту.
Клиент обращается к держателю зоны ru с тем же запросом.
DNS яндекса возвращает нужный адрес.
Такая последовательность событий редко встречается в наше время. Потому что есть такое понятие, как рекурсивный запрос — это когда DNS-сервер, к которому клиент изначально обратился, выполняет все итерации от имени клиента и потом возвращает клиенту уже готовый ответ, а также сохраняет у себя в кэше полученную информацию. Поддержку рекурсивных запросов можно отключить на сервере, но большинство серверов её поддерживают.
Клиент, как правило, обращается с запросом, имеющим флаг «требуется рекурсия».
Заголовок состоит из следующих полей:
Идентификация — в это поле клиентом генерируется некий идентификатор, который потом копируется в соответствующее поле ответа сервера, чтобы можно было понять на какой запрос пришёл ответ.
Флаги — 16-битовое поле, поделенное на 8 частей:
Вторая строка — ответ сервера: на указанный исходный порт с указанным идентификатором запроса. Ответ содержит одну RR (ресурсную запись DNS), являющуюся ответом на запрос, 2 записи полномочий и 5 каких-то дополнительных записей. Общая длина ответа — 196 байт.
3. TCP и UDP
Также передача зон от основных серверов к дополнительным осуществляется по TCP, поскольку в этом случае передаётся куда больше 512 байт.
4. DNS в Windows Server 2008 и 2012
В Windows 2008 появились следующие возможности:
Фоновая загрузка зон
- определяются все зоны, которые должны быть загружены;
- из файлов или хранилища доменных служб Active Directory загружаются корневые ссылки;
- загружаются все зоны с файловой поддержкой, то есть зоны, хранящиеся в файлах, а не в доменных службах Active Directory;
- начинается обработка запросов и удаленных вызовов процедур (RPC);
- создаются один или несколько потоков для загрузки зон, хранящихся в доменных службах Active Directory.
Поскольку задача загрузки зон выполняется отдельными потоками, DNS-сервер может обрабатывать запросы во время загрузки зоны. Если DNS-клиент запрашивает данные для узла в зоне, который уже загружен, DNS-сервер отправляет в ответ данные (или, если это уместно, отрицательный ответ). Если запрос выполняется для узла, который еще не загружен в память, DNS-сервер считывает данные узла из доменных служб Active Directory и обновляет соответствующим образом список записей узла.
Поддержка IPv6-адресов
Протокол Интернета версии 6 (IPv6) определяет адреса, длина которых составляет 128 бит, в отличие от адресов IP версии 4 (IPv4), длина которых составляет 32 бита.
DNS-серверы с ОС Windows Server 2008 теперь полностью поддерживают как IPv4-адреса, так и IPv6-адреса. Средство командной строки dnscmd также принимает адреса в обоих форматах. Cписок серверов пересылки может содержать и IPv4-адреса, и IPv6-адреса. DHCP-клиенты также могут регистрировать IPv6-адреса наряду с IPv4-адресами (или вместо них). Наконец, DNS-серверы теперь поддерживают пространство имен домена ip6.arpa для обратного сопоставления.
Изменения DNS-клиента
Разрешение имен LLMNR
Клиентские компьютеры DNS могут использовать разрешение имен LLMNR (Link-local Multicast Name Resolution), которое также называют многоадресной системой DNS или mDNS, для разрешения имен в сегменте локальной сети, где недоступен DNS-сервер. Например, при изоляции подсети от всех DNS-серверов в сети из-за сбоя в работе маршрутизатора клиенты в этой подсети, поддерживающие разрешение имен LLMNR, по-прежнему могут разрешать имена с помощью одноранговой схемы до восстановления соединения с сетью.
Кроме разрешения имен в случае сбоя в работе сети функция LLMNR может также оказаться полезной при развертывании одноранговых сетей, например, в залах ожидания аэропортов.
Изменения Windows 2012 в части DNS коснулись, преимущественно, технологии DNSSEC (обеспечение безопасности DNS за счет добавления цифровых подписей к записям DNS), в частности — обеспечение динамических обновлений, которые были недоступны, при включении DNSSEC в Windows Server 2008.
5. DNS и Active directory
Active Directory очень сильно опирается в своей деятельности на DNS. С его помощью контроллеры домена ищут друг друга для репликации. С его помощью (и службы Netlogon) клиенты определяют контроллеры домена для авторизации.
Для обеспечения поиска, в процессе поднятия на сервере роли контроллера домена, его служба Netlogon регистрирует в DNS соответствующие A и SRV записи.
SRV записи регистрируемые службой Net Logon:
_ldap._tcp.DnsDomainName
_ldap._tcp.SiteName._sites.DnsDomainName
_ldap._tcp.dc._msdcs.DnsDomainName
_ldap._tcp.SiteName._sites.dc._msdcs.DnsDomainName
_ldap._tcp.pdc._msdcs.DnsDomainName
_ldap._tcp.gc._msdcs.DnsForestName
_ldap._tcp.SiteName._sites.gc._msdcs. DnsForestName
_gc._tcp.DnsForestName
_gc._tcp.SiteName._sites.DnsForestName
_ldap._tcp.DomainGuid.domains._msdcs.DnsForestName
_kerberos._tcp.DnsDomainName.
_kerberos._udp.DnsDomainName
_kerberos._tcp.SiteName._sites.DnsDomainName
_kerberos._tcp.dc._msdcs.DnsDomainName
_kerberos.tcp.SiteName._sites.dc._msdcs.DnsDomainName
_kpasswd._tcp.DnsDomainName
_kpasswd._udp.DnsDomainName
Первая часть SRV-записи идентифицирует службу, на которую указывает запись SRV. Существуют следующие службы:
_ldap — Active Directory является службой каталога, совместимой с LDAP-протоколом, с контроллерами домена, функционирующими как LDAP-серверы. Записи _ldap SRV идентифицирует LDAP серверы, имеющиеся в сети. Эти серверы могут быть контроллерами домена Windows Server 2000+ или другими LDAP-серверами;
_kerberos — SRV-записи _kerberos идентифицируют все ключевые центры распределения (KDC — Key Distribution Centers) в сети. Они могут быть контроллерами домена с Windows Server 2003 или другими KDC-серверами;
_kpassword — идентифицирует серверы изменения паролей kerberos в сети;
_gc — запись, относящаяся к функции глобального каталога в Active Directory.
В поддомене _mcdcs регистрируются только контроллеры домена Microsoft Windows Server. Они делают и основные записи и записи в данном поддомене. Не-Microsoft-службы делают только основные записи.
Записи, содержащие идентификатор сайта SiteName, нужны для того чтобы клиент мог найти контроллер домена для авторизации в своём сайте, а не лез авторизовываться в другой город через медленные каналы.
DomainGuid — глобальный идентификатор домена. Запись, содержащщая его, нужна на случай переименования домена.
Как происходит процесс поиска DC
Во время входа пользователя, клиент инициирует DNS-локатор, при помощи удалённого вызова процедуры (Remote Procedure Call — RPC) службой NetLogon. В качестве исходных данных в процедуру передаются имя компьютера, название домена и сайта.
Служба посылает один или несколько запросов с помощью API функции DsGetDcName()
DNS сервер возвращает запрошенный список серверов, рассортированный согласно приоритету и весу. Затем клиент посылает LDAP запрос, используя UDP-порт 389 по каждому из адресов записи в том порядке, как они были возвращены.
Все доступные контроллеры доменов отвечают на этот запрос, сообщая о своей работоспособности.
После обнаружения контроллера домена, клиент устанавливает с ним соединение по LDAP для получения доступа к Active Directory. Как часть их диалога, контроллер домена определяет к в каком сайте размещается клиент, на основе его IP адреса. И если выясняется, что клиент обратился не к ближайшему DC, а, например, переехал недавно в другой сайт и по привычке запросил DC из старого (информация о сайте кэшируется на клиенте по результатам последнего успешного входа), контроллер высылает ему название его (клиента) нового сайта. Если клиент уже пытался найти контроллер в этом сайте, но безуспешно, он продолжает использовать найденный. Если нет, то инициируется новый DNS-запрос с указанием нового сайта.
Служба Netlogon кэширует информацию о местонахождении контроллера домена, чтобы не инициировать всю процедуру при каждой необходимости обращения к DC. Однако, если используется «неоптимальный» DC (расположенный в другом сайте), клиент очищает этот кэш через 15 минут и инициирует поиски заново (в попытке найти свой оптимальный контроллер).
Если у комьютера отсутствует в кэше информация о его сайте, он будет обращаться к любому контроллеру домена. Для того чтобы пресечь такое поведение, на DNS можно настроить NetMask Ordering. Тогда DNS выдаст список DC в таком порядке, чтобы контроллеры, расположенные в той же сети, что и клиент, были первыми.
Пример: Dnscmd /Config /LocalNetPriorityNetMask 0x0000003F укажет маску подсети 255.255.255.192 для приоритетных DC. По умолчанию используется маска 255.255.255.0 (0x000000FF)
В этой статье описываются наилучшие методы настройки параметров клиента системы доменных имен (DNS). Рекомендации в этой статье посвящены установке среды 2000 Windows или Windows Server 2003, где ранее не было определенной инфраструктуры DNS.
Применяется к: Windows Server 2012 R2
Исходный номер КБ: 825036
Решение
В этот раздел, описание метода или задачи включены действия, содержащие указания по изменению параметров реестра. Однако неправильное изменение параметров реестра может привести к возникновению серьезных проблем. Поэтому следует в точности выполнять приведенные инструкции. Для дополнительной защиты создайте резервную копию реестра, прежде чем редактировать его. Так вы сможете восстановить реестр, если возникнет проблема. Дополнительные сведения см. в дополнительных сведениях о том, как создать и восстановить реестр в Windows
Чтобы устранить эту проблему, настройте сервер маршрутов и удаленного доступа, чтобы он не зарегистрировал IP-адрес адаптеров PPP в DNS или базе данных WINS. Для этого выполните следующие действия:
Настройка сервера маршрутов и удаленного доступа для регистрации только IP-адреса локального сетевого адаптера в WINS
Выполните действия в этом разделе только в том случае, если на сервере маршрутов и удаленного доступа работает служба WINS. Кроме того, если на сервере работает сервер малого бизнеса 2000 SP1, сервер малого бизнеса 2000 SP1a или Windows Small Business Server 2003, вам не нужно завершать действия в этом разделе. По умолчанию эти версии сервера Windows настраиваются, чтобы предотвратить регистрацию IP-адреса адаптеров PPP в базе данных WINS.
Симптомы
Компьютер под управлением Microsoft Windows 2000 Server или Microsoft Windows Server 2003 может иметь проблемы с подключением, если сервер настроен следующим образом:
- Служба маршрутного и удаленного доступа настроена для разрешения входящих подключений.
- На сервере, на который запущен маршрут и удаленный доступ, установлена и настроена служба Windows доменного имени (DNS) или Windows Сервер имени Интернета (WINS).
После подключения удаленного компьютера к серверу маршрутов и удаленного доступа с помощью подключения к виртуальной частной сети (VPN) может возникать один или несколько следующих симптомов:
Сервер не отвечает, когда клиент запрашивает обновление.
Возможные причины:
-Сервер не является сервером ISA.
-Сервер не съехался.
При попытке с помощью сервера маршрутизов и удаленного доступа с локального компьютера с помощью имени NetBIOS сервера или полностью квалифицированного доменного имени (FQDN) компьютер пытается цитировать неправильный IP-адрес.
Если сервер маршрутивки и удаленного доступа является магистралным браузером для сети, вы не можете просматривать список компьютеров в сетевом соседстве или в местах моей сети.
Нет серверов Logon, доступных для обслуживания вашего запроса logon
Эта проблема обычно затрагивает компьютеры с сервером малого бизнеса, так как эта версия Windows Server часто является единственным сервером в сети. Однако эта проблема может затронуть Windows 2000-сервер или любой сервер на Windows Server 2003 и сервер удаленного доступа, работающий с DNS или службой WINS.
Контроллер домена без установки DNS
Если вы не используете DNS, интегрированный в Active Directory, и у вас есть контроллеры домена, которые не установлены DNS, Корпорация Майкрософт рекомендует настроить параметры клиента DNS в соответствии с этими спецификациями:
- Настройте параметры клиента DNS на контроллере домена, чтобы указать на DNS-сервер, который является авторитетным для зоны, соответствующей домену, в котором компьютер является участником. Локальный первичный и вторичный DNS-сервер предпочтительнее из-за соображений трафика широкой сети (WAN).
- Если отсутствует локальный DNS-сервер, указать на DNS-сервер, доступный по надежной ссылке WAN. Надежность определяется временем и пропускной способностью.
- Не настраивайте параметры клиента DNS на контроллерах домена, чтобы указать на DNS-серверы вашего isP. Вместо этого внутренний DNS-сервер должен переадружать на DNS-серверы isP для разрешения внешних имен.
Добавление записей A в DNS
Выполните эти действия только в том случае, если сервер маршрутивки и удаленного доступа является контроллером домена.
Выберите Начните, указать на программы или все программы, указать на административные средства, а затем выберите DNS.
В консоли DNS раздвигаем объект сервера, расширяем папку Зоны смотра вперед, а затем выберите папку для локального домена.
В меню Действия выберите Новый хост.
В текстовом поле IP-адреса введите IP-адрес локального сетевого адаптера сервера.
Оставьте поле Имя пустым, выберите Создать связанную запись PTR, а затем выберите Add Host.
Если сервер является глобальным сервером каталогов, перейдите к шагу 7. Если сервер не является глобальным сервером каталогов, вам не нужно выполнить действия с 7 по 11. Чтобы определить, является ли сервер глобальным сервером каталогов, выполните следующие действия:
- Выберите Начните, указать на программы или все программы, указать на административные средства, а затем выберите сайты и службы Active Directory.
- В консоли Active Directory Sites and Services разложите папку Sites, расширьте сайт, содержащий сервер, а затем расширите объект сервера.
- Щелкните правой кнопкой мыши NTDS Параметры, а затем выберите Свойства.
- На вкладке General найдите поле "Глобальный каталог". Если этот контрольный ящик проверяется, сервер — это сервер глобального каталога.
В папке Зоны forward Lookup в консоли DNS разложите папку для локального домена, разложите папку MSDCS и выберите папку GC.
В меню Действия выберите Новый хост.
В поле IP-адрес введите IP-адрес локального сетевого адаптера сервера.
Оставьте поле Имя пустым, выберите Создать связанную запись PTR, а затем выберите Add Host.
Контроллер домена с установленным DNS
На контроллере домена, который также выступает в качестве DNS-сервера, Корпорация Майкрософт рекомендует настроить параметры клиента DNS-контроллера домена в соответствии с этими спецификациями:
Если сервер является первым и единственным контроллером домена, который вы устанавливаете в домене, а сервер выполняет DNS, настройте параметры клиента DNS, чтобы указать IP-адрес этого первого сервера. Например, необходимо настроить параметры клиента DNS, чтобы указать на себя. Не перечислять другие DNS-серверы, пока в этом домене не будет размещен другой контроллер домена.
Во время процесса DCPromo необходимо настроить дополнительные контроллеры домена, чтобы указать на другой контроллер домена, который работает с DNS в домене и на сайте, и в котором размещено пространство имен домена, в котором установлен новый контроллер домена. или при использовании 3-й стороной DNS на DNS-сервере, на котором размещена зона для домена Active Directory dc. Не настраивать контроллер домена для использования собственной службы DNS для разрешения имен до тех пор, пока вы не убедились в том, что репликация Active Directory входящие и исходящие не функционирует и будет работать в срок. Невыполнение этого может привести к DNS "Острова".
Дополнительные сведения о связанной теме нажмите на следующий номер статьи, чтобы просмотреть статью в базе знаний Майкрософт:
275278 DNS Server становится островом, когда контроллер домена указывает на себя для _msdcs.ForestDnsName домена
После успешного завершения репликации DNS может быть настроен на каждом контроллере домена двумя способами в зависимости от требований среды. Параметры конфигурации:
- Настройте предпочтительный DNS-сервер в свойствах TCP/IP на каждом контроллере домена, чтобы использовать себя в качестве основного DNS Server.
- Преимущества. Гарантирует, что запросы DNS, возникающие из контроллера домена, будут разрешены локально, если это возможно. Свести к минимуму влияние DNS-запросов контроллера домена на сеть.
- Недостатки. В зависимости от репликации Active Directory для обеспечения того, чтобы зона DNS была в курсе. Длительные сбои репликации могут привести к неполному набору записей в зоне.
- Преимущества:
- Минимизирует зависимость от репликации Active Directory для обновлений зон DNS записей локатора контроллера домена. Он включает более быстрое обнаружение новых или обновленных записей локатора контроллера домена, так как время задержки репликации не является проблемой.
- Предоставляет один авторитетный DNS-сервер, который может быть полезен при устранении неполадок с репликацией Active Directory
- Будет более активно использовать сеть для решения запросов DNS, возникающих из контроллера домена
- Разрешение имен DNS может зависеть от стабильности сети. Потеря подключения к предпочтительному DNS-серверу приведет к неспособности разрешить запросы DNS от контроллера домена. Это может привести к очевидной потере подключения даже к расположениям, которые не являются в потерянном сегменте сети.
Возможно сочетание этих двух стратегий с удаленным DNS-сервером в качестве предпочтительного DNS-сервера, а локальный контроллер домена — альтернативным (или наоборот). Хотя эта стратегия имеет множество преимуществ, перед изменением конфигурации необходимо учитывать некоторые факторы:
- Клиент DNS не использует каждый из DNS-серверов, перечисленных в конфигурации TCP/IP для каждого запроса. По умолчанию при запуске клиент DNS будет пытаться использовать сервер в записи предпочитаемого DNS-сервера. Если этот сервер не отвечает по какой-либо причине, клиент DNS перейдет на сервер, указанный в альтернативной записи DNS-сервера. Клиент DNS будет продолжать использовать этот альтернативный DNS-сервер до тех пор, пока:
- Он не отвечает на запрос DNS или:
- Значение ServerPriorityTimeLimit достигается (15 минут по умолчанию).
Только невыполнение ответа приведет к тому, что клиент DNS переключает предпочтительные DNS-серверы; Получение достоверного, но неправильного ответа не вызывает попытку клиента DNS на другом сервере. В результате настройка контроллера домена с собой и другим DNS-сервером в качестве предпочтительных и альтернативных серверов помогает гарантировать, что ответ получен, но не гарантирует точность этого ответа. Сбои обновления записей DNS на обоих серверах могут привести к несогласованному разрешению имен.
- Не настраивайте параметры клиента DNS на контроллерах домена, чтобы указать на DNS-серверы поставщика интернет-услуг (ISP). Если настроить параметры DNS-клиентов, чтобы указать на DNS-серверы вашего isP, служба Netlogon на контроллерах домена не регистрирует правильные записи для службы каталогов Active Directory. С помощью этих записей другие контроллеры домена и компьютеры могут находить сведения, связанные с Active Directory. Контроллер домена должен зарегистрировать свои записи на своем DNS-сервере.
Чтобы перенаправление внешних запросов DNS, добавьте DNS-серверы isP в качестве DNS-переадверщиков в консоль управления DNS. Если не настроены переадверщики, используйте серверы корневых подсказок по умолчанию. В обоих случаях, если вы хотите, чтобы внутренний DNS-сервер переадновится на сервер DNS в Интернете, необходимо также удалить корневой "". (также известная как зона "точка") в консоли управления DNS в папке Зоны forward Lookup.
- Если контроллер домена, на котором размещенА DNS, установлено несколько сетевых адаптеров, необходимо отключить один адаптер для регистрации имен DNS.
Дополнительные сведения о том, как правильно настроить DNS в этой ситуации, щелкните следующий номер статьи, чтобы просмотреть статью в базе знаний Майкрософт:
292822 и проблемы с подключением имен на сервере маршрутиза и удаленного доступа, который также выполняет DNS или WINS
Чтобы проверить параметры клиента DNS-контроллера домена, введите следующую команду в командной подсказке, чтобы просмотреть сведения о конфигурации ip-протокола Интернета: ipconfig /all
Чтобы изменить конфигурацию клиента DNS контроллера домена, выполните следующие действия:Щелкните правой кнопкой мыши Мои сетевые места, а затем выберите Свойства.
Щелкните правой кнопкой мыши локальное подключение к области, а затем выберите Свойства.
Выберите протокол Интернета (TCP/IP) и выберите свойства.
Выберите Расширенный, а затем выберите вкладку DNS. Чтобы настроить данные DNS, выполните следующие действия:
- В DNS-серверах в порядке использования добавьте рекомендуемые DNS-серверные адреса.
- Если параметр Для разрешения неквалифицированных имен задан для приложения этих суффиксов DNS (в порядке), Корпорация Майкрософт рекомендует сначала указать доменное имя Active Directory DNS (в верхней части).
- Убедитесь, что Суффикс DNS для этого параметра подключения такой же, как доменное имя Active Directory.
- Убедитесь, что выбраны адреса этого подключения в поле DNS.
- Выберите ОК три раза.
При изменении параметров клиента DNS необходимо очистить кэш разрешения DNS и зарегистрировать записи ресурсов DNS. Чтобы очистить кэш разрешения DNS, введите следующую команду в командной подсказке: ipconfig /flushdns
Чтобы зарегистрировать записи ресурсов DNS, введите следующую команду по командной подсказке: ipconfig /registerdnsЧтобы подтвердить правильность записей DNS в базе данных DNS, запустите консоль управления DNS. Должна быть запись для имени компьютера. (Эта запись хостов — запись "A" в расширенных представлениях.) Также должна быть запись Start of Authority (SOA) и запись Name Server (NS), которая указывает на контроллер домена.
Добавление значений реестра PublishAddresses и RegisterDnsARecords для служб DNS и Netlogon
Выберите Начните, выберите Выполнить, введите regedit, а затем выберите ОК.
Найдите и выберите следующий подкай реестра: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DNS\Parameters
В меню Редактирование указать значение New, а затем выберите строковую ценность, чтобы добавить следующее значение реестра:
Имя значения: PublishAddresses
Тип данных: REG_SZ
Данные о значении: IP-адрес локального сетевого адаптера сервера. Если необходимо указать несколько IP-адресов, разделять адреса с пробелами.Найдите и выберите следующий подкай реестра: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Netlogon\Parameters
В меню Редактирование указать значение New, а затем выберите значение DWORD, чтобы добавить следующее значение реестра:
Имя значения: RegisterDnsARecords
Тип данных: REG_DWORD
Данные значения: 0Закрой редактор реестра, а затем перезапустите службы DNS и Netlogon. Чтобы перезапустить службу, выберите Пуск, указать на программы или все программы, указать на административные средства, а затем выбрать службы. В консоли Services щелкните правой кнопкой мыши службу и выберите перезапуск.
Windows серверов 2000 и Windows Server 2003
На Windows серверов-членов 2000 Server и Windows Server 2003 Корпорация Майкрософт рекомендует настроить параметры клиентов DNS в соответствии с этими спецификациями:
В этой статье предоставляется решение проблем с разрешением и подключением имен на сервере маршрутов и удаленного доступа, который также выполняет DNS или WINS.
Применяется к: Windows Server 2012 R2, Windows Server 2016
Исходный номер КБ: 292822Очистка базы данных WINS
- Выберите Начните, указать на программы или все программы, указать на административные средства, а затем выбрать WINS.
- Развяжите объект сервера, щелкните правой кнопкой мыши Активные регистрации, а затем выберите Удалить владельца.
- В диалоговом окне Удалить владельца выберите IP-адрес сервера.
- Если на сервере WINS нет партнеров репликации, выберите Удалить только с этого сервера, а затем выберите ОК. Если на сервере WINS имеется один или несколько партнеров репликации, выберите удаление Replicate на другие серверы (надгробие) и выберите ОК.
Сервер WINS будет автоматически восстанавливать базу данных, так как компьютеры в сети регистрируют свои имена NetBIOS. Вы можете Windows компьютеры в сети, чтобы зарегистрировать их имена NetBIOS немедленно, запуская nbtstat -RR команду.
Настройка сервера маршрутов и удаленного доступа для публикации только IP-адреса локального сетевого адаптера в DNS
Выполните действия в этом разделе только в том случае, если на сервере маршрутики и удаленного доступа работает служба DNS. Если на сервере не работает служба DNS, перейдите к серверу Настройка маршрутного и удаленного доступа, чтобы зарегистрировать только IP-адрес локального сетевого адаптера в разделе WINS.
Причина
Когда удаленный компьютер подключается к серверу маршрутного и удаленного доступа с помощью набора или VPN-подключения, сервер создает адаптер протокола точки к точке для связи с удаленным компьютером. Затем сервер может зарегистрировать IP-адрес этого адаптера PPP в DNS или базе данных WINS.
Когда сервер маршрутивки и удаленного доступа регистрирует IP-адрес своего адаптера PPP в DNS или WINS, при попытке подключения к серверу на локальных компьютерах могут возникнуть ошибки. Вы получаете эти ошибки, так как серверы DNS или WINS могут возвращать IP-адрес адаптеров PPP на компьютеры, запрашивающий DNS или WINS для IP-адреса сервера. Затем компьютеры пытаются подключиться к IP-адресу адаптеров PPP. Из-за того, что локальные компьютеры не могут достичь адаптеров PPP, подключение не удается.
Обходной путь
В качестве обхода этой проблемы можно настроить подключения удаленного доступа к статическому пулу IP-адресов, который находится на другой подсети IP, чем на локальных компьютерах. В этом случае локальные компьютеры не будут пытаться подключиться к адаптеру PPP, если он регистрируется в DNS или WINS, так как адаптер PPP находится на другой подсети IP.
Чтобы указать статичный пул адресов в консоли маршрутизировать и удаленный доступ, щелкните правой кнопкой мыши ServerName, выберите Свойства, выберите вкладку IP, выберите пул статических адресов, а затем выберите Добавить. Добавьте диапазон, который не использует ту же подсеть IP, что и локальные компьютеры. Например, если локальные компьютеры используют подсеть 10.0.0.0, добавьте статический пул, использующий подсеть 172.168.0.0. Если на сервере маршрутизации и удаленного доступа работает ISA Server 2000, необходимо добавить эту подсеть в локализованную адресную таблицу. Этот сценарий наиболее распространен в small Business Server 2000.
В очередном «конспекте админа» остановимся на еще одной фундаментальной вещи – механизме разрешения имен в IP-сетях. Кстати, знаете почему в доменной сети nslookup на все запросы может отвечать одним адресом? И это при том, что сайты исправно открываются. Если задумались – добро пожаловать под кат. .
Для преобразования имени в IP-адрес в операционных системах Windows традиционно используются две технологии – NetBIOS и более известная DNS.
NetBIOS (Network Basic Input/Output System) – технология, пришедшая к нам в 1983 году. Она обеспечивает такие возможности как:
регистрация и проверка сетевых имен;
установление и разрыв соединений;
связь с гарантированной доставкой информации;
связь с негарантированной доставкой информации;
В рамках этого материала нас интересует только первый пункт. При использовании NetBIOS имя ограниченно 16 байтами – 15 символов и спец-символ, обозначающий тип узла. Процедура преобразования имени в адрес реализована широковещательными запросами.
Широковещательным называют такой запрос, который предназначен для получения всеми компьютерами сети. Для этого запрос посылается на специальный IP или MAC-адрес для работы на третьем или втором уровне модели OSI.
Для работы на втором уровне используется MAC-адрес FF:FF:FF:FF:FF:FF, для третьего уровня в IP-сетях адрес, являющимся последним адресом в подсети. Например, в подсети 192.168.0.0/24 этим адресом будет 192.168.0.255
Естественно, постоянно рассылать широковещательные запросы не эффективно, поэтому существует кэш NetBIOS – временная таблица соответствий имен и IP-адреса. Таблица находится в оперативной памяти, по умолчанию количество записей ограничено шестнадцатью, а срок жизни каждой – десять минут. Посмотреть его содержимое можно с помощью команды nbtstat -c, а очистить – nbtstat -R.
Пример работы кэша для разрешения имени узла «хр».
Что происходило при этом с точки зрения сниффера.
В крупных сетях из-за ограничения на количество записей и срока их жизни кэш уже не спасает. Да и большое количество широковещательных запросов запросто может замедлить быстродействие сети. Для того чтобы этого избежать, используется сервер WINS (Windows Internet Name Service). Адрес сервера администратор может прописать сам либо его назначит DHCP сервер. Компьютеры при включении регистрируют NetBIOS имена на сервере, к нему же обращаются и для разрешения имен.
В сетях с *nix серверами можно использовать пакет программ Samba в качестве замены WINS. Для этого достаточно добавить в конфигурационный файл строку «wins support = yes». Подробнее – в документации.
В отсутствие службы WINS можно использовать файл lmhosts, в который система будет «заглядывать» при невозможности разрешить имя другими способами. В современных системах по умолчанию он отсутствует. Есть только файл-пример-документация по адресу %systemroot%\System32\drivers\etc\lmhost.sam. Если lmhosts понадобится, его можно создать рядом с lmhosts.sam.
Сейчас технология NetBIOS не на слуху, но по умолчанию она включена. Стоит иметь это ввиду при диагностике проблем.
если в кэше резолвера адреса нет, система запрашивает указанный в сетевых настройках интерфейса сервер DNS;
Наглядная схема прохождения запроса DNS.
Разумеется, DNS не ограничивается просто соответствием «имя – адрес»: здесь поддерживаются разные виды записей, описанные стандартами RFC. Оставлю их список соответствующим статьям.
Сам сервис DNS работает на UDP порту 53, в редких случаях используя TCP.
DNS переключается на TCP с тем же 53 портом для переноса DNS-зоны и для запросов размером более 512 байт. Последнее встречается довольно редко, но на собеседованиях потенциальные работодатели любят задавать вопрос про порт DNS с хитрым прищуром.
Также как и у NetBIOS, у DNS существует кэш, чтобы не обращаться к серверу при каждом запросе, и файл, где можно вручную сопоставить адрес и имя – известный многим %Systemroot%\System32\drivers\etc\hosts.
В отличие от кэша NetBIOS в кэш DNS сразу считывается содержимое файла hosts. Помимо этого, интересное отличие заключается в том, что в кэше DNS хранятся не только соответствия доменов и адресов, но и неудачные попытки разрешения имен. Посмотреть содержимое кэша можно в командной строке с помощью команды ipconfig /displaydns, а очистить – ipconfig /flushdns. За работу кэша отвечает служба dnscache.
На скриншоте видно, что сразу после чистки кэша в него добавляется содержимое файла hosts, и иллюстрировано наличие в кэше неудачных попыток распознавания имени.
При попытке разрешения имени обычно используются сервера DNS, настроенные на сетевом адаптере. Но в ряде случаев, например, при подключении к корпоративному VPN, нужно отправлять запросы разрешения определенных имен на другие DNS. Для этого в системах Windows, начиная с 7\2008 R2, появилась таблица политик разрешения имен (Name Resolution Policy Table, NRPT). Настраивается она через реестр, в разделе HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\DnsClient\DnsPolicyConfig или групповыми политиками.
Настройка политики разрешения имен через GPO.
При наличии в одной сети нескольких технологий, где еще и каждая – со своим кэшем, важен порядок их использования.
Операционная система Windows пытается разрешить имена в следующем порядке:
проверяет, не совпадает ли имя с локальным именем хоста;
смотрит в кэш DNS распознавателя;
если в кэше соответствие не найдено, идет запрос к серверу DNS;
если не получилось разрешить имя на этом этапе – происходит запрос на сервер WINS;
если постигла неудача, то система пытается получить имя широковещательным запросом, но не более трех попыток;
Для удобства проиллюстрирую алгоритм блок-схемой:
Алгоритм разрешения имен в Windows.
Выполнение второго пинга происходит на несколько секунд дольше, а сниффер покажет широковещательные запросы.
Сниффер показывает запросы DNS для длинного имени и широковещательные запросы NetBIOS для короткого.
Отдельного упоминания заслуживают доменные сети – в них запрос с коротким именем отработает чуть по-другому.
Для того чтоб при работе не нужно было вводить FQDN, система автоматически добавляет часть имени домена к хосту при различных операциях – будь то регистрация в DNS или получение IP адреса по имени. Сначала добавляется имя домена целиком, потом следующая часть до точки.
При попытке запуска команды ping servername система проделает следующее:
Настройка добавления суффиксов DNS через групповые политики.
Настраивать DNS суффиксы можно также групповыми политиками или на вкладке DNS дополнительных свойств TCP\IP сетевого адаптера. Просмотреть текущие настройки удобно командой ipconfig /all.
Суффиксы DNS и их порядок в выводе ipconfig /all.
Из-за суффиксов утилита nslookup выдала совсем не тот результат, который выдаст например пинг:
Это поведение иногда приводит в замешательство начинающих системных администраторов.
При диагностике стоит помнить, что утилита nslookup работает напрямую с сервером DNS, в отличие от обычного распознавателя имен. Если вывести компьютер из домена и расположить его в другой подсети, nslookup будет показывать, что всё в порядке, но без настройки суффиксов DNS система не сможет обращаться к серверам по коротким именам.
Отсюда частые вопросы – почему ping не работает, а nslookup работает.
В плане поиска и устранения ошибок разрешения имен могу порекомендовать не бояться использовать инструмент для анализа трафика – сниффер. С ним весь трафик как на ладони, и если добавляются лишние суффиксы, то это отразится в запросах DNS. Если запросов DNS и NetBIOS нет, некорректный ответ берется из кэша.
Если же нет возможности запустить сниффер, рекомендую сравнить вывод ping и nslookup, очистить кэши, проверить работу с другим сервером DNS.
Кстати, если вспомните любопытные DNS-курьезы из собственной практики – поделитесь в комментариях.
Способ настройки разрешения имен на DNS-клиентов зависит от конфигурации сети. Если в ней применяется DHCP, настройка DNS осуществляется при помощи параметров DHCP-сервера. Если на компьютерах используются статические ІР-адреса или вы хотите особо настроить DNS для отдельного пользователя или системы, придется настроить DNS вручную.
Параметры DNS задаются на вкладке DNS диалогового окна Дополнительные параметры TCP/IP (Advanced TCP/IP Settings). Чтобы открыть это окно, выполните следующие действия:
1. В окне Центр управления сетями и общим доступом (Network And Sharing Center) щелкните ссылку Управление сетевыми подключениями (Manage Network Connections). В окне Сетевые подключения (Network Connections) щелкните правой кнопкой нужное подключение и выберите команду Свойства (Properties).
2. Дважды щелкните протокол, соответствующий типу настраиваемого ІР-адреса — TCP/IPv6 или TCP/IPv4.
3. Если вы используете DHCP и хотите, чтобы адрес DNS-сервера был задан посредством DHCP, установите переключатель Получить адрес DNS-сервера автоматически (Obtain DNS Server Address Automatically). В противном случае установите переключатель Использовать следующие адреса DNS-серверов (Use The Following DNS Server Addresses), а затем введите адреса основного и дополнительного DNS-серверов в соответствующих полях.
4. Щелкните кнопку Дополнительно (Advanced), чтобы открыть диалоговое окно Дополнительные параметры TCP/IP (Advanced TCP/IP Settings). Перейдите на вкладку DNS. Далее описаны параметры вкладки DNS:
• Адреса DNS-серверов, в порядке использования Укажите ІР-адрес каждого DNS-сервера, используемого для разрешения доменных имен. Чтобы добавить ІР-адрес сервера в список, щелкните Добавить (Add). Щелкните Удалить (Remove), чтобы удалить адрес выделенного сервера из списка. Для редактирования выделенной записи щелкните Изменить (Edit). Если вы указываете несколько серверов DNS, их приоритет определяется очередностью в списке. Если первый сервер не может ответить на запрос о разрешении имени хоста, запрос посылается на следующий DNS-сервер и т. д. Чтобы изменить положение сервера в списке, выделите его и воспользуйтесь кнопками со стрелками вверх и вниз.
• Дописывать основной DNS-суффикс и суффикс подключения (Append Primary And Connection Specific DNS Suffixes) Обычно по умолчанию этот переключатель установлен. Он применяется для разрешения неполных имен компьютеров в основном домене. Допустим, вы обращаетесь к компьютеру Pavel в родительском домене logi.cc. Для разрешения имя компьютера будет автоматически дополнено суффиксом DNS — pavel.logi.cc. Если в основном домене компьютера с таким именем нет, запрос не выполняется. Основной домен задается на вкладке Имя компьютера (Computer Name) диалогового окна Свойства системы (System Properties).
• Дописывать родительские суффиксы основного DNS-суффикса (Append Parent Suffixes Of The Primary DNS Suffix) По умолчанию Этот флажок установлен. Он используется для разрешения неполных имен компьютеров в иерархии родительских и дочерних доменов. В случае неудачного запроса в ближайшем родительском домене, для попытки разрешения запроса используется суффикс родительского домена более высокого уровня. Этот процесс продолжается, пока не будет достигнута вершима иерархии доменов DNS. Допустим, в запросе указано имя компьютера Pavel в родительском домене dev.logi.cc. Сначала DNS пытается разрешить имя компьютера pavel.dev.logi.cc, а потом, в случае неудачи, пытается разрешить имя pavel.logi.cc
• Дописывать следующие DNS-суффиксы (по порядку) (Append These DNS Suffixes (In Order)) Установите этот переключатель, чтобы задать использование особых DNS-суффиксов вместо имени родительского домена. Щелкните Добавить (Add), чтобы добавить суффикс домена в список. Щелкните Удалить (Remove), чтобы удалить выделенный суффикс домена из списка. Для редактирования выделенной записи щелкните Изменить (Edit). Вы можете указать несколько суффиксов домена. Если первый суффикс не позволяет разрешить имя, DNS применяет следующий суффикс из списка. В случае неудачи берется следующий суффикс и так далее. Чтобы изменить очередность суффиксов домена, выберите нужный суффикс и измените его положение кнопками со стрелками вверх и вниз.
• DNS-суффикс подключения (DNS Suffix For This Connection) В этом поле задастся DNS-суффикс подключения, перекрывающий DNS-имена, уже настроенные на использование с данным подключением.
• Зарегистрировать адреса этого подключения в DNS (Register This Connection’s Addresses In DNS) Установите этот флажок, если хотите, чтобы все ІР-адреса данного подключения регистрировались в DNS с FQDN-именами компьютеров. Этот флажок по умолчанию установлен.
• Использовать DNS-суффикс подключения при регистрации в DNS (Use This Connection’s DNS Suffix In DNS Registration) Установите этот флажок, если хотите, чтобы все ІР-адреса для данного подключения регистрировались в DNS родительского домена.
Добавление значения реестра DisableNetbiosOverTcpip для службы маршрутизации и удаленного доступа
Значение реестра DisableNetbiosOverTcpip отключает протокол NetBIOS по TCP/IP (NetBT) для подключений к удаленному доступу. Таким образом, сервер не будет регистрировать адаптер PPP в базе данных WINS. Знайте, что при добавлении этого значения клиенты удаленного доступа не могут просматривать локализованную сеть через "Мои сетевые места" или "Сетевое соседство". Иногда это также может привести к неудаче подключения к удаленному доступу на компьютерах с более старыми версиями Windows. Например, подключение к удаленному доступу может быть неудачным на 98 компьютерах Microsoft Windows и на компьютерах microsoft Windows NT 4.0 Workstation. Альтернативу использованию реестра DisableNetbiosOverTcpip см. в разделе Обходное решение.
Если сервер работает Windows 2000 Server SP2 или более ранней версии, необходимо обновить сервер с помощью SP3 или SP4, чтобы значение реестра DisableNetbiosOverTcpip работало. Если не обновить сервер, служба маршрутинга и удаленного доступа не будет использовать это значение реестра, и проблема не будет устранена.
Выберите Начните, выберите Выполнить, введите regedit, а затем выберите ОК.
Найдите и выберите следующий подкай реестра: HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\RemoteAccess\Parameters\IP
В меню Редактирование указать значение New, а затем выберите значение DWORD, чтобы добавить следующее значение реестра:
Имя значения: DisableNetbiosOverTcpip
Тип данных: REG_DWORD
Данные значения: 1Закрой редактор реестра, а затем перезапустите службу маршрутов и удаленного доступа. Чтобы перезапустить службу, выберите Пуск, указать на программы или все программы, указать на административные средства, а затем выбрать службы. В консоли Services щелкните правой кнопкой мыши службу и выберите перезапуск.
Читайте также: