web-dev-qa-db-ja.com

ネットワークドライブが起動したアプリケーションがWindows 10(1703/1809)でランダムにクラッシュし、0xc0000006例外またはエラー「エラーを処理できません」が報告される

前書き

Windows 10(更新1703または1809)では、ネットワークドライブから起動されたアプリケーションが60から95分。 Windows 7では、アプリケーションは問題なく実行されます。

動作は、いくつかの32ビットと16ビットの両方のアプリケーションを含む数週間ラボの監視下にあります。

症状

  • ネットワークドライブからアプリケーションを起動する試みはすべて成功します。
  • 影響を受けるすべての32ビットアプリケーションEXE/DLL(Powerbuilder)は、0xc0000006をログに記録しましたイベントビューアの例外。
  • 16ビットアプリケーション(Foxpro 2.6 for MS-DOS)でエラー「Unable to process error "または単に中断して終了します。
  • 時々「エラー104を報告しようとしたときに致命的なエラー104」が発生しました。
  • 継続的な使用中でも障害が発生します(重大な非アクティブ期間は発生しません)。
  • 障害は、Windows 1032ビット/ 64ビットワークステーションでのみ発生しました。Update1703またはUpdate1809のいずれかを実行しています。Windows7ワークステーションは問題ありませんでした。
  • 収集された分析は、60から95分の「安全な」ランダム期間を指します。最初の起動と中断の間に発生します。
  • Wiresharkを使用すると、エラーSTATUS_NETWORK_SESSION_EXPIREDは、一部のシナリオで障害発生時に一貫してログに記録されます。
  • 複数のインスタンスが異なる時間に起動された場合、それらはすべて同じ秒で失敗しました。
  • ローカルドライブからのインスタンスの起動は、ネットワークドライブで起動されたインスタンスで最終的に障害が発生した後でも、正常に実行されます。
  • 影響を受けるすべてのサイトサーバーはWindows 2016 Server;で実行されています。
  • 障害発生後、ネットワークドライブは機能しているようです。
  • アプリケーションの中断前、中断中、中断後にネットワーク接続が失敗することはありません(継続的なPING)。

テスト済みのラボシステム構成

  • Windows Server 2016 Essentials(1607)
  • Windows 1032ビット/ 64ビット(更新1703/1809)
  • Windows 7(32ビットのみ)
  • ケーブル
  • スイッチ

サーバーネットワーク構成

PowershellのGet-SMBServerConfigurationコマンドの結果:

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

ワークステーションネットワーク構成

PowershellのGet-SMBClientConfigurationコマンドの結果:

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ワークステーションで、 harryc ;が示すように、再起動が続きます。
  • 設定を試みましたSMBKeepcon設定を65535ワークステーションで再起動します。
  • 自動切断を無効にして(-1に変更)、その後再起動します。
  • サーバー/ワークステーションの両方でSMB1を有効にしてから、再起動してみました。
  • サーバー/ワークステーションの両方でウイルス対策(ESET)を無効にしてから、再起動しようとしました。
  • サーバー/ワークステーションの両方のカードで省電力ネットワークを無効にしてから再起動します。
  • サーバー/ワークステーションの両方でファイアウォールを無効にしてみました。
  • ケースは何週間もラボの監視下にあり、成功していません。

症状に直面し、代替ソリューションを提供できる人は他にいますか?

ご清聴ありがとうございました

3
Julio Nobre

一般に、1つの新しいバグがWindows 10 1809に導入され、Microsoftが記事で認めています。
マップされたネットワークドライブは、Windows 10バージョン1809では再接続に失敗する可能性があります

Microsoftはこの問題を認識していますが、恒久的な修正は2019年のいつかまで期待されていません。それまでの間、これが本当に問題である場合は、記事に記載されている回避策を使用してバグを軽減できます。

以下に、インターネットフォーラムでユーザーが提案したその他の回避策をいくつか示します。


クライアントでSessionTimeoutの値を65535秒に設定してみてください。これは、PowerShellコマンド Set-SmbClientConfiguration -SessionTimeout を使用して実行できます。

のレジストリにも存在する可能性があります
HKEY_LOCAL_MACHINE\SYSTEM\CURRENTCONTROLSET\SERVICES\ LANMANWORKSTATION\PARAMETERS\SESSTIMEOUT
(これを参照 古いリンク )。

後で再起動することをお勧めします。


その他の考えられる回避策:

  • グループポリシーを、ドライブマッピングをReplaceではなくUpdateに変更します。グループポリシーオブジェクト(GPO):ユーザー構成>設定> Windows設定>ドライブマップlink を参照してください。一部の人々は、Refreshに設定できると報告しています。

  • サーバーとクライアントで昇格したcmdで次のコマンドを実行します。

    net config server /autodisconnect:-1
    
  • ネットワークアダプタの電源オプションを設定し、「コンピュータがこのデバイスの電源をオフにして電力を節約できるようにする」を無効にします。

  • ログイン時にネットワーク共有を再マッピングすると問題が解決すると報告する人もいれば、そのためのログインスクリプトを追加する人もいます。

  • 他のレポートでは、Windows10の高速起動を無効にすることを推奨しています。

2
harrymc
  1. サーバー/クライアントボックスのいずれかがVMWareで実行されている場合は、VMwareツールを9.0.13以降に更新してください。 VMwareツールパッケージの一部としてのvmxnet3イーサネットドライバは1.5.2以上である必要があります。そうでない場合、理由もなくパッケージがランダムにドロップされる可能性があります。
  2. 間にファイアウォールやロードバランサーがありますか?バイパスしてから、状況を確認してください。
  3. Harrymcによって言及されているSESSIONTIMEOUTを増やすことは良いアプローチです。私も同じことをします。しかし、私はテスト目的でもこれらを行います:

ダウンロードTCP Optimizer 4.0、クライアント側とサーバー側の両方でこれらの設定を変更して、両方のボックスを再起動します。MaxConnectionsPer1_0ServerとMaxConnectionPerServerの両方を240に増やし、MaxSYNC再送信を7に増やしますMaxUserPortを65534に増やしますTCPTimedWaitDelayを180に増やします

クライアントボックスにログオンし、IPアドレス\ 192.168.100.xxx\Source_folderでネットワークドライブをマウントしてから、同じアプリを実行してテストします。

問題が解決しない場合は、実行しているアプリを共有してください。 Javaアプリの場合は、調整が必要になる場合があります。幸運を祈り、それがどのように行われるかを楽しみにしています。

1
Robin Yang