Обнаружение службы лицензий сервера терминалов — часть 1: этот процесс обнаружения
В этой статье подробно описывается процесс обнаружения серверов лицензий, используемый терминальными серверами для поиска серверов лицензий в сети. Часть 1 посвящена подробностям процесса обнаружения, а часть 2 посвящена устранению неполадок и рекомендациям.
Являясь основным компонентом любого развертывания сервера терминалов, сервер лицензий играет решающую роль в распределении токенов клиентских лицензий и управлении ими. Поэтому важно понимать, как серверы терминалов находят серверы лицензий в вашей организации, как манипулировать процессом и что делать, если что-то пойдет не так.
Выбор роли
Windows Server 2003 позволяет устанавливать сервер лицензий на любой сервер предприятия. Служба лицензирования служб терминалов устанавливается с помощью «Установка и удаление программ» на панели управления.
Примечание:
Windows 2000 требовала, чтобы сервер лицензий был установлен на контроллере домена Active Directory; однако, начиная с Windows Server 2003, это больше не применяется, и сервер лицензий можно установить на любом сервере Windows Server 2003.
В рамках установки необходимо выбрать роль сервера лицензий. На рис. 1 показано диалоговое окно выбора роли. Вы заметите, что в тексте указано « Сделать этот сервер лицензий доступным для »; однако это может ввести в заблуждение. Существует распространенное заблуждение, что роль сервера лицензий определяет границы, в которых серверы терминалов могут использовать сервер лицензий для выделения клиентских лицензий клиентам. Напротив, роль просто определяет, как и когда сервер лицензий будет обнаружен терминальными серверами.
Рисунок 1: Установка службы лицензий
Когда выбран режим предприятия, установка записывает запись в Active Directory в следующем месте:
Примечание:
Чтобы эта запись была успешной, администратор, устанавливающий службу, должен иметь соответствующие права в Active Directory для создания записи.
В мастере установки есть только два разных выбора ролей — Домен/Рабочая группа и Предприятие ; значение ключа реестра идентифицирует различие. Однако существует три классификации ролей серверов лицензий. Различия перечислены ниже:
- Сервер лицензий рабочей группы — когда терминальный сервер, не являющийся членом домена Active Directory, обнаруживает сервер лицензий, он обнаруживается как сервер лицензий рабочей группы.
- Сервер лицензий домена. Когда терминальный сервер обнаруживает сервер лицензий посредством прямой связи RPC, он идентифицируется как сервер лицензий домена.
- Корпоративный сервер лицензий. Когда терминальный сервер обнаруживает сервер лицензий, выполняя запрос LDAP к Active Directory, он идентифицируется как корпоративный сервер лицензий.
Вообще говоря, серверы лицензий роли домена/рабочей группы будут обнаружены автоматически только в том случае, если служба установлена на контроллере домена. Однако серверы лицензий в режиме предприятия обычно обнаруживаются автоматически.
Процесс открытия
Когда сервер терминалов подключается к сети, он пытается обнаружить сервер лицензий, с которого можно получить маркеры лицензий служб терминалов для клиентов, и будет продолжать делать это до тех пор, пока не найдет его. После обнаружения сервера лицензий процесс обнаружения не будет запускаться снова, пока все кэшированные серверы лицензий в реестре сервера терминалов не будут недоступны.
Процесс обнаружения обычно запускается в результате одного из следующих событий:
- Служба сервера терминалов запущена и еще не обнаружила серверы лицензий
- Сервер терминалов больше не может связываться с какими-либо известными серверами лицензий во время интервала опроса.
- Клиент входит в систему, и сервер терминалов не может связаться ни с одним из серверов лицензий
Способ обнаружения сервера лицензий зависит от статуса членства в домене сервера терминалов. Для терминальных серверов, которые находятся в рабочей группе или в домене, не основанном на Active Directory, таком как Windows NT, процесс обнаружения существенно отличается от того, если терминальный сервер является членом домена Active Directory; в любом случае процесс обнаружения проходит через следующие общие этапы:
- Обнаружение выполняется для обнаружения сервера лицензий.
- После обнаружения сервер лицензий кэшируется в реестре сервера терминалов для использования в будущем в одном из следующих мест в зависимости от режима обнаруженного сервера лицензий:
Роль сервера лицензий | Расположение кэша реестра |
Роль предприятия | HKLMSoftwareMicrosoftMSLicensingParametersDomainLicenseServerMulti |
Роль домена/рабочей группы | HKLMSoftwareMicrosoftMSLicensingParameters EnterpriseLicenseServerMulti |
Он также получает набор цифровых сертификатов с сервера лицензий для проверки клиентских лицензий, выделенных клиентам с этого сервера лицензий.
- Как только сервер лицензий обнаружен, сервер терминалов периодически проверяет, может ли он связаться с ним.
- Если в какой-либо момент сервер терминалов попытается связаться с сервером лицензий, но ни один из них не будет доступен, процесс обнаружения начнется снова.
Обнаружение рабочих групп и неактивных каталогов
Этот метод обнаружения выполняется, когда сервер терминалов является членом рабочей группы или членом домена, не входящего в Active Directory, например домена Windows NT.
Когда начнется процесс обнаружения, сервер терминалов сначала проверит свой раздел реестра LicenseServers. Расположение этого ключа зависит от версии операционной системы; В таблице 1 указано расположение ключей LicenseServers для Windows 2000 и Windows 2003.
Версия ОС | Расположение ключа LicenseServers |
Windows сервер 2003 | HKLMSystemCurrentControlSetServicesTermServiceParametersLicenseServers |
Сервер Windows 2000 | HKLMSystemCurrentControlSetServicesTermServiceParameters |
Для каждой записи в этом ключе будет предпринята попытка подключения через Windows RPC (удаленный вызов процедуры). Если сервер лицензий отвечает, он кэшируется в реестре, и процесс обнаружения прекращается.
Если ключ LicenseServers пуст или нет связи с серверами лицензий, следующим действием будет выполнение широковещательной рассылки NetBIOS в локальной подсети сервера терминалов, чтобы узнать, отвечают ли какие-либо серверы лицензий. В этом случае с сервером открывается соединение RPC, и сервер лицензий добавляется в реестр. Если серверы лицензий не отвечают на широковещательную рассылку, процесс обнаружения приостанавливается на 15 минут и начинается снова.
Если в какой-либо момент процесса обнаружения обнаруживается сервер лицензий, он добавляется в реестр и проверяется каждые 120 минут. Если все известные серверы лицензий больше недоступны, процесс обнаружения запускается снова. На рис. 2 показан этот двухэтапный процесс в виде блок-схемы.
Рис. 2. Обнаружение рабочей группы/неактивного каталога (щелкните, чтобы увеличить изображение)
Обнаружение членства в Active Directory
Если терминальный сервер является членом домена Active Directory, процесс обнаружения будет совсем другим. Как и в случае с рабочей группой, сначала проверяется ключ реестра LicenseServers на наличие записей, а затем предпринимается попытка подключиться к каждой записи через RPC. Если такие найдены, они кэшируются в реестре на сервере терминалов, и процесс обнаружения завершается.
Если серверы лицензий не найдены, сервер терминалов выполнит запрос LDAP к Active Directory, пытаясь найти корпоративный сервер лицензий. Сервер запрашивает следующий объект:
Если запись найдена, она пытается установить соединение RPC с сервером лицензий. В случае успеха он добавляет сервер(ы) лицензий в реестр, и процесс обнаружения продолжает проверять, может ли он обнаружить какие-либо серверы лицензий домена.
Затем терминальный сервер попытается подключиться через RPC к каждому контроллеру домена на своем сайте, чтобы найти сервер лицензий, и в случае неудачи он перейдет к проверке каждого контроллера домена в домене. Подключение к любым обнаруженным серверам лицензий проверяется каждые 60 минут. Любые обнаруженные серверы лицензий добавляются в кэш реестра терминального сервера.
Если серверы лицензий не обнаружены, процесс приостанавливается на 60 минут и начинается снова. После обнаружения сервера лицензий, если в какой-либо момент известные серверы лицензий недоступны, процесс обнаружения инициируется снова. На рис. 3 показан этот трехэтапный процесс в виде блок-схемы.
Рис. 3. Обнаружение Active Directory (щелкните, чтобы увеличить изображение)
После того, как вы прочтете описанные выше процессы, вы лучше поймете, как они работают и как манипулировать ими в своих интересах. Во второй части этой статьи мы узнаем, как лучше контролировать возможность обнаружения серверов лицензий и как устранять неполадки в процессе, когда что-то не работает.
подпишитесь на нашу рассылку новостей об обновлениях статей в режиме реального времени