При работе с несколькими сетевыми аппаратными ключами защиты HASP (например, на 20 и 50 рабочих мест) системные администраторы часто сталкиваются с ситуацией, когда пользователи получают ошибку «Не обнаружена свободная лицензия», хотя по данным мониторинга (Aladdin Monitor / HASP License Manager) и консоли кластера 1С свободные лицензии ещё остаются. Разберём подробно, почему возникает эта проблема, как устроена механика поиска аппаратных ключей и как правильно настроить инфраструктуру для стабильной работы.
Проанализируем основные факторы, вызывающие ложную нехватку лицензий:
Выясним причину перерасхода: когда лицензии раздаются сервером 1С, одновременное открытие пользователем баз «Бухгалтерия», «ЗУП» и «Документооборот» спишет 3 лицензии вместо 1. Чтобы вернуть подсчёт «одна лицензия на одно рабочее место», необходимо отключить серверную раздачу.
Разберём процедуру изменения настроек в консоли администрирования кластера серверов 1С:
Кластеры -> Информационные базы.ОК. Изменения вступают в силу для новых сеансов без обязательного перезапуска кластера.Важное примечание: выдачу лицензий сервером следует оставлять включённой только в том случае, если пользователи подключаются через веб-клиента или тонкого клиента по протоколу HTTP/HTTPS без прямого доступа рабочих станций к менеджеру лицензий по локальной сети.
Чтобы исключить широковещательные сбои и настроить корректный последовательный опрос серверов с ключами, настроим конфигурационный файл nethasp.ini. Разберём пример правильного заполнения секций файла:
[NH_COMMON]
NH_TCPIP = Enabled
NH_IPX = Disabled
NH_NETBIOS = Disabled
NH_SESSION = 2
NH_SEND_METHOD = UDP
[NH_TCPIP]
NH_USE_BROADCAST = Disabled
NH_SERVER_ADDR = 192.168.1.10, 192.168.1.20
NH_SERVER_NAMES = HLM_SRV1, HLM_SRV2
NH_TCPIP_METHOD = UDP
NH_SESSION = 2
NH_SEND_METHOD = UDP
Рассмотрим назначение ключевых параметров:
NH_USE_BROADCAST = Disabled — принудительно запрещает широковещательный поиск, исключая зависание клиента на первом попавшемся сервере.NH_SERVER_ADDR — задаёт точные статические IP-адреса или DNS-имена серверов, на которых запущены службы HASP License Manager.NH_SERVER_NAMES — указывает уникальные сетевые имена менеджеров лицензий (задаются в файле nhsrv.ini на серверах).Разберём правильное размещение файла nethasp.ini. Чтобы настройки не стирались при обновлении версии платформы 1С, файл рекомендуется размещать не в папке конкретного релиза (bin), а в системных каталогах операционной системы:
C:\Windows\SysWOW64\C:\Windows\System32\C:\Program Files\1cv8\conf\На каждом сервере, где установлен физический ключ защиты, перейдём в каталог установки службы (обычно C:\Windows\System32\ или каталог установки HASP LM) и отредактируем файл nhsrv.ini.
Посмотрим на пример конфигурации для первого сервера:
[NHS_SERVER]
NHS_SERVERNAMES = HLM_SRV1
NHS_HIGHPRIORITY = 1
[NHS_IP]
NHS_USE_UDP = Enabled
NHS_USE_TCP = Enabled
Для второго сервера укажем уникальное имя HLM_SRV2. Это позволит клиентам однозначно идентифицировать каждый физический ключ в сети.
Также проверим сетевые экраны (брандмауэры): на серверах лицензий должен быть открыт порт 475 для протоколов TCP и UDP.
Если в организации используется пул из двух ключей разного номинала и динамическая адресация рабочих мест, применим следующие меры:
nethasp.ini. Например, бухгалтерия и склад (до 20 человек) опрашивают сервер с 20-пользовательским ключом, а остальные отделы — сервер с 50-пользовательским ключом. Это полностью исключит взаимное вытеснение лицензий.HASP Loader по расписанию (например, ночью через планировщик задач Windows), чтобы сбрасывать потерянные сетевые дескрипторы и фантомные сессии.1200 сек) и «Время завершения спящих сеансов» (например, 600 сек), чтобы неактивные пользователи не занимали слоты.Если эксплуатация нескольких аппаратных ключей разного номинала вызывает регулярные сложности с балансировкой трафика, наиболее надёжным системным решением является процедура апгрейда в фирме 1С. В рамках регламентной процедуры два ключа на 20 и 50 пользователей сдаются с заменой на один единый ключ на 100 рабочих мест с доплатой разницы стоимости. Это устраняет необходимость распределения списков адресов и полностью решает проблему фрагментации лицензий.