При работе в сети с несколькими аппаратными ключами защиты HASP часто возникает неприятная ситуация: одна и та же рабочая станция или один и тот же пользователь «захватывает» лицензии сразу с нескольких ключей. В мониторе менеджера лицензий (AKSMon) это выглядит как дублирование сессий. В результате лицензий на всех сотрудников не хватает, хотя их общее количество превышает число активных пользователей. Рассмотрим причины этого поведения и разберем пошагово, как правильно настроить систему для исключения подобных конфликтов.
Основная причина кроется в механизме поиска ключа платформой 1С. По умолчанию клиентское приложение использует широковещательные запросы (Broadcast) для поиска доступных менеджеров лицензий в локальной сети. Разберем основные факторы, провоцирующие проблему:
Самый эффективный способ победить дублирование — это запретить платформе использовать широковещательные запросы и жестко указать, к какому серверу обращаться. Для этого мы будем редактировать файл nnhasp.ini. Этот файл обычно располагается в папке bin\conf или bin установленной платформы 1С.
Проанализируем необходимые изменения в секции [NH_TCPIP]:
[NH_TCPIP]
; Отключаем широковещательный поиск
NH_USE_BROADCAST = Disabled
; Указываем конкретные IP-адреса серверов, где установлены ключи
NH_SERVER_ADDR = 192.168.1.10, 192.168.1.11
; Оставляем только протокол TCP/IP, отключая лишние
NH_TCPIP = Enabled
В параметре NH_SERVER_ADDR следует перечислить IP-адреса всех ваших серверов с менеджерами лицензий через запятую. Это заставит 1С опрашивать серверы последовательно и только по указанным адресам, исключая случайный захват «чужих» лицензий из эфира.
Помимо настройки клиента, необходимо обратить внимание на настройки самого менеджера лицензий на стороне сервера. Файл конфигурации nhsrv.ini находится в папке с установленным HASP License Manager.
Рассмотрим параметры, которые помогут стабилизировать работу:
Если в вашей организации два ключа (например, на 20 и 50 пользователей), мы рекомендуем физически распределить нагрузку. Для одной группы пользователей в файле nnhasp.ini укажите в качестве приоритетного NH_SERVER_ADDR адрес первого сервера, а для другой — второго.
Пример для группы А: NH_SERVER_ADDR = 192.168.1.10
Пример для группы Б: NH_SERVER_ADDR = 192.168.1.11
Это гарантирует, что пользователи будут в первую очередь занимать лицензии на «своем» ключе, и только при его заполнении (если указан второй адрес через запятую) пойдут на другой.
Выясним еще несколько важных нюансов, которые могут влиять на результат:
nnhasp.ini обязательно установите NH_IPX = Disabled и NH_NETBIOS = Disabled. Эти протоколы давно устарели и часто становятся причиной задержек и конфликтов при поиске ключа.AppData\Local\1C). Если настройки изменены, а проблема сохраняется, попробуйте очистить временные файлы 1С.rphost, и логика работы с аппаратными ключами может отличаться от локального запуска. В случае проблем с дублями иногда помогает перевод всех клиентов на получение лицензий строго через сервер 1С, либо наоборот — полное отключение этой функции и использование только nnhasp.ini на клиентах.Важный момент: Если вы столкнулись с тем, что на одном сервере установлено два ключа одной серии (например, два сетевых ORGL8), помните, что менеджер лицензий HASP License Manager увидит только один из них. Для использования обоих ключей их необходимо разнести на разные физические или виртуальные серверы.