NLB 操作モードをサポートするネットワーク インフラストラクチャを構成する

適用対象: Windows Server 2016Windows Server 2012 R2Windows Server 2012

概要


経験に基づいて考えると、ユーザーがネットワーク負荷分散 (NLB) を使用する際に発生する最も一般的な問題は、テクノロジーに関する十分な情報が得られていないことです。 このため、展開と実装には通常、必須の設定の一部がなかったり、すべてのネットワークで最も重要な要素、すなわち 帯域幅の消費が考慮されていなかったりします。 

NLB は、ユニキャスト、マルチキャストおよびインターネット グループ管理プロトコル (IGMP マルチキャスト) を使用するマルチキャストの 3 つのモードのいずれかで動作できます。 これらの各モードには異なる要件があり、ネットワーク インフラストラクチャに対する要求も異なります。

次の表は、各モードの要件、長所および短所をまとめたものです。

NLB 動作モード 特殊な要件 利点 短所
ユニキャスト NLB は MAC アダプター アドレスを変更できる必要があります 簡単に構成できる

単純な環境向け
他のシステムにネットワーク トラフィックを洪水させて、パフォーマンスの問題を引き起こす場合があります (これらの問題を解決するには、追加のハードウェアを使用する必要がある場合があります)

より複雑な環境には適さない
マルチキャスト ネットワーク インフラストラクチャは、静的 ARP エントリと静的 MAC アドレス テーブル エントリを使用する必要があります。 ユニキャスト モードよりも帯域幅を効率的に使用し、パフォーマンスに影響を与えるリスクを低減

各アダプターは、組み込みの MAC アドレスを使用します
ユニキャストよりも構成が複雑
IGMP を使用したマルチキャスト ネットワーク スイッチは IGMP スヌーピングに対応している必要があります マルチキャストと同じ利点

自動構成のその他の利点
ネットワーク ハードウェアには、他のモードが必要としない特定の機能が必要です。

詳細情報


次の 3 つの操作モードのいずれかで NLB クラスターを構成できます。 ユニキャスト、マルチキャストまたは IMGP マルチキャスト。 インフラストラクチャが正しく構成されていれば、3 つのモードはすべて非常に良好に機能します。 ただし、使用しているモードをサポートするネットワーク インフラストラクチャを準備していない場合、深刻な問題が発生する可能性があります。 各モードは、ネットワーク インフラストラクチャに対して異なる影響を持ちます。

ユニキャスト

ユニキャストは、構成するのが最も簡単な操作モードです。 理論的には、ネットワーク インフラストラクチャで他の操作を行う必要はありません。 実際には、ネットワーク トラフィックを管理するためにインフラストラクチャを変更する必要があります。

ユニキャスト モードでは、NLB は NLB MAC アドレスを使用して、クラスターの各ノードの各アダプターの元のハードウェア MAC アドレスを置き換えます。 複数のアダプターが同じアドレスを持つため、ネットワーク内の物理スイッチは MAC アドレス テーブルを正しく維持できなくなります。 どのトラフィックがどのスイッチ ポートに向かうかを判断できないため、トラフィックが送信先に到達することを確認するために、スイッチはすべてのトラフィックをすべてのポートに送信し始めます。 これは、ユニキャストの洪水シナリオと呼ばれます。

ユニキャスト洪水は、ネットワーク パフォーマンスに深刻な影響を与える可能性があります。 通常のネットワーク トラフィックに加えて、すべての NLB ノードはハートビート パケットを送信します(各ハートビート パケットには約 1500 バイトのデータが含まれます)。 既定では、ノードは毎秒ハートビート パケットを送信し、そのノードが収束済みとみなされるまで、それらのパケットのうちの 5 つが受信されるのを待ちます。 ユニキャストの洪水の状況では、すべてのスイッチは、通常のネットワーク トラフィックと同様に、このハートビート トラフィックをすべてのスイッチ ポートに再ブロードキャストします。 たとえば、ネットワークに 24 ポートまたは 48 ポートのスイッチがあり、そのうちの 2 つのポートのみが NLB ノードに接続している場合、スイッチは必要のない 22 台 (または 46 台) のサーバーに大量のネットワーク トラフィックをブロードキャストすることがあります。

ユニキャストの洪水を回避するには、次のオプションがあります。

  • 方法 1: ネットワーク スイッチと NLB ノードの間にハブを挿入します。 ハブは NLB ユニキャスト MAC アドレスを使用して単一のスイッチ ポートに接続するため、スイッチは MAC アドレス テーブルを正しく管理できます。 ハブはトラフィックを NLB ノードに転送し、他のスイッチ ポートに接続するサーバーは余分な NLB トラフィックを受信しません。
  • 方法 2: NLB サーバー用に別の VLAN を作成します。 他のサブネットが VLAN に到達できることを確認します。 この構成は、その VLAN に割り当てられているスイッチ ポートへの NLB トラフィックを分離します。

ユニキャスト モードでデュアル NIC を持つコンピューターを構成する

