Ситуация, когда после переустановки операционной системы, SQL-сервера и платформы 1С:Предприятие на сервере всё работает штатно, а на клиентских машинах программа «зависает» с бесконечным вращением курсора, является классической проблемой сетевого взаимодействия. В этой статье мы проанализируем ситуацию, когда стандартные проверки (пинг, доступность порта 1541) не дают результата, и разберем по шагам глубокую диагностику системы.
Многие системные администраторы совершают ошибку, проверяя только основные порты 1540 (порт агента) и 1541 (порт менеджера кластера). Однако архитектура 1С подразумевает, что после первичного обращения к менеджеру кластера, клиентское приложение перенаправляется на конкретный рабочий процесс (rphost), который занимает порт из динамического диапазона.
Рассмотрим подробнее: по умолчанию этот диапазон — 1560–1591. Если вы открыли в брандмауэре только 1541, клиент успешно «постучится» к серверу, получит от него команду переключиться на порт 1560, но наткнется на закрытую дверь. В результате мы видим то самое «бесконечное колесико» — клиент ждет ответа от рабочего процесса, который блокируется сетевым экраном.
Что нужно сделать:
1560-1591 для протокола TCP.telnet или Test-NetConnection в PowerShell с клиентской машины для проверки портов из этого диапазона (например, 1560).Выясним причину, по которой переустановка сервера с тем же именем и IP-адресом может вызвать сбои в доменной среде. При переустановке Windows создается новый SID (Security Identifier) сервера. Несмотря на то, что сетевое имя осталось прежним, для Active Directory и кэша безопасности клиентских машин — это «другой» объект.
Проанализируем ситуацию с сетевыми ярлыками и авторизацией. Клиентская Windows может пытаться использовать старые сохраненные учетные данные или старые записи в DNS-кэше. Попробуем выполнить следующие действия:
ipconfig /flushdns.hosts на одной из проблемных машин. Если после этого 1С запустится — проблема в DNS или старых записях NetBIOS.Иногда зависание происходит на этапе поиска лицензии. Даже если у вас используются программные лицензии, платформа 1С по умолчанию может пытаться опрашивать сеть на наличие аппаратных ключей защиты (HASP). Если в сети есть «ошметки» старых настроек или драйверов, этот поиск может уходить в бесконечный таймаут.
Посмотрим на настройки файла nethasp.ini. Несмотря на то, что используются программные лицензии, в некоторых конфигурациях платформа всё равно обращается к менеджеру лицензий HASP. Разберем, как это отключить:
nethasp.ini (обычно в папке conf каталога установки 1С).Также важно проверить права доступа. Служба 1C:Enterprise 8.3 Server Agent должна иметь права на чтение папки C:\ProgramData\1C\licenses. Если после переустановки служба запущена от имени LocalService, у неё может не быть доступа к файлам лицензий, созданным под другой учетной записью.
Современные версии Windows (начиная с Server 2016/2019) активно используют IPv6. Часто возникают ситуации, когда сервер 1С слушает порт на IPv4, а клиент пытается подключиться по IPv6 (или наоборот). Это приводит к задержкам, которые платформа 1С не всегда корректно обрабатывает, уходя в «зависание».
Рекомендация: попробуйте полностью отключить протокол IPv6 в свойствах сетевого адаптера на сервере и на одном тестовом клиенте. Если это решит проблему, необходимо настроить приоритет IPv4 через реестр Windows.
Рассмотрим экзотическую, но реальную причину: обращение 1С к принтеру по умолчанию. При запуске клиентское приложение опрашивает подсистему печати. Если на новом сервере или у клиента по умолчанию назначен сетевой принтер, который в данный момент недоступен или «висит» из-за смены прав доступа после переустановки, 1С будет ждать ответа от спулера печати до нескольких минут.
Посмотрим, как это исправить:
Если вышеперечисленные шаги не помогли, проанализируем ситуацию с помощью Технологического журнала (ТЖ). Создадим в папке conf файл logcfg.xml с минимальными настройками для отслеживания ошибок сетевого соединения (события NET, EXCP).
Пример простейшего файла logcfg.xml для поиска причин зависания:
<config xmlns="http://v8.1c.ru/7.4/get/logcfg">
<log location="C:\1C_Logs" history="2">
<event>
<eq property="name" value="EXCP"/>
</event>
<event>
<eq property="name" value="NET"/>
</event>
<property name="all"/>
</log>
</config>
После создания файла и попытки запуска, 1С запишет в лог все сетевые задержки и исключения. Это позволит точно выяснить, на каком IP-адресе или порту происходит обрыв связи.
Подводя итог, если 1С на клиентах висит «без ошибок», мы последовательно проверяем:
Чаще всего проблема кроется именно в первом пункте — динамических портах рабочих процессов, о которых забывают при базовой настройке брандмауэра после переустановки системы.