Ошибка 10054 в 1С: удалённый хост разорвал соединение — как исправить
Содержание
Короткий ответ: в 90% случаев это сетевая проблема на стороне клиента или сервера — чаще всего мешает включённый IPv6 в локальной сети или переполненный кэш платформы. Начните с чистки кэша и отключения IPv6, и в большинстве случаев удалённый хост принудительно разорвал существующее подключение в 1С уйдёт за пять минут.
Знакомая картина: пользователь работал в базе, отошёл на обед, вернулся — а вместо документа окно с текстом про принудительно разорванное подключение. Или база вообще не открывается с утра у половины отдела. Ниже — что это за ошибка 10054, почему удалённый хост рвёт соединение и как чинить по порядку: от безопасного к радикальному.
Что означает ошибка «удалённый хост принудительно разорвал соединение»
Это не ошибка 1С в привычном смысле. Это ошибка сетевого уровня Windows — код 10054 (в шестнадцатеричном виде 0x00002746) из набора Windows Sockets (WinSock). Означает она буквально следующее: TCP-соединение между клиентом и сервером 1С было закрыто удалённой стороной без корректного завершения.
Проще говоря — клиент отправил данные на сервер, а канал в этот момент оборвался. Кто именно оборвал (сервер, промежуточное сетевое оборудование, антивирус, драйвер сети) — по самому тексту ошибки не видно. Поэтому диагностика идёт перебором.
Полный текст ошибки, который видит пользователь, обычно выглядит так:
Ошибка обращения к серверу 1С:Предприятия
Удаленный хост принудительно разорвал существующее подключение.
line=1574 file=src\DataExchangeTcpClientImpl.cpp
Строка line=1574 file=src\DataExchangeTcpClientImpl.cpp — это внутренняя ссылка на модуль платформы, где произошёл разрыв. Номер строки в разных релизах платформы может отличаться, пугаться его не нужно — суть одна.
Если у вас файловая база (не серверная), а ошибка всё равно есть — почти наверняка проблема в сетевой шаре, VPN или антивирусе на пути к папке с базой. Логика диагностики та же.
Клиент или сервер: с чего начать
Прежде чем крутить настройки, определите, где проявляется сбой. От этого зависит порядок действий.
Причины ошибки 10054 в 1С
Разрыв соединения провоцирует один из факторов ниже. Отсортированы примерно по частоте встречаемости:
- 🌐 Включённый IPv6 в локальной сети. Самая частая причина в корпоративных сетях. Клиент и сервер начинают «договариваться» по IPv6, где-то в цепочке он настроен криво — канал рвётся.
- 🗂 Переполненный или битый кэш платформы — на клиенте или на сервере (профиль пользователя
USR1CV8). - 🧩 Старый релиз платформы 1С:Предприятие. В ранних сборках 8.3 были известные баги с разрывом TCP; лечатся обновлением.
- 💾 Нехватка памяти или лимит в настройках рабочего процесса кластера сервера — процесс
rphostперезапускается и рвёт сессии. - 🖥 Смена имени сервера, проблемы с DNS — клиент не может стабильно достучаться до сервера по имени.
- 🛡 Антивирус или файрвол, который «на лету» проверяет трафик 1С и обрывает соединение.
- 📜 Проблемы с сертификатами при защищённом соединении (HTTPS-публикация, веб-сервер).
- ⚙️ Сбой кластера сервера 1С — повреждённый реестр кластера в папке
srvinfo.
Дальше — решения под каждую причину, по шагам.
Как исправить: пошагово от простого к сложному
Идите по списку сверху вниз. После каждого шага проверяйте, ушла ли ошибка, — не нужно делать всё сразу.
Шаг 1. Очистка кэша клиента
Кэш платформы на компьютере пользователя — первое, что стоит удалить. Он копится в профиле Windows и со временем «протухает».
- Полностью закройте 1С у пользователя (проверьте в диспетчере задач, что нет процессов
1cv8.exeи1cv8c.exe). - Откройте проводник и вставьте в адресную строку путь:
%LOCALAPPDATA%\1C\1cv8
- Удалите папки с длинными «случайными» именами (это и есть кэш баз). Файл
1CEStart.cfgиibases.v8iне трогайте — в них список баз. - Проверьте ещё один путь и почистите так же:
%APPDATA%\1C\1cv8
- Запустите 1С заново.
Не удаляйте файл ibases.v8i — иначе у пользователя пропадёт весь список информационных баз. Удаляются только папки-кэши с бессмысленными именами.
Шаг 2. Очистка кэша сервера и профиля USR1CV8
Если ошибка у всех — чистим кэш на сервере. Работает под учётной записью, от которой запущена служба (обычно USR1CV8).
- Остановите службу «Агент сервера 1С:Предприятия» (
1C:Enterprise 8.3 Server Agent). - Перейдите в каталог серверного кэша:
C:\Program Files\1cv8\srvinfo\
- Внутри найдите папки вида
reg_1541(номер — порт кластера). Удалите файлы контекста сеансов —snccntx*.datи подобные временные файлы. Каталоги баз (reg_XXXX с данными) целиком не удаляйте — только временные файлы кэша сеансов. - Почистите кэш профиля служебного пользователя:
C:\Users\USR1CV8\AppData\Local\1C\1cv8
- Запустите службу агента сервера обратно.
Перед удалением файлов на сервере сделайте их копию в отдельную папку. Если что-то пойдёт не так — вернёте на место.
Шаг 3. Отключение IPv6 через реестр Windows
Самое результативное действие в локальных сетях. Отключаем IPv6 и на клиенте, и на сервере.
Снять галочку IPv6 в свойствах адаптера недостаточно — Windows всё равно использует протокол для внутренних нужд. Правильно отключать через реестр.
- Нажмите
Win + R, введитеregedit, Enter. - Перейдите по ветке:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters
- Создайте (или измените) параметр
DWORD (32 бита)с именемDisabledComponents. - Задайте значение
ff(шестнадцатеричное) — это отключает все компоненты IPv6. - Перезагрузите компьютер — без перезагрузки настройка не применится.
Быстрый вариант через командную строку от администратора:
reg add HKLM\SYSTEM\CurrentControlSet\Services\Tcpip6\Parameters /v DisabledComponents /t REG_DWORD /d 255 /f
Число 255 в десятичном виде равно 0xFF в шестнадцатеричном — это одно и то же значение.
Отключение IPv6 меняет работу сети всей машины. Если в вашей инфраструктуре что-то целенаправленно использует IPv6 (редко, но бывает) — согласуйте с системным администратором.
Шаг 4. Обновление платформы 1С
Если база работает на старом релизе платформы (например, ранние сборки 8.3.10–8.3.14), обновление часто закрывает вопрос само.
- Обновляют именно платформу (1С:Предприятие), а не конфигурацию.
- Ставьте свежий стабильный релиз, а не самый последний «сырой».
- Обновлять надо и клиентскую часть, и сервер — версии должны совпадать.
После обновления обязательно почистите кэш (шаги 1 и 2) — старый кэш несовместим с новой платформой.
Шаг 5. Память и лимиты рабочего процесса
Ошибка «выскакивает» под нагрузкой или в одно и то же время (например, при ночном обмене)? Смотрите память.
Процесс rphost при достижении лимита памяти перезапускается и рвёт все сессии. В консоли администрирования сервера проверьте настройки рабочего процесса:
- Параметр «Максимальный объём памяти рабочих процессов» — если стоит жёсткое ограничение, увеличьте или снимите (значение
0= без лимита). - «Безопасный расход памяти за один вызов» — тоже частый виновник, если стоит слишком низким.
- Проверьте, хватает ли серверу физической RAM в принципе.
Шаг 6. Имя сервера, localhost и DNS
Клиент подключается к серверу по имени, а имя резолвится нестабильно — соединение рвётся.
- Проверьте, что имя сервера в списке баз совпадает с реальным именем машины.
- В файле
hosts(C:\Windows\System32\drivers\etc\hosts) можно жёстко прописать соответствие имени и IP сервера. - Если сервер и клиент на одной машине — иногда помогает указать
localhostвместо сетевого имени в строке подключения к серверу.
Шаг 7. Антивирус и файрвол
Антивирус с проверкой сетевого трафика умеет обрывать соединение 1С «на всякий случай».
- Добавьте в исключения процессы
1cv8.exe,1cv8c.exe,ragent.exe,rphost.exe,rmngr.exe. - Откройте в файрволе порты кластера — по умолчанию
1540,1541и диапазон1560–1591. - Для теста можно временно отключить антивирус целиком: если ошибка ушла — виновник найден.
Шаг 8. Пересоздание кластера сервера (крайняя мера)
Если ничего из перечисленного не помогло, а ошибка у всех и стабильно — возможно, повреждён реестр кластера.
Это радикальный шаг: он удаляет настройки кластера, поэтому базы придётся добавлять заново.
- Сделайте резервную копию папки
srvinfoцеликом. - Остановите службу агента сервера.
- Удалите (или переименуйте) папку
srvinfo. - Запустите службу — платформа создаст чистый реестр кластера.
- Заново добавьте информационные базы в консоли администрирования.
Если не помогло
Прошли все восемь шагов, а удалённый хост принудительно разорвал существующее подключение всё равно всплывает? Копайте глубже:
- 🔌 Проверьте сетевое железо. Битый патч-корд, перегруженный коммутатор, кривой MTU на роутере при работе через VPN — всё это рвёт TCP. Пропингуйте сервер с большим пакетом:
ping -l 1400 -f имя_сервера. - 📉 Посмотрите журнал регистрации и технологический журнал 1С — там бывает более конкретная причина разрыва.
- 🕒 Проверьте таймауты на прокси или роутере, если ходите к серверу через интернет. Короткий keep-alive рвёт «тихие» сессии.
- 🧵 Драйверы сетевой карты на сервере — устаревший или проблемный драйвер даёт ровно такую картину. Обновите.
Если разрыв случается только при обновлении конфигурации — делайте обновление монопольно, в нерабочее время, предварительно завершив все сеансы.
Как предотвратить повторение
Чтобы ошибка не возвращалась:
- Раз в пару месяцев чистите кэш клиентов (можно скриптом при входе в систему).
- Держите платформу в актуальном стабильном релизе.
- Отключите IPv6 на клиентах и серверах, если он не нужен.
- Пропишите 1С в исключения антивируса на всех машинах.
- Следите за свободной памятью на сервере и не ставьте жёстких лимитов «в потолок».
Проверьте себя
Видео по теме
Частые вопросы
Что за ошибка 10054 в 1С?
С чего начать исправление?
%LOCALAPPDATA%\1C\1cv8), затем отключить IPv6 через реестр. Эти два действия закрывают большинство случаев.Что значит строка line=1574 file=src\DataExchangeTcpClientImpl.cpp?
Почему помогает отключение IPv6?
DisabledComponents = ff) убирает конфликт.Ошибка у всех пользователей сразу — куда смотреть?
USR1CV8, память и лимиты процесса rphost, работу службы «Агент сервера 1С», сетевое оборудование.