場合によっては、コンピューターに 2 枚のネットワーク インターフェイス カード (NIC) が必要になります。 Windows Server 2008 以降を実行している場合は、トラフィックが正しくルーティングされるように NIC で IP 転送を有効にする必要があります。 以前のバージョンの Windows では、IP 転送が既定で有効になっています。

IP 転送を有効にする前に、クラスター NIC のインデックスを取得する必要があります。 構成するコンピューターで、コマンド プロンプト ウィンドウを開き、次のコマンドを実行します。

netsh interface ipv4 show int

このコマンドの出力に、コンピューター上のインターフェイスが次のように一覧表示されます。

netsh interface ipv4 show int コマンドの出力には、すべてのネットワークインターフェイスのインデックスと名前が一覧表示されます

コマンド プロンプト ウィンドウで、次のコマンドを実行します。

netsh interface ipv4 set interface <Cluster Idx> forwarding=enabled

設定が変更されたことを確認するには、次のコマンドを実行します。

netsh interface ipv4 show interface <Cluster Idx> l=verbose

出力は、転送が有効になったことを示しています。

転送パラメーターが有効に設定されました

ユニキャスト モードで仮想環境を構成する

既定では、仮想環境の仮想スイッチは通常、ユニキャストの洪水を防ぎます。 構成情報については、次のリソースを参照してください。

  • Hyper-V を使用して仮想環境を実行している場合は、Hyper-V 管理コンソールを開きます。 仮想マシンの設定を選択し、NIC 設定を選択して、[MAC アドレスのスプーフィングを有効にする] を選択します。 [OK] を選択します。
    詳細については、ヒントを参照してください。 仮想ネットワーク アダプタの MAC アドレス スプーフィングを構成する
  • VMware を使用して仮想環境を実行している場合は、VMware の「ユニキャスト モード (1556) で Microsoft NLB が正しく動作しない」記事を参照してください。 この記事では、仮想ネットワークのインフラストラクチャを構成する方法について説明します。 ドキュメントに関する質問があれば、 VMware にお問い合わせください。
  • 別の仮想環境 (XenServer や VirtualBox など) を使用していて、同様の問題が発生している場合は、製造元に問い合わせてガイダンスを受けてください。

マルチキャスト

マルチキャスト モードはユニキャスト モードとは異なります。 ネットワーク アダプターの MAC アドレスを変更する代わりに、NLB は、NLB 仮想 IP (VIP) アドレスを NLB マルチキャスト MAC アドレスに変換します。 この MAC の形式は 03-BF-XX-XX-XX-XX です。 また、NLB は、クラスターのプライマリ IP アドレスがアドレス解決プロトコル (ARP) の一部としてこのマルチキャスト アドレスに解決されるようにします。 個々のネットワーク アダプターは元の MAC アドレスを保持しますが、NLB トラフィックは NLB マルチキャスト MAC アドレスに送信されます。

この構成をサポートするには、静的 ARP エントリと MAC アドレス テーブル エントリを使用するようにネットワーク インフラストラクチャを構成する必要があります。 ネットワーク スイッチは、通常の操作の過程で NLB マルチキャスト MAC アドレスを学習できません。 手動構成手順をスキップすると、ネットワーク スイッチがすべてのポートに NLB トラフィックを洪水させるか、パケットをドロップすることがあります。 ネットワークは最初は正しく機能しているように見えますが、時間が経過するにつれて問題が増加します。 

次の表に記載されている記事では、ネットワーク インフラストラクチャ ベンダーに基づいてネットワーク インフラストラクチャを正しく構成するために必要な作業について明確に説明します。 マイクロソフトでは、これらの記事を管理していません。 したがって、これらの記事が正確または利用できることを保証できません。 これらの記事について質問があれば、該当するベンダーにお問い合わせください。

製造元 文書番号
VMware 設定例 - ルーティングされるサブネット上のネットワーク負荷分散 (NLB) マルチキャスト モード - Cisco スイッチの静的 ARP 設定 (1006525)
Cisco Microsoft ネットワーク負荷分散の構成例の Catalyst スイッチ

Nexus 7000 での Microsoft ネットワーク負荷分散の構成例

Nexus 9000 シリーズで Microsoft ネットワーク負荷分散 (NLB) を構成する
Juniper マルチキャスト モードの EX シリーズ スイッチと Microsoft ネットワーク負荷分散 (NLB)

[EX/QFX] 例 - EX4300 および QFX5100 スイッチで Microsoft ネットワーク負荷分散を使用するための回避策
HPE HP スイッチ 5500/5500G - スイッチ 5500 および 5500G でマルチキャストを使用して Microsoft ネットワーク負荷分散を実装する方法
Dell S4048-ON システム 9.9 (0.0) 向け Dell 構成ガイド

