При переходе пользователей на операционную систему macOS часто возникает классическая техническая трудность: локальные файловые базы или базы на сервере 1С запускаются без проблем, но клиентское приложение на Mac категорически отказывается видеть многопользовательский сетевой USB-ключ HASP, установленный на Windows-сервере или другом компьютере в локальной сети. При этом другие пользователи, работающие на операционной системе Windows, получают лицензии стабильно и без каких-либо сбоев.
В этой статье мы подробно разберем, почему возникает такая ситуация, как особенности сетевого оборудования (в частности, Wi-Fi роутеров) влияют на получение лицензий и по шагам настроим принудительный поиск ключа защиты двумя надежными способами: через конфигурационный файл nethasp.ini и через панель Sentinel Admin Control Center. Это позволит раз и навсегда решить проблему без необходимости устанавливать виртуальные машины или использовать сторонние утилиты.
По умолчанию платформа 1С:Предприятие осуществляет поиск менеджера лицензий HASP License Manager (HASP LM) в локальной сети с помощью широковещательных запросов по протоколу UDP через порт 475. Клиент на macOS отправляет такой запрос в сеть, ожидая, что сервер с ключом откликнется и выделит свободную лицензию.
Однако, если ваш Mac подключен к сети по беспроводному соединению Wi-Fi, на пути этого запроса часто встает роутер или точка доступа. В большинстве современных роутеров по умолчанию включены функции безопасности и оптимизации радиоэфира, которые блокируют этот процесс:
475), из-за чего Mac-клиент просто не может «достучаться» до менеджера лицензий HASP LM.Перенос устройства в другую сеть, замена роутера или его корректная перенастройка (отключение изоляции клиентов и разрешение прохождения броадкаст-пакетов) убирает эту преграду. Но постоянно менять настройки сети или роутеры — не всегда возможно. Ниже мы рассмотрим, как заставить 1С обращаться напрямую к серверу лицензирования по его IP-адресу, полностью игнорируя широковещательные запросы.
Прежде чем приступать к прописыванию конфигурационных файлов, важно убедиться, что компьютер под управлением macOS вообще видит сервер с ключом по сети и порт 475 на сервере не заблокирован брандмауэром. Сделать это можно с помощью стандартных сетевых утилит macOS через встроенное приложение «Терминал».
Проанализируем доступность сервера по шагам:
ping -c 4 192.168.1.100
Если пакеты успешно проходят, значит физическая связь между Mac и сервером установлена. Если же вы видите ошибку Request timeout, то проблема кроется глубже в сетевых настройках (устройства находятся в разных подсетях, либо на сервере полностью запрещены входящие эхо-запросы ICMP).475 (на котором работает HASP LM). По умолчанию на Mac установлена утилита nc (netcat). Выполните команду:
nc -z -v -u 192.168.1.100 475
В этой команде параметр -z означает сканирование без отправки данных, -v активирует подробный вывод (verbose), а -u указывает на использование протокола UDP. Если порт открыт, вы увидите сообщение об успешном соединении. Если соединение не проходит, необходимо проверить настройки брандмауэра на самом сервере лицензий и добавить правило, разрешающее входящие подключения по порту 475 для протоколов TCP и UDP.Самый надежный системный способ направить платформу 1С к конкретному серверу лицензий — использовать файл конфигурации nethasp.ini. Мы укажем точный IP-адрес компьютера, в котором физически установлен USB-ключ, и отключим широковещательный поиск (Broadcast).
Разберем подробно, где должен располагаться этот файл на macOS и что в него нужно записать.
Шаг 1. Определение правильного пути расположения файла
Платформа 1С на macOS ищет конфигурационный файл nethasp.ini в строго определенных каталогах в порядке их приоритета. Мы можем разместить его в одном из следующих мест:
/opt/1cv8/conf/nethasp.ini — это глобальный каталог конфигурации. Рекомендуем создавать файл именно здесь, так как настройки будут применяться для всех установленных версий платформы 1С на данном компьютере. Для создания файла в этой директории вам понадобятся права администратора (суперпользователя)./opt/1cv8/<Номер_Версии_Платформы>/conf/nethasp.ini — индивидуальный каталог конкретной версии платформы (например, 8.3.14.1694). Этот вариант менее удобен, так как при каждом обновлении платформы файл придется копировать в новую папку заново.~/.1cv8/1C/1cv8/conf/nethasp.ini — персональный каталог текущего пользователя Mac (символ ~ указывает на домашнюю папку текущего пользователя, например, /Users/Имя_Пользователя/). Этот вариант хорош тем, что для записи файла не требуются права суперпользователя системы. Обратите внимание, что папка .1cv8 является скрытой в macOS по умолчанию.Важное предупреждение для пользователей macOS: Файловая система Mac по умолчанию чувствительна к регистру символов (case-sensitive). Имя файла должно быть написано строго строчными (маленькими) буквами — nethasp.ini. Если вы назовете файл NetHasp.ini или NETHASP.INI, платформа 1С просто проигнорирует его и продолжит безуспешные попытки широковещательного поиска.
Шаг 2. Создание и редактирование файла через Терминал
Откройте Терминал на вашем Mac и создайте необходимую структуру папок и сам файл. Например, для создания общего файла конфигурации выполните команду:
sudo mkdir -p /opt/1cv8/conf
sudo touch /opt/1cv8/conf/nethasp.ini
sudo nano /opt/1cv8/conf/nethasp.ini
В открывшемся текстовом редакторе введите следующие параметры, заменив демонстрационный IP-адрес на реальный IP-адрес вашего сервера с ключом защиты:
[NH_COMMON]
NH_TCPIP = Enabled
[NH_TCPIP]
NH_SERVER_ADDR = 192.168.1.100 ; Укажите здесь реальный IP-адрес сервера с HASP LM
NH_PORT_NUMBER = 475
NH_TCPIP_METHOD = UDP
NH_USE_BROADCAST = Disabled
Проанализируем эти параметры подробнее:
NH_TCPIP = Enabled — разрешает использование протокола TCP/IP для связи с менеджером лицензий.NH_SERVER_ADDR = 192.168.1.100 — отключает автоматический поиск и жестко задает адрес сервера лицензий. Это позволяет обойти любые ограничения роутера на вещание пакетов.NH_PORT_NUMBER = 475 — стандартный порт работы службы HASP.NH_TCPIP_METHOD = UDP — метод отправки пакетов (рекомендуется UDP, но в сложных сетях можно переключить на TCP).NH_USE_BROADCAST = Disabled — ключевая опция. Мы полностью запрещаем использовать широковещательные запросы в сеть, что исключает задержки при запуске 1С и решает проблему блокировки трафика роутером.Сохраните изменения (в редакторе nano для этого нажмите сочетание клавиш Ctrl + O, затем Enter, и закройте редактор сочетанием Ctrl + X).
Если на вашем Mac установлены актуальные драйверы защиты Sentinel LDK Runtime, то настроить поиск сетевого ключа можно еще проще — через удобный графический веб-интерфейс.
Выполним настройку по шагам:
http://127.0.0.1:1947. Перед вами откроется локальная панель управления Sentinel ACC. Если страница не открывается, это означает, что в системе не установлен или не запущен драйвер защиты HASP.192.168.1.100).После выполнения этих действий служба Sentinel на вашем Mac самостоятельно свяжется с сервером по указанному адресу, обнаружит свободные лицензии и предоставит их платформе 1С:Предприятие при запуске базы.
При настройке сетевых лицензий на macOS важно учитывать специфику этой операционной системы:
SFNT Germany GmbH или Thales. Без этого служба лицензирования просто не запустится в системе.Реализовав один из предложенных вариантов принудительного поиска сетевого HASP-ключа, мы полностью снимем зависимость работы 1С от сетевой конфигурации Wi-Fi роутера и избавим себя от необходимости использовать тяжеловесные виртуальные машины.