В процессе эксплуатации 1С:Предприятие часто возникает ситуация, когда в сети находится несколько аппаратных ключей защиты (USB HASP). Типичная проблема системного администратора — «непредсказуемое» поведение платформы при выборе ключа. Например, когда есть ключ на 20 лицензий и на 10 лицензий, 1С может сначала занять все места на «десятке», блокируя возможность работы локальных администраторов или пользователей старых версий конфигураций. Разберем подробно, как выстроить четкую иерархию опроса ключей и решить сопутствующие проблемы с сетевыми подключениями.
Прежде чем переходить к настройкам, проанализируем, как именно клиентское приложение 1С ищет ключ. По умолчанию платформа использует широковещательный запрос (Broadcast) по всей локальной сети. Тот ключ, который ответит первым, и будет использован. Именно это создает иллюзию рандомности.
Важно учитывать нюанс, упомянутый в обсуждении: клиент в первую очередь пытается найти ключ тем способом, который был успешен в прошлый раз. Если вчера пользователь «зацепился» за ключ на 10 лицензий, сегодня система в приоритетном порядке обратится именно к нему, игнорируя общие настройки поиска, пока этот способ не станет недоступным. Чтобы сбросить эту «память», иногда требуется очистка кэша или ручная правка файлов конфигурации.
Основным инструментом управления порядком опроса лицензий является файл nethasp.ini. На клиентских машинах (или на сервере терминалов) этот файл обычно располагается в папке C:\Program Files\1cv8\conf\ или в папке с установленной платформой. Рассмотрим по шагам, как заставить систему опрашивать сначала сервер с 20 лицензиями, а затем с 10.
Для реализации этой задачи нам необходимо отключить автоматический поиск и жестко прописать адреса серверов лицензий. Отредактируем секции [NH_COMMON] и [NH_TCPIP] следующим образом:
[NH_COMMON]
NH_TCPIP = ENABLE
[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.20, 192.168.1.10
NH_USE_BROADCAST = DISABLE
NH_TCPIP_METHOD = UDP
NH_SESSION_HOOK = ENABLE
Разберем, что дают эти настройки:
Выясним важную техническую деталь: можно ли воткнуть оба ключа в один сервер? Как было отмечено в дискуссии, ключи серий от 1 до 100 пользователей относятся к одной серии ORGL8. Два ключа одной серии на одном физическом компьютере работать не будут (точнее, License Manager увидит только один из них, обычно тот, что был вставлен первым или имеет меньший номинал).
Если вы хотите объединить лицензии на одном физическом сервере, рассмотрим два варианта:
ORGL8 на 100 мест и ORG8A на 300 мест — они будут работать вместе).Многие сталкиваются с проблемой, когда удаленные офисы (например, Кемерово — Омск) не видят ключ через VPN. Причина кроется в том, что широковещательные UDP-пакеты, которыми 1С ищет ключ по умолчанию, не проходят через VPN-туннели.
Чтобы решить проблему, выполним следующие действия:
nethasp.ini обязательно прописываем внешний (или внутренний VPN) IP-адрес сервера в параметре NH_SERVER_ADDR и отключаем NH_USE_BROADCAST.Sentinel HASP и запущенной службы Sentinel LDK License Manager.Посмотрим на ситуацию со стороны сервера приложений. В консоли администрирования 1С у каждой базы есть параметр «Разрешить выдачу лицензий сервером 1С:Предприятия». Рассмотрим, как это влияет на работу:
Если установлено «Да», то сервер 1С сам забирает лицензии с ключа и отдает их сеансам. В этом случае настройки nethasp.ini на компьютерах пользователей могут игнорироваться, так как ключ ищет сам сервер. Чтобы выстроить приоритет в этом случае, файл nethasp.ini нужно настраивать именно на том сервере, где запущены службы ragent, rmngr и rphost.
Если установлено «Нет», то каждое клиентское приложение (тонкий или толстый клиент) ищет ключ самостоятельно. Это часто предпочтительнее для удаленных пользователей с плохим каналом связи, чтобы не нагружать сервер задачами менеджмента лицензий.
Для окончательной проверки того, какой ключ используется в данный момент, проанализируем состояние системы через Sentinel Admin Control Center (ACC). На любом сервере, где установлен драйвер ключа, откроем браузер и перейдем по адресу:
http://localhost:1947
В разделе «Sentinel Keys» вы увидите все доступные ключи, их ID и количество лицензий. В разделе «Sessions» можно увидеть список активных пользователей и понять, с какого именно ключа (Key ID) они получили лицензию в данный момент. Это поможет быстро выявить, на каком компьютере настройки приоритета не применились и где система продолжает «захватывать» ненужный ключ.