Клиент 1С не видит сетевой ключ: прописываем адрес менеджера лицензий

· 10 мин

Содержание

Адрес сервера лицензий для 1С 8.3 указывается в файле nethasp.ini на каждом компьютере, где запускается клиент: в секции [NH_TCPIP] пишется строка NH_SERVER_ADDR = 192.168.1.10, где 192.168.1.10 — IP машины с менеджером лицензий HASP. Файл лежит в каталоге платформы, обычно C:\Program Files\1cv8\8.3.xx.xxxx\bin\conf\. После сохранения перезапустите 1С — настройка подхватится при следующем поиске ключа.

Это касается аппаратных сетевых ключей. Для программных лицензий «указывать сервер» нужно иначе: лицензии активируются на сервере 1С:Предприятия, а в свойствах информационной базы включается их выдача сервером. Оба сценария разобраны ниже, вместе с настройкой самого менеджера лицензий, портами и типичными сбоями.

Какие бывают лицензии 1С и где нужен адрес сервера

Прежде чем править файлы, определите, чем защищена ваша 1С. От этого зависит, что именно и где прописывать.

Тип защитыГде физическиНужно ли указывать сервер
🔑 Локальный USB-ключ (однопользовательский)В компьютере пользователяНет, ключ виден напрямую
🌐 Сетевой USB-ключ HASP (на 5, 10, 20, 50 и более пользователей)В одном компьютере сети, где стоит менеджер лицензийДа, в nethasp.ini
📄 Программная лицензия на рабочем местеФайл .lic на самом компьютереНет
🖥 Программная лицензия на сервере 1СФайл .lic на сервере 1С:ПредприятияНет адреса, но нужна настройка базы в консоли кластера
🛡 Ключ сервера 1С:ПредприятияВ сервере 1СНет, клиентские лицензии он не заменяет

Сетевой ключ сам по себе ничего не раздаёт. Раздаёт лицензии служба HASP License Manager — её ставят на компьютер, куда воткнут ключ. Клиент 1С ищет этот менеджер по сети: по умолчанию широковещательным запросом, а если в nethasp.ini указан адрес — напрямую.

💡 Широковещательный поиск работает только в пределах одного сегмента сети. Если между клиентом и менеджером есть маршрутизатор, VPN или другая подсеть, без явного адреса 1С ключ не найдёт.

Шаг 1. Что проверить на компьютере с ключом

Начните с машины, где стоит сетевой ключ. Клиентские настройки бесполезны, если менеджер лицензий не работает .

  1. Убедитесь, что ключ вставлен и в диспетчере устройств нет неизвестных устройств. Драйвер ключа ставится из дистрибутива платформы или отдельным пакетом Sentinel/HASP.
  2. Проверьте, что установлен HASP License Manager и работает как служба, а не как приложение. Приложение закрывается при выходе пользователя из системы — вместе с ним «пропадают» лицензии у всей сети.
  3. Откройте services.msc и найдите службу менеджера лицензий. Тип запуска — «Автоматически», состояние — «Выполняется».
  4. Запомните IP-адрес этой машины. Лучше закрепить его: статический адрес или резервирование в DHCP. Иначе после перезагрузки роутера адрес сменится и прописанный в клиентах NH_SERVER_ADDR станет неверным.

Менеджер лицензий должен стоять на одном компьютере с ключом. Ставить его на все рабочие места не нужно.

Если ключей несколько (например, два сетевых на 10 пользователей), их можно вставить в один компьютер — менеджер обслужит оба, и лицензии сложатся.

Шаг 2. Прописываем адрес в nethasp.ini на клиенте

Основной способ указать сервер лицензий — отредактировать nethasp.ini. Делается это на каждом компьютере, где запускается 1С.

Где лежит файл

Файл находится в каталоге конкретной версии платформы:

C:\Program Files\1cv8\8.3.xx.xxxx\bin\conf\nethasp.ini

Для 32-разрядной платформы на 64-разрядной Windows — в C:\Program Files (x86)\1cv8\.... Если установлено несколько версий платформы, правьте файл в той, которой реально открывается база: версию видно в окне «О программе».

Что писать

Минимальный рабочий вариант:

[NH_COMMON]
NH_IPX = Disabled
NH_NETBIOS = Disabled
NH_TCPIP = Enabled

[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.10
NH_PORT_NUMBER = 475
NH_TCPIP_METHOD = UDP
NH_USE_BROADCAST = Disabled

Что значит каждая строка:

  • 🔌 NH_TCPIP = Enabled — поиск только по TCP/IP; устаревшие IPX и NetBIOS выключены, чтобы клиент не тратил на них время.
  • 📍 NH_SERVER_ADDR — адрес менеджера лицензий. Можно IP или имя компьютера. Несколько серверов перечисляются через запятую.
  • 🚪 NH_PORT_NUMBER = 475 — стандартный порт менеджера. Менять, только если менеджер настроен на другой.
  • 📡 NH_TCPIP_METHOD — протокол обмена. При проблемах через VPN попробуйте TCP.
  • 🔇 NH_USE_BROADCAST = Disabled — отключает широковещательный поиск, клиент сразу идёт по адресу. Запуск 1С ускоряется на несколько секунд.

Порядок действий

  1. Закройте все сеансы 1С на этом компьютере.
  2. Откройте Блокнот от имени администратора (иначе Windows не даст сохранить файл в Program Files).
  3. Откройте через него nethasp.ini, замените содержимое секций или допишите недостающие строки.
  4. Сохраните файл в кодировке ANSI, с тем же именем и расширением .ini, без .txt в конце.
  5. Запустите 1С и откройте базу.

💡 Строки, начинающиеся с ;, — комментарии. В исходном файле почти всё закомментировано, поэтому «просто дописать адрес» в середину без снятия ; не сработает.

Ловушка при обновлении платформы

Новая версия платформы ставится в новую папку со своим чистым nethasp.ini. После обновления клиенты снова ищут ключ широковещанием и в другой подсети его не находят.

Решение — после каждой установки новой версии копировать настроенный nethasp.ini в её bin\conf. В сети на 15–20 машин это удобно делать скриптом при входе в систему:

@echo off
for /d %%v in ("C:\Program Files\1cv8\8.3.*") do (
  copy /Y "\\fileserver\1c\nethasp.ini" "%%v\bin\conf\nethasp.ini"
)

Скрипт нужно запускать с правами администратора, иначе запись в Program Files не пройдёт.

Шаг 3. Настройка менеджера лицензий: nhsrv.ini

У менеджера лицензий есть свой файл настроек — nhsrv.ini, в папке установки HASP License Manager. Обычно его не трогают, но два параметра бывают полезны.

[NHS_SERVER]
NHS_SERVERNAMES = LICSRV1C

[NHS_IP]
NHS_IP_LIMIT = 192.168.1.*
  • 🏷 NHS_SERVERNAMES — даёт менеджеру имя. На клиенте его можно указать строкой NH_SERVER_NAME = LICSRV1C в секции [NH_TCPIP]. Полезно, когда в сети несколько менеджеров и нужно направить отдел к конкретному.
  • 🧱 NHS_IP_LIMIT — список адресов, которым менеджер выдаёт лицензии. Остальным откажет, даже если они его видят.

После изменения nhsrv.ini менеджер нужно перезапустить.

Перезапуск службы менеджера лицензий отбирает лицензии у всех работающих пользователей. Открытые сеансы 1С потеряют ключ и при следующей проверке выдадут ошибку. Делайте это вне рабочего времени или предупредите людей закрыть 1С.

Программные лицензии: выдача сервером 1С вместо адреса ключа

В клиент-серверном варианте адрес в nethasp.ini на каждом рабочем месте прописывать не обязательно. Лицензию может получать сам сервер 1С:Предприятия и выдавать её клиентам.

Как это настроить:

  1. Активируйте программные лицензии на сервере 1С:Предприятия (через мастер получения лицензий, запущенный на самом сервере) или подключите к серверу сетевой ключ и пропишите nethasp.ini в каталоге платформы на сервере.
  2. Откройте консоль администрирования серверов 1С.
  3. Раскройте кластер → «Информационные базы» → свойства нужной базы.
  4. В параметре «Выдача лицензий сервером 1С:Предприятия» выберите «Да».
  5. Сохраните. Новые сеансы будут получать лицензию через сервер.

Плюс подхода — настройка в одном месте. При смене IP машины с ключом правите один файл на сервере, а не на всех клиентах.

💡 Если в кластере несколько рабочих серверов, а лицензии активированы только на одном из них, задайте в свойствах рабочих серверов требование назначения функциональности для объекта «Сервис лицензирования». Тогда лицензии будет выдавать именно тот сервер, где они лежат.

Для файловой базы такого механизма нет: каждый клиент ищет лицензию сам — локальный ключ, программную лицензию на своём компьютере или сетевой ключ через nethasp.ini.

Сеть и Windows: порт 475, брандмауэр, реестр

Если адрес прописан верно, а ключ не находится — смотрите сеть между клиентом и менеджером.

Брандмауэр

Менеджер лицензий слушает порт 475 по UDP и TCP. На компьютере с ключом откройте входящие подключения командой от имени администратора:

netsh advfirewall firewall add rule name="HASP LM UDP 475" dir=in action=allow protocol=UDP localport=475
netsh advfirewall firewall add rule name="HASP LM TCP 475" dir=in action=allow protocol=TCP localport=475

Сторонний антивирус со своим сетевым экраном правило Windows не учтёт — исключение для порта 475 добавляют и в нём.

Проверка доступности

С клиента проверьте, что машина с ключом вообще отвечает:

ping 192.168.1.10

TCP-порт можно проверить в PowerShell:

Test-NetConnection 192.168.1.10 -Port 475

TcpTestSucceeded : True значит, что порт открыт. Для UDP эта команда не подходит: если по TCP всё открыто, а 1С ключ не видит, переключите клиент на NH_TCPIP_METHOD = TCP.

А реестр?

В инструкциях из сети часто советуют искать адрес сервера лицензий в реестре Windows. Клиент 1С 8.3 берёт адрес из nethasp.ini, править реестр для этого не нужно. Ручные правки реестра, связанные со службами HASP, только добавляют риск сломать драйвер.

Что действительно стоит проверить в Windows:

  • 🔁 тип запуска службы менеджера — «Автоматически»;
  • 💤 энергосбережение USB-концентраторов — отключите его в свойствах корневого USB-концентратора в диспетчере устройств, иначе ключ может «засыпать»;
  • 🌐 профиль сети — «Частная» или «Доменная»: в «Общедоступной» брандмауэр режет входящие строже.

Диагностика: видит ли менеджер ключ и кто занял лицензии

Когда пользователи жалуются, что «не хватает лицензий», нужно понять: ключ не виден вообще или все места заняты.

Aladdin Monitor — утилита для сетевых ключей HASP. Её ставят на любой компьютер сети. В ней видно:

  • какие менеджеры лицензий найдены и по каким адресам;
  • какие ключи подключены к каждому менеджеру;
  • сколько лицензий занято и с каких компьютеров.

Если Monitor менеджер видит, а 1С на том же компьютере — нет, проблема в nethasp.ini этой машины или в версии платформы, в папке которой вы правили файл.

Sentinel Admin Control Center — веб-интерфейс драйвера Sentinel, открывается в браузере на компьютере с ключом по адресу http://localhost:1947. Там видно, определился ли ключ на уровне драйвера. Если ключа нет в списке — дело в драйвере или USB-порту, а не в сети.

Диагностика: выберите симптом

Ошибки при поиске сервера лицензий и что с ними делать

Не обнаружен ключ защиты программы или полученная программная лицензия!

Самое частое сообщение. 1С не нашла ни программной лицензии на компьютере, ни доступного ключа. Порядок проверки:

  1. Работает ли служба менеджера на машине с ключом.
  2. Прописан ли верный NH_SERVER_ADDR в nethasp.ini той версии платформы, которой открывается база.
  3. Открыт ли порт 475 и пингуется ли сервер.
  4. Не включён ли на клиенте сторонний сетевой экран.

Свободные лицензии закончились

Число одновременных сеансов превысило ёмкость ключа. Учтите, что одна лицензия сетевого ключа занимается одним компьютером: несколько окон 1С на одном ПК обычно расходуют одну лицензию, а каждый вход по RDP на терминальный сервер — отдельную, так как это разные сеансы.

Ключ находится через раз, запуск 1С идёт 20–30 секунд

Клиент сначала пытается широковещательный поиск и ждёт ответа. Поставьте NH_USE_BROADCAST = Disabled и явный адрес — задержка уйдёт.

После смены роутера лицензии пропали у всех

Машина с ключом получила новый IP по DHCP. Закрепите адрес и обновите NH_SERVER_ADDR — или укажите в нём имя компьютера вместо IP, если в сети корректно работает DNS.

Частые вопросы

Можно ли указать в nethasp.ini два сервера лицензий?
Да. Перечислите адреса через запятую в NH_SERVER_ADDR. Клиент опрашивает их по очереди и берёт лицензию у первого, где есть свободная.
Нужен ли менеджер лицензий для однопользовательского ключа?
Нет. Локальный ключ работает через драйвер на том же компьютере. Менеджер нужен только сетевому ключу, к которому обращаются с других машин.
Можно ли поставить сетевой ключ на виртуальную машину?
Можно, если гипервизор пробрасывает USB-устройство в гостевую систему. Надёжнее — USB-over-IP концентратор или физический компьютер. После миграции виртуальной машины на другой хост проверьте, что ключ остался подключён.
Где менять адрес сервера лицензий на терминальном сервере?
В nethasp.ini той версии платформы, которая установлена на терминальном сервере. Файл общий для всех пользователей этой машины, поэтому правится один раз.
Сервер лицензий и сервер 1С:Предприятия — одно и то же?
Нет. Сервер 1С обрабатывает базы, а менеджер лицензий HASP раздаёт лицензии сетевого ключа. Они могут стоять на одном компьютере, но это разные службы.