IT2web

Системному администратору Windows Server

Главная --> Active Directory --> Как клиент определяет, какому сайту он принадлежит - Поиск контроллера домена службы Active Directory

Как клиент определяет, какому сайту он принадлежит - Поиск контроллера домена службы Active Directory

Article Index
Как клиент определяет, какому сайту он принадлежит
Служба DNS Locator
Поиск контроллера домена службы Active Directory
Как клиент определяет, какому сайту он принадлежит
Интегрированные зоны Active Directory
Условная переадресация
Сокращенные зоны (stu zone)
Раздел приложений каталога
All Pages


Поиск контроллера домена службы Active Directory

Контроллеры домена, на которых выполняется Windows Server 2003, регистрируют некоторые (или все) записи, описанные выше. Эти записи играют важную роль, когда клиент, на котором выполняется система Windows 2000 или Windows XP Professional, пытается войти в домен. Далее описаны действия, которые выполняются при входе клиента в домен.

  1. Во время входа пользователя компьютер клиента выполняет удаленный вызов процедуры (RPC) запроса местной сетевой службе входа в систему, которая инициирует сеанс входа в систему. Являясь частью RPC-запроса, клиент посылает такую информацию, как имя компьютера, имя домена и имя сайта, службе Net Logon (Вход в сеть).
  2. Служба входа в сеть использует службу указателя доменов (domain locator), чтобы вызвать API-функцию DsGetDcName (), передающую одно из значений параметра флага, перечисленных в таблице 3-3.

Табл. 3-3. ЗначенияпараметрафлагаDsGetDcName

Значения флага DsGetDcName Требуемая запись DNS
DS_PDC_REQUIRED _ldap._tcp.pdc._msdcs.domainname
DS_GC_SERVER_REQUIRED _ldap._tcp.sitename._sites.gc. _msdcs.Forestrootdomainname
DS_KDC_REQUIRED _kdc._tcp.sitename._sites.dc ._msdcs.domainname
DS_ONLY_LDAP_NEEDED _ldap._tcp.sitename._sites._ msdcs.domainname

Примечание. Почти всегда функция DsGetDcName включает параметр sitename. Для всех запросов, кроме запроса DS_PDC_REQUIRED, клиент делает начальный запрос, используя параметр сайта. Если DNS-сервер не отвечает на запрос, клиент пошлет тот же самый запрос без параметра сайта. Например, если запрос DS_KDC_REQUIRED не выполнен, клиент пошлет запрос на запись _kdc._tcp.dc._msdcs.forestrootdomain. Это может случиться, если клиент находится на сайте, который не распознан серверами DNS. Клиент может также передать параметр DomainGUID вместо имени домена с помощью функции DsGetDcName (). В этом случае клиент запрашивает запись _ldap._tcp.domainGUID.domains._msdcs.forestname. Это случится только в том случае, если домен был переименован.

  1. DNS сервер возвращает запрошенный список серверов, рассортированный согласно приоритету и весу. Затем клиент посылает LDAP запрос, используя UDP-порт 389 по каждому из адресов записи в том порядке, как они были возвращены. После отсылки каждого пакета клиент ждет в течение 0,1 с, если никакого ответа не получено, он посылает пакет следующему контроллеру домена. Клиент продолжает этот процесс до тех пор, пока не получит допустимый ответ или не перепробует все контроллеры домена.
  2. Когда контроллер домена ответит клиенту, клиент проверяет ответ, чтобы удостовериться, что он содержит запрошенную информацию. Если информация имеется, клиент начинает процесс входа в систему с контроллера домена.

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