Dell Networking Force10 スイッチと Microsoft ネットワーク負荷分散
Huawei デバイスを NLB クラスターに接続する例 (マルチインターフェイス ARP の使用)
D-Link マルチキャスト モードの D-Link レイヤー 3 スイッチ Microsoft NLB の構成方法の例
Avaya Microsoft ネットワーク負荷分散のテクニカル構成ガイド (ダウンロード)
H3C 05-レイヤ 3 - IP サービス構成ガイド

 

マルチキャスト モードで仮想環境を構成する

仮想環境では、ネットワーク スイッチはハイパーバイザー ホスト サーバーに接続します。 高可用性の仮想環境では、ハイパーバイザー ホストのグループが仮想マシンのグループをサポートします。 個々の仮想マシンは、いずれかのハイパーバイザー ホストに存在し、特定の状況下で別のハイパーバイザー ホストに移行することがあります。 ネットワーク トラフィックは、仮想マシンが実行しているハイパーバイザー ホストに関係なく、正しい仮想マシンに到達できる必要があります。

このような環境でマルチキャスト モードを使用するには、ハイパーバイザー ホストに接続する各ポートが静的エントリを使用して NLB マルチキャスト MAC アドレスにマップされるように、ネットワーク スイッチの MAC アドレス テーブルを構成する必要があります。 たとえば、8 つのハイパーバイザー ホストを含む環境があるとします。 各ハイパーバイザー ホストには 2 つのネットワーク アダプターがあり、すべてのアダプターがスイッチに接続されます。 スイッチの MAC アドレス テーブルには、各ポートを NLB マルチキャスト MAC アドレスにマップする静的エントリが必要です。

IGMP マルチキャスト

IGMP マルチキャストを使用するには、ネットワーク スイッチが IGMP スヌーピングに対応している必要があります。

このモードは基本的にマルチキャスト モードと同じですが、スイッチがこのモードで MAC アドレス テーブルを自動的に構築できる点が異なります。 

IGMP マルチキャストを有効にすると、NLB ノードは IGMP の参加メッセージを 239.255. x.y マルチキャスト アドレスに送信します (このアドレスでは、x.y は NLB VIP の最後の 2 オクテットを表します)。 たとえば、NLB VIP が 10.0.0.1 の場合、IGMP の参加メッセージのマルチキャスト アドレスは 239.244.0.1 です。 これらのメッセージは、NLB ノードのグループ メンバーシップを示します。 スイッチはこの情報を使用して MAC アドレス テーブルを構成します。 詳細については、KB 283028、ネットワーク負荷分散の IGMP サポートを参照してください。

マルチキャスト」セクションに記載されている記事の一部に、IGMP を使用したマルチキャスト デバイスの正しい設定パラメータが含まれています。 機器がこのモードをサポートできることを確認するには、ハードウェアの製造元に問い合わせてください。

NLB 操作モードの構成

NLB の観点からみると、構成は簡単です。 ロールをインストールし、コンソールを開き、負荷分散クラスターを作成し、ノードを選択し、NLB モードを設定してから、ポートとアフィニティを設定します。

NLB クラスター操作モードを構成するには、次の手順を実行します。

  1. サーバー マネージャーで、[管理ツール] を選択し、[ネットワーク負荷分散マネージャー] を選択します。

  2. NLB マネージャーにクラスターが表示されていない場合は、クラスターに接続します。

  3. クラスターを右クリックし、[クラスターのプロパティ] を選択します。

  4. [クラスターパラメータ] タブで、[クラスター操作モード] の [ユニキャスト] または [マルチキャスト] を選択します。 必要に応じて、[IGMP マルチキャスト] チェック ボックスを選択し、インターネット グループ管理プロトコル (IGMP) サポートを有効にすることもできます。

NLB の MAC アドレス (NLB モードによって異なります) を構成するための最も重要なツールは NLB IP2MAC です。 このツールは、NLB がインストールされているすべてのコンピューターで使用でき、非常に使いやすいです。 ツールを起動するには、コマンド プロンプト ウィンドウを開き、次のコマンドを実行します。

NLB IP2MAC <VIP of NLB>

NLB IP2MAC ツールから、指定したクラスター IP の MAC アドレスの一覧が生成されます

スクリーンショットに示すように、このコマンドを使用すると、各モードの MAC アドレスを簡単に取得できます。 別の方法として、次のガイドラインを考慮しながら、計算を行うことができます (数字はスクリーンショットの赤い数字に対応しています)。

  1. ユニキャスト モードでは、MAC アドレスは 02-BF として開始します。 この後に、VIP アドレスの各オクテットを表す一連の 16 進数コードが続きます。
  2. マルチキャスト モードでは、MAC アドレスは 03-BF として開始します。 繰り返しになりますが、この後に VIP アドレスの各オクテットを表す一連の 16 進数コードが続きます。
  3. IGMP モードを使用したマルチキャストでは、MAC アドレスは 01-00-5E-7F として開始します。 アドレスの最後の 2 つの部分は、VIP アドレスの最後の 2 つのオクテットです。

NLB を展開および保守する方法の詳細については、次のリソースを参照してください。