Ошибка соединения с сервером 1С:Предприятия 8.2:
Ошибка на сервере или соединение разорвано администратором
Ошибка формата потока
При запуске SQL базы получаем ошибку:
Ошибка при выполнении операции с информационной базой.
Ошибка на сервере или соединение разорвано администратором.
Ошибка формата потока
И так, исходные данные:
Свежеустановленная Windows 7 Professional x64, все апдейты и т.д. (проблема имеет место и на Server 2008 и на 2008R2)
Произведена установка платформы 1С 8.2 (тестировались релизы 8.2.16.368, 8.2.16.363, 8.2.15.319)
Установлен сервер 1C x64 (32битный тоже пробовал)
Все работает до перезагрузки. После перезагрузки при попытке подключения к базе в SQL или открытии кластера в консоли 1С получаем отлуп с такими картинками:
При подключении к серверу 1С из консоли получаем:
Ошибка соединения с сервером 1С:Предприятия 8.2:
Ошибка на сервере или соединение разорвано администратором
Ошибка формата потока
При запуске SQL базы получаем ошибку:
Ошибка при выполнении операции с информационной базой.
Ошибка на сервере или соединение разорвано администратором.
Ошибка формата потока
Для возможности запуска базы и подключения к кластеру из консоли помогало только:
1. Остановка службы сервера 1С:Предприятия 8.2
2. Удаление процессов rmngr.exe rphost.exe (сам вылетает при завершении rmngr.exe).
3. Очистка каталога C:Program Files1cv82srvinfo
eg_1541snccntx (у 32 битного сервера C:Program Files (x86)1cv82srvinfo
eg_1541snccntx)
4. Запуск службы сервера 1С:Предприятия 8.2
Однако, в процессе работы с SQLной конфой, можно было неожиданно поймать аварийное закрытие 1Ски с последующим получением этих же ошибок.
Были протестированы:
1. различные релизы, различные серверы,
2. различные пользователи: Система, Администратор, USR1CV82.
3. принудительное выставление полных прав этим пользователям на каталоги C:Program Files1cv82 (у 32 битного сервера C:Program Files (x86)1cv82) с наследованием на дочерние объекты.
4. десятки перезагрузок и многое другое.
Однако причина оказалась куда более неожиданной!
Разыменование в Windows 7 (Server 2008, 2008R2, вероятно и 2012)
Попробуйте пропинговать свой комп по имени. То что Вы увидите, определит возможность применения моего решения.
Выполнить это просто:
1. Запустите командную строку (Win+R, наберите cmd и нажмите ОК)
2. В командной строке наберите команду «Ping» пробел и имя вашего компьютера. Именно имя, а не его IP адрес. Нажмите Enter.
3. Если система начала пинговать себя через адрес вида fabc:de12:3456:7890:ABCD:EF98:7654:3210, или другой отличный от Вашего IP адрес
— добро пожаловать в частный клуб багофичи разыменования по версии Windows 7.
Основа проблемы кроется в том, что 1С сервер не может по имени определить себя.
А вот, отображение Вашего IP в виде IPv6 — одна из самых частых причин возникновения этой ошибки.
Еще одной из причин может быть периодическое подключение к другой сети (допустим ВПНу) когда создается новый интерфейс и Винда опять же начинает разыменовывать себя «неправильно».
Ниже я опишу два решения для обхода этой «особенности».
Предварительно хочу предупредить:
Все действия с Вашим компьютером Вы производите на свой страх и риск.
Человек выполняющий мои рекомендации должен понимать Что и Почему он делает!!!
Вариант №1 Добавить в Hosts свой ПК и его IP
1. Нужно найти файлик hosts в папке C:WindowsSystem32driversetc Если в этой папке Вы не видите файлик Hosts, значит он просто скрыт. Тогда можно нажать клавишу ALT и, в появившемся меню, выбрать «Сервис»-«Параметры папок»-«Вид» и снять там галочку «Скрывать защищенные системные файлы». Можно еще установить переключатель «Показывать скрытые файлы, папки, диски», тогда вообще все будет видно. (После манипуляций с Hosts, рекомендую вернуть галочку на ее прежнее место, что бы случайно чего не зацепить в будущем)
2. Открыть этот файлик в Notepad (блокнот) и в конец дописать строку вида 192.168.0.1 Server (IPадрес ИмяПК). Сохранить и закрыть файлик.
3. Попробовать заново пропинговать свой ПК через имя. Если Вы снова не видите нужно IP — что-то пошло не так… Возможно антивирус вернул старую версию файла (Каспер такое любит) или что-то еще.
В общем нужно добиться правильного адреса при пинге через имя.
Вариант №2 Отключить полностью протокол IPv6 (http://support.microsoft.com/kb/929852)
- Нажмите Win+R, напишите regedit и нажмите Enter. Откроется редактор реестра.
- Если появиться запрос на разрешение действий, нажмите в диалоговом окне Контроль учетных записей пользователей кнопку Продолжить.
- Найдите и выберите следующий подраздел реестра:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServicesTcpip6Parameters
- Дважды щелкните пункт DisabledComponents для изменения параметра DisabledComponents.
Если параметр DisabledComponents отсутствует, его необходимо создать. Для этого:- Находясь на ветке Parameters, в меню Правка выберите пункт Создать, а затем — Параметр DWORD (32 бита).
- Введите DisabledComponents и нажмите клавишу ВВОД.
- Дважды щелкните пункт DisabledComponents.
- Введите значение ffffffff , а затем нажмите кнопку ОК.
- Перегрузить компьютер.
Выглядеть должно так:
Таким образом Вы отключите протокол IPv6 полностью и Винда не будет использовать его IP вдрес для разименования.
ВАЖНО!!!
Обязательно пропингуйте свой ПК через имя и убедитесь, что пинги идут на правильный IP адрес. Не всегда, с первого раза, удается отключить IPv6 (то имя параметра не совсем правильное, то значение…)
Хочу напомнить, что оба решения не являются панацеей, и не самом деле позволяют обойти ошибку, а не устранить ее причину.
Спасибо огромное. Та же ситуация на Windows Server 2008 R2. Удаление ipv6 из настройки сетевой карты ничего не да дает, но описанный вариант №1 сработал!
Респект!
(1) han_kdz, Да, у меня на IPv6 тоже была снята галка, однако Винда все равно пинговалась через IPv6. Видимо причина в том, что снятие галки на определенном интерфейсе не отключает сам протокол в системе. При этом, мой второй метод отключает IPv6 именно во всей ОС и так же лечит проблему с Сервером1С.
По повду Hosts сталкнулся с проблемой что его нет в каталоге C:WindowsSystem32driversetc, это касается 7-ой винды. Решил проблему запус блокнота от имени админа и через файл открыть руками прописал hosts.
(3) User_E, Тоже вариант, но можно просто нажать ALT и в появившемся меню «Сервис-Параметры папок-Вид» СНЯТЬ галочку Скрывать защищенные системные файлы. Можно еще установить переключатель «Показывать скрытые файлы, папки, диски», тогда вообще все будет видно.
Огромное спасибо. Сработал второй вариант под Windows 7.
Большое СПАСИБО. Ставлю авансом +, проверю позже 🙂
Надеюсь, у меня как и у всех остальных получится решить проблему одним из способов предложенными Вами.
Я тоже с таким сталкивался, если вдруг на сервере 1С пропадал интернет, или наоборот подключался (к примеру 3g-модем)
Пацаны ваще котята! Спасибо.
Спасибо, актуальная статья!
Сталкивался с такой ошибкой. 1С Предприятие 8.2 УПП Клиент-Сервер. Пришлось снесты антивирус NOD32 3.x 4.x/ Все за работало!
(10) alekseies, Антивирус может быть причиной именно этой ошибки, в том случае если он создает свой сетевой интерфейс, тогда разыменование вполне может пойти именно через интерфейс антивируса.
После совершения действий из 1ого вариант пингуется как положено автором. Будем надеяться, что это поможет избежать данной ошибки в будущем.
Предыстория долгая, можно было короче. В целом информация полезная.
У меня десятки серверов с активным ipv6, с таким не сталкивался.
Интересно было бы понять причину таких ситуаций.
Пока озвучена одна — кривой антивирус NOD (который, к слову сказать, вообще нельзя ставить на сервера)
(13) mad_maksim, Антивирус может быть частным случаем, но не массовым.
Расскажите, какие релизы платформы установлены на Ваших серверах и какая операционка установлена?
Операционка на сервере — Win2008 R2, антивирус — McAfee, сервер эксплуатируется уже 3 года с разными версиями платформ. С такой проблемой сталкивался на клиентских машинах, при соединении из другого домена. Решил дописыванием суффикса в интерфейсе IPv4.
(15) Garstag,
А установлен ли SP1 на серверах и какой текущий релиз платформы 8.2?
У меня тоже есть сервера на 2008R2, установленные 2-3 года назад и, согласен, там нет такой проблемы.
И точно ли с такой ошибкой Вы встречались? Т.к. похожих ошибок очень много, но эта особенная 🙂
У меня есть подозрение, что причина в схеме назначения метрики интерфейсов/протоколов . И, видимо, эта схема поменялась при выходе SP1… Я игрался с метрикой интерфейсов на своей машине — все указывает на нее…
SP1 на сервере установлен, у нас все обновления отслеживаются службой WSUS. Сейчас установлена платформа 8.2.16.363, но начинали мы с платформы 8.1
Сказать не могу, что у нас была именно эта ошибка, но очень уж похожая по описанию…
(17) Garstag, Вероятно ошибка была другой. Просто, ошибка формата потока может возникать минимум в 5 абсолютно различных случаях, многие уже описывались на разных ресурсах.
Ситуация такая же на Windows Server 2008 R2 х64 SP1.
При отключенном нете все нормально, но как только подключаешь нет все вылетает, или перезагрузка с включенным нетом так там после запуска не работает.
Использовал «Вариант №1» все заработало!
Афтару Огромное Спасибо.
Спасибо за статью, помогла разобраться в проблеме!
Проблема, видимо, почти такая же как здесь описано, но решилось у меня несколько иначе и проще.
Просто в окне запуска инфобаз в настройке подключения базы заменил имя кластера серверов 1C с айпишного на именованное (192.168.100.11:1541 поменял на vterm:1541).
(При этом имя центрального сервера в консоли 1С задано как vterm)
(20) haz, Да, помню еще по работе с КИПом, вроде Гилев отмечал, что подключение и сам кластер обязательно должны быть по имени, а не по IP адресу.
(13) mad_maksim,
НОДа нет, а 1С на сервере не работает
(20) haz,
это не помогло
пускай админы танцуем с бубном дальше
спасибо огромное, иначе я бы еще долго танцевал в бубном вокруг эмулятора,
а 8.2.18 проблема существует или уже решена?
(23) maratimus, не пробовал, как-то надежнее самому прописать 🙂
Спасибо, первый способ помог. После внезапного перезагруза сервера сначала слетела аренда ip адреса по DHCP, а после прописывания айпишника вручную всплыла данная проблема, решилась исправлением файла hosts. Windows Server 2008 R2 х64
так же сталкивался с этой проблемой, отключение Ip6 через реестр помогло раз и навсегда
проще всего в файл с именем Ip6Disable.reg
добавить строчки
и запустить его на нужных серверах, тогда никаких проблем с прописыванием вручную не возникает
(26) wbazil, если только отключить IPv6, и если у Вас есть периодически подключаемые ВПНы, то Вы вполне успешно поймаете этот же глюк, но уже без IPv6. Т.ч. изменения hosts пока самый надежный метод 🙂
(27) Alex_IT
VPNнов у нас на серверах 1с нет, народ ходит на отдельную терминалку и через неё уже подключается к 1с
ситуации конечно бывают разные, но по соображениям безопасности, и если есть возможность, лучше все ж 1с отдельно, а удаленные подключения отдельно
Неделю мучилась с этой ошибкой, программа запускалась через раз, публикация очень помогла. Спасибо! 🙂
лечится также простой переустановкой серверной части 1с
(30) erp-consul, абсолютно никак не поможет. Почитайте статью, ошибка проявлялась на разных релизах. Возможно в современных, что то и исправили, но я не проверял.
у меня отваливалась служба Агента сервера 1с (SQL standart 2012, 1с 8.3.2.163) после загрузки ПК в теч. 5-10 мин., служба висела как работающая, однако при перезапске не запускалась, осюда последствия со всеми вытекающими.
пробовал переустановить сервер 1с, проблема осталась.
отключил ipv6 и все стало нормально.
(32) artfa, значит проблему так и не пофиксили.
Alex_IT, проблема устранена и меня это устраивает, кстати пинговался нормально, так же вручную прописывал в hosts сервер, результат = 0, а причина в чем? может вы проясните, все локально
забыл добавить Windows 7
(35) artfa, если пинговался по Имени с выводом IPv4 адреса, то проблема была не в ipv6, но т.к. после отключения ipv6 все начало нормально работать, то проблема именно в ipv6.
Следовательно, можно предположить, что вы пинговали комп по Ip адресу(IPv4), а не имени. Но я могу и ошибаться.
Alex_IT, пинговал по имени
(37) artfa, тогда есть еще какой-либо нюанс, но определить его не могу. Но, главное, что отключение IPv6 решило проблему и это хорошо 🙂
Спасибо огромное за статью!
Очень помогла при решении проблемы. Другие варианты решения, найденные в интернет, не помогали.
спасибо за статью, удалось пинги сделать как вы написали, правда еще одна проблема вышла при попытке открыть базу 1С выходит ошибка сетевого доступа к серверу, 1С сервер скорее всего не может распознать имя компьютера
Попробовал отключить Ipv6… Результат будет только завтра.
Второй вопрос. Кроме Tcpip6 в регистре есть какой-то ipv6tunnel. C ним чего делать?
(41) Serge_ASB, Ничего с ipv6tunnel делать не нужно. Если IPV6 отключен, то этого будет достаточно. Обычно даже достаточно простой записи в хостс.
Спасибо большущее! Прописал IP в файле hosts, перезагрузился — заработало!
Спасибо за статью! Первый способ помог. Но и ipv6 отключил на всякий случай 🙂
В статье ошибка.
https://support.microsoft.com/ru-ru/kb/929852 .
Значение 0xfffffff неправильное.
Нужно устанавливать 0xff
Внимательно читайте
(45) Grohovod, в статьюhttps://support.microsoft.com/ru-ru/kb/929852 последнее изменение внесено 8 марта 2015 г., на момент написания моей статьи там было именно 0xfffffff. И именно по этой причине Микрософт внесла в заголовок статьи описание ошибочного значения.
Однако, на практике проверено, что 0xfffffff отлично отключает IPv6 (или отключал).
Огромное спасибо. Замучился с регулярным отвалианием 1С на девелоперской машине. Всю голову сломал отчего такое происходит, учитывая что всё крутится на одном компе.
На утро пользователи БД (УТ 10.3) MS SQL 2008R2 1C 8.3.7.1845 получают следующее:
«Ошибка формата потока».
Запустить в режиме Предприятия и в режиме Конфигуратора нельзя.
Работает только Web интерфейс.
Консоль серверов 1С запускается.
SQL Management запускается.
Как-то можно протестировать БД средствами SQL?
P.S. Базу восстановить получается из резервной копии SQL предыдущего дня.
Чет для 8.2 ничего не помогает, бьюсь уже третьи сутки.
Ядро 8.2 последнее, postgres 9.1.9
Локально все работает, в терминале работает. А с удаленного компа по сети ошибка
Ошибка формата потока.
В сети всего 2 компа, ни с первого на второй ни со второго на первый не заходит.
Все что в статье сделал, пинги идут нормально через ip4.
Всю голову сломал.