Приложение, запущенное с сетевого диска, случайно вылетает в Windows 10 (1703/1809), сообщая об исключении 0xc0000006 или ошибке «Невозможно обработать ошибку»

Приложение, запущенное с сетевого диска, случайно вылетает в Windows 10 (1703/1809), сообщая об исключении 0xc0000006 или ошибке «Невозможно обработать ошибку»

Введение

НаWindows 10 (обновление 1703 или 1809), приложения, запущенные с сетевого диска, аварийно завершают работу после определенного периода60к95минут. На Windows 7 приложения работают безупречно.

Поведение находилось под лабораторным наблюдением в течение нескольких недель, в ходе которого были задействованы как 32-битные, так и 16-битные приложения.

Симптомы

  • Все попытки запустить приложения с сетевого диска завершаются успешно;
  • Все затронутые 32-битные приложения EXE/DLL (Powerbuilder) зарегистрировал0xc0000006исключение наПросмотрщик событий.
  • В 16-битном приложении (Foxpro 2.6 для MS-DOS), возникает ошибка "Невозможно обработать ошибку" или просто ломается и уходит.
  • Иногда "Фатальная ошибка 104 при попытке сообщить об ошибке 104" произошло.
  • Сбой происходит даже при непрерывном использовании (не происходит существенных периодов бездействия);
  • Сбой произошел толькоВиндовс 1032-/64-разрядные рабочие станции с обновлением 1703 или 1809. Рабочие станции с Windows 7 работали нормально.
  • Собранный анализ указывает на «безопасный» случайный период от60к95минут между первым запуском и остановкой;
  • С использованиемWireshark, ошибкаSTATUS_NETWORK_SESSION_EXPIREDпостоянно регистрируется при возникновении сбоев в некоторых сценариях.
  • Когда несколько экземпляров были запущены в разное время, все они вышли из строя в одну и ту же секунду;
  • Запуск экземпляра с локального диска выполняется нормально, даже после возможного сбоя экземпляров, запущенных с сетевого диска;
  • Все затронутые сайты серверы работают наWindows 2016 Сервер;
  • Сетевой диск выглядит работоспособным после сбоя;
  • Сетевое подключение никогда не прерывается (непрерывные PING-запросы) до, во время или после сбоев в работе приложений;

Протестированные конфигурации лабораторных систем

  • Основы Windows Server 2016 (1607)
  • Windows 10 32 бит / 64 бит (обновление 1703 / 1809)
  • Windows 7 (только 32-разрядная версия)
  • Кабель
  • Выключатель

Конфигурация сети сервера

Результаты Get-SMBServerConfigurationкоманды Powershell:

AnnounceComment                 : 
AnnounceServer                  : False
AsynchronousCredits             : 512
AuditSmb1Access                 : False
AutoDisconnectTimeout           : 999999
AutoShareServer                 : True
AutoShareWorkstation            : True
CachedOpenLimit                 : 10
DurableHandleV2TimeoutInSeconds : 180
EnableAuthenticateUserSharing   : False
EnableDownlevelTimewarp         : False
EnableForcedLogoff              : True
EnableLeasing                   : False
EnableMultiChannel              : True
EnableOplocks                   : True
EnableSecuritySignature         : True
EnableSMB1Protocol              : True
EnableSMB2Protocol              : True
EnableStrictNameChecking        : True
EncryptData                     : False
IrpStackSize                    : 15
KeepAliveTime                   : 2
MaxChannelPerSession            : 32
MaxMpxCount                     : 50
MaxSessionPerConnection         : 16384
MaxThreadsPerQueue              : 20
MaxWorkItems                    : 1
NullSessionPipes                : netlogon,samr,lsarpc
NullSessionShares               : 
OplockBreakWait                 : 35
PendingClientTimeoutInSeconds   : 120
RejectUnencryptedAccess         : True
RequireSecuritySignature        : True
ServerHidden                    : True
Smb2CreditsMax                  : 8192
Smb2CreditsMin                  : 512
SmbServerNameHardeningLevel     : 0
TreatHostAsStableStorage        : False
ValidateAliasNotCircular        : True
ValidateShareScope              : True
ValidateShareScopeNotAliased    : True
ValidateTargetName              : True

Конфигурация сети рабочей станции

Результаты Get-SMBClientConfigurationкоманды Powershell:

ConnectionCountPerRssNetworkInterface : 4
DirectoryCacheEntriesMax              : 16
DirectoryCacheEntrySizeMax            : 65536
DirectoryCacheLifetime                : 0
DormantFileLimit                      : 1023
EnableBandwidthThrottling             : True
EnableByteRangeLockingOnReadOnlyFiles : True
EnableInsecureGuestLogons             : True
EnableLargeMtu                        : True
EnableLoadBalanceScaleOut             : True
EnableMultiChannel                    : True
EnableSecuritySignature               : False
ExtendedSessionTimeout                : 1000
FileInfoCacheEntriesMax               : 64
FileInfoCacheLifetime                 : 0
FileNotFoundCacheEntriesMax           : 128
FileNotFoundCacheLifetime             : 5
KeepConn                              : 65535
MaxCmds                               : 50
MaximumConnectionCountPerServer       : 32
OplocksDisabled                       : False
RequireSecuritySignature              : False
SessionTimeout                        : 65535
UseOpportunisticLocking               : False
WindowSizeThreshold                   : 8

Что мы уже сделали

  • ПровереноПросмотрщик событий, даже для подсобытий SMBCLIENT и SMBSERVER, но не удалось найти корреляцию между событиями и сбоем приложения.
  • Попробовал настроить SMBSessionTimeoutнастройка на65535на рабочей станции выполните перезагрузку, как указаноГаррик;
  • Попробовал настроить SMBKeepconнастройка на65535на рабочей станции с последующей перезагрузкой;
  • Отключил автоотключение (изменил его на -1) с последующей перезагрузкой;
  • Попробовал включитьСМБ1на сервере/рабочей станции с последующей перезагрузкой;
  • Попробовал отключить антивирус (ESET) на сервере/рабочей станции с последующей перезагрузкой;
  • Отключена энергосберегающая сеть на карте как сервера, так и рабочей станции с последующей перезагрузкой;
  • Попробовал отключить брандмауэр на сервере/рабочей станции;
  • Дело находилось под лабораторным наблюдением в течение нескольких недель, но безуспешно.

Есть ли кто-то еще, кто сталкивается с подобными симптомами и может предложить альтернативные решения?

Спасибо за внимание.

решение1

В целом, в Windows 10 1809 появилась одна новая ошибка, признанная Microsoft в статье
Подключенный сетевой диск может не подключаться повторно в Windows 10 версии 1809.

Хотя Microsoft известно об этой проблеме, ее постоянное исправление ожидается не раньше 2019 года. В то же время, если это действительно ваша проблема, вы можете воспользоваться обходным решением, предложенным в статье, чтобы смягчить последствия ошибки.

Ниже я перечислил некоторые другие обходные пути, предложенные пользователями на интернет-форумах.


Попробуйте установить на клиенте значение SessionTimeout65535 секунд. Это можно сделать с помощью команды PowerShell Set-SmbClientConfiguration -SessionTimeout.

Он также может находиться в реестре по адресу
HKEY_LOCAL_MACHINE\SYSTEM\CURRENTCONTROLSET\SERVICES\ LANMANWORKSTATION\PARAMETERS\SESSTIMEOUT
(см. здесь)старая ссылка).

После этого рекомендую перезагрузить компьютер.


Другие возможные обходные пути:

  • Измените групповую политику наОбновлятьскорее, чемЗаменятьсопоставление дисков в объекте групповой политики (GPO): Конфигурация пользователя > Настройки > Параметры Windows > Карты дисков. Видетьсвязь. Некоторые люди сообщают, что его можно настроить наОбновить.

  • Запустите на сервере и клиенте в cmd с повышенными привилегиями команду:

    net config server /autodisconnect:-1
    
  • В настройках электропитания сетевого адаптера отключите параметр «Разрешить компьютеру отключать это устройство для экономии энергии».

  • Некоторые пользователи сообщают, что переназначение сетевого ресурса при входе в систему решает проблему, а некоторые добавили для этого скрипт входа.

  • В других отчетах рекомендуется отключить быстрый запуск Windows 10.

решение2

  1. Если какой-либо сервер/клиентский ящик работает на VMWare, обновите VMware tools до версии 9.0.13 или выше. Драйвер vmxnet3 Ethernet, как часть пакета VMware tools, должен быть версии 1.5.2 или выше, в противном случае он может случайно отбрасывать пакеты без причины.
  2. Есть ли у вас какой-либо брандмауэр или балансировщик нагрузки, который стоит между ними? Пожалуйста, обойдите его и посмотрите, что из этого получится.
  3. Увеличение SESSIONTIMEOUT, упомянутое harrymc, является хорошим подходом. Я сделаю то же самое. Но я также сделаю это в целях тестирования:

Загрузите TCP Optimizer 4.0, измените эти настройки на стороне клиента и сервера, перезагрузите оба устройства: увеличьте MaxConnectionsPer1_0Server и MaxConnectionPerServer до 240, увеличьте Max SYNC Retransmissions до 7, MaxUserPort до 65534, TCPTimedWaitDelay до 180.

Войдите в систему клиентского компьютера, смонтируйте сетевой диск по его IP-адресу как \192.168.100.xxx\Source_folder, а затем запустите то же приложение, чтобы проверить его.

Если проблема не исчезнет, ​​пожалуйста, сообщите, какое приложение вы используете. Если это приложения Java, возможно, потребуется некоторая настройка. Желаю вам удачи и с нетерпением жду, как все пойдет.

Связанный контент