Сетевая ошибка с кодом 10054 (0x00002746) — одна из самых коварных и распространенных проблем в клиент-серверной архитектуре «1С:Предприятие». Она сопровождается системным сообщением: descr=10054(0x00002746): Удаленный хост принудительно разорвал существующее подключение. Ошибка указывает на то, что низкоуровневое TCP/IP-соединение между клиентским приложением (или консолью администрирования) и рабочим процессом сервера 1С (rphost.exe) было внезапно разорвано со стороны сервера.
В этой статье мы подробно разберем, как локализовать эту неисправность, рассмотрим ключевой сценарий с лимитами дискового пространства из практики системных администраторов, а также проанализируем альтернативные технические методы решения проблемы.
Рассмотрим ситуацию, с которой столкнулся автор темы. Сервер внезапно перестал отвечать, базы не запускались, а консоль администрирования выдавала ошибку 10054. Причиной послужило действие системного администратора, который установил жесткий лимит (дисковую квоту) на рост папок на сервере.
Проанализируем, почему это приводит к сбою. В процессе функционирования сервер 1С активно создает временные файлы сеансов, кэш метаданных, файлы обмена и транзакционные логи. Для этого используются как папки системного профиля пользователя (под которым запущена служба ragent.exe), так и рабочий каталог кластера srvinfo. Если операционная система (например, через механизмы FSRM — File Server Resource Manager) блокирует запись новых данных из-за превышения квоты, рабочий процесс 1С rphost.exe мгновенно аварийно завершается. Клиент получает принудительный обрыв связи.
Выясним, как исправить эту проблему:
C:\Program Files\1cv8\srvinfo и системные Temp-каталоги пользователя USR1CV8.Если свободного места достаточно, но базы по-прежнему выдают ошибку 10054, велика вероятность повреждения файлов кэша сеансов. Разберем по шагам безопасную процедуру очистки кэша сервера 1С, чтобы не повредить настройки списка информационных баз:
services.msc, найдем службу Агент сервера 1С:Предприятия и выберем пункт Остановить.C:\Program Files\1cv8\srvinfo.reg_1541).reg_1541 хранится файл настроек подключений баз 1CV8Reg.lst. Если его удалить, список баз в кластере очистится.snccntx (например, snccntx8df55291...). В этих каталогах хранятся временные сеансовые данные, повреждение которых часто вызывает крах рабочих процессов.USR1CV8 (или того пользователя, от имени которого запускается служба сервера 1С). Перейдем по пути: C:\Users\USR1CV8\AppData\Local\Temp и удалим все временное содержимое.Часто операционная система сервера пытается использовать протокол IPv6 для локальной маршрутизации трафика между компонентами 1С. Это приводит к задержкам, таймаутам и, как следствие, аварийному разрыву соединений с кодом 10054.
Для надежной работы рекомендуется принудительно отключить использование IPv6 на уровне операционной системы через реестр Windows:
regedit от имени администратора.HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TCPIP6\Parameters
DisabledComponents.0xffffffff (или 4294967295 в десятичной системе).Рассмотрим ситуацию, когда базы периодически перестают работать из-за неконтролируемого выполнения регламентных процедур. Неоптимизированный программный код в фоновом задании может начать бесконечно потреблять оперативную память сервера. При достижении критического предела операционная система или сам менеджер кластера 1С принудительно завершает процесс rphost.exe, высвобождая ресурсы, что приводит к дисконнекту пользователей.
Выясним, как выявить проблемное задание:
EXCP, чтобы увидеть, на каком именно методе или запросе падает рабочий процесс.При интенсивном обмене данными между клиентом и сервером защитные механизмы брандмауэра (Firewall) или антивируса могут распознать данный трафик как сетевую атаку (например, сканирование портов или flood) и заблокировать сетевой сокет.
Чтобы исключить влияние защитного софта, выполним следующие настройки:
ragent.exermngr.exerphost.exesrvinfo.1540, 1541, 1560-1591.Применяя данные комплексные меры последовательно — от проверки дисковых квот и свободного места до тонкой настройки сетевых параметров и очистки кэша — мы сможем гарантированно диагностировать и полностью устранить сетевую ошибку 10054 на сервере 1С:Предприятия.