Broadcom NetXtreme 1 ギガビット ネットワーク アダプターを使用すると、仮想マシンのネットワーク接続が失われる

この記事では、Broadcom NetXtreme 1 ギガビット ネットワーク アダプターを使用すると、仮想マシンがネットワーク接続を失うという問題に対する解決策を提供します。

適用対象:  Windows Server 2012R2
元の KB 番号:   2986895

現象

Microsoft Windows Server 2012 または Windows Server 2012 R2 で Hyper-V を Broadcom NetXtreme 1 ギガビット ネットワーク アダプターと共に実行している場合 (ただし、NetXtreme II ネットワーク アダプターは実行しない場合)、次の現象の 1 つ以上に気付く場合があります。

  • 仮想マシンは、ネットワーク接続をランダムに失う可能性があります。 ネットワーク アダプターは仮想マシンで動作しているようです。 ただし、仮想マシンからネットワーク リソースに ping を実行したり、アクセスしたりできない。 仮想マシンを再起動しても問題は解決しない。

  • リモート コンピューターから仮想マシンに ping を実行したり、仮想マシンに接続したりできません。 これらの現象は、Hyper-V を実行しているサーバー上の一部またはすべての仮想マシンで発生する可能性があります。 サーバーを再起動すると、すべての仮想マシンへのネットワーク接続が直ちに解決されます。

原因

これは、デバイス ドライバーを使用する Broadcom NetXtreme 1 ギガビット ネットワーク アダプターに関する既知b57nd60a.sysです。 この問題は、ネットワーク アダプターで仮想マシン キュー (VMQ) が有効になっている場合に発生します。 (既定では、VMQ は Broadcom ネットワーク ドライバーによって有効になっています)。

Broadcom は、これらのネットワーク アダプターを 57xx ベースのチップセットと名付けします。 5714、5715、5717、5718、5719、5720、5721、5722、5723、および 5780 が含まれます。

これらのネットワーク アダプターは、一部のサーバー OEM によって異なるモデル番号で販売されています。 HP は、モデル番号 NC1xx、NC3xx、NC7xx の下でこれらのドライバーを販売します。 使用している OEM バージョン、または Broadcom ドライバーのバージョンに応じて、ドライバー バージョン 16.2、16.4、または 16.6 を使用している場合があります。

解決方法

この問題は、バージョン 16.8 以降b57nd60a.sys Broadcom ドライバーで解決されています。 2015 年 3 月、Broadcom はダウンロード用のドライバー バージョン 17.0 を公開しました。 2015 年 4 月、HP は影響を受けるネットワーク アダプター用のドライバーのバージョン 16.8 を公開しました。 サーバー固有のドライバーが必要な場合は、サーバー OEM にお問い合わせください。

ネットワーク アダプター ドライバーを更新して問題を解決できない場合は、PowerShell コマンドを使用して影響を受ける各 Broadcom ネットワーク アダプターで VMQ を無効にすることで問題を回避 Set-NetAdapterVmq できます。

次のような状況で問題が発生します。

  • デュアル ポート ネットワーク アダプターがあります。
  • ポートの名前は NIC 1 と NIC 2 Windows。

このシナリオでは、次のコマンドを使用して、各アダプターで VMQ を無効にできます。

Set-NetAdapterVmq -Name "NIC 1" -Enabled $False
Set-NetAdapterVmq -Name "NIC 2" -Enabled $False

Get-NetAdapterVmq PowerShell コマンドを使用して、正しいネットワーク アダプターで VMQ が無効になっているか確認できます。

注意

既定では、1 ギガビット ネットワーク アダプターを使用している仮想マシンの Hyper-V 仮想スイッチで VMQ が無効になっています。 VMQ は、システムが 10 ギガビット以上のネットワーク アダプターを使用している場合にのみ、Hyper-V 仮想スイッチで有効になります。 つまり、Broadcom ネットワーク アダプターで VMQ を無効にすることで、ネットワークのパフォーマンスや他の利点は失う必要が生じないので、これが既定です。 ただし、ドライバーの問題を回避するには、これを行う必要があります。

Get-NetAdapterVmqQueue ネットワーク アダプターに割り当てられている仮想マシン キュー (VMQ) を示します。 既定では、1 ギガビット ネットワーク アダプターに割り当てられている VMQ は表示されません。