---
title: "Microsoft NLB VMware代替ソリューション：マルチキャストとユニキャストの問題を解決"
canonical: "https://safekit.eviden.com/ja/best-practises/microsoft-nlb-vmware-multicast-unicast-alternative/"
description: "VMware 環境でMicrosoft NLB のマルチキャストまたはユニキャストに問題がありますか？ SafeKitシンプルな代替手段として SAN レスのfarmクラスタを提案します。静的 ARP エントリ、MAC スプーフィング、または特別なネットワーク構成なしで、 WindowsおよびLinuxで自動ロードバランシングとフェイルオーバーを実現します。"
category: "best-practises"
lang: "ja"
topics: "Microsoft NLBマルチキャストモード, Microsoft NLBユニキャストモード, SafeKitの代替品, farm モードの SafeKit クラスターは、Windows とどのように連携しますか？"
---

# Microsoft NLB VMware 代替案: マルチキャストとユニキャストの問題が解決されました {#microsoft-nlb-vmware-alternative-multicast-and-unicast-issues-solved}

## Microsoft NLBマルチキャストモード {#microsoft-nlb-multicast-mode}

ネットワーク負荷分散（NLB）マルチキャストモード構成に関するVMwareのナレッジベース（ [ ）で説明されているように、クラスタに接続する各ポートについて、スイッチまたはルータで静的ARP解決を手動で構成する必要があります。未知のネットワーク環境でNLBマルチキャストモードMicrosoft ](<https://knowledge.broadcom.com/external/article?articleNumber=414968>) ）を展開することは、複雑で骨の折れる作業になる可能性があります。

## Microsoft NLBユニキャストモード {#microsoft-nlb-unicast-mode}

Microsoft NLB ユニキャスト モードでは、ESXi/ESX ホストが仮想マシンの電源が入っているときに RARP パケットを送信しないように構成する必要があります。そのため、 [ Microsoft NLB は VMware ](<https://knowledge.broadcom.com/external/article/344421/microsoft-nlb-not-working-properly-in-un.html>)のユニキャスト モードでは正しく動作しません。

## SafeKitの代替品 {#alternative-with-safekit}

[ SafeKit ](<https://safekit.eviden.com/ja/best-practises/how-a-virtual-ip-address-works/>) IPアドレス構成は、特別なネットワーク構成を必要とせず、ネットワーク負荷分散はあらゆる環境で実行できます。これは、未知のスイッチやルーター、物理サーバーや仮想サーバーなど、未知のインフラストラクチャにソリューションをデプロイする必要がある場合に重要な機能です。

## <span class="notranslate farm-term" translate="no">farm</span> モードの SafeKit クラスターは、Windows とどのように連携しますか？ {#safekit-farm-cluster}

### <span class="notranslate farm-term" translate="no">farm</span> モードクラスターの仮想 IP アドレス {#virtual-ip-address-farm}

![SafeKit クラスターによる Windowsネットワーク負荷分散とフェイルオーバーの実装方法](https://safekit.eviden.com/wp-content/uploads/2023/02/safekit-up-up-up-300.png "w:300")

前の図では、Windows アプリケーションが 3 台のサーバーで実行されています（3 は例であり、2 台以上でもかまいません）。ユーザーは仮想 IP アドレスに接続されています。

[仮想 IP アドレスは](https://safekit.eviden.com/ja/best-practises/how-a-virtual-ip-address-works/)、<span class="notranslate farm-term" translate="no">farm</span> モードクラスター内の各サーバーにローカルに設定されます。  
仮想 IP アドレスへの入力トラフィックは、すべてのサーバーによって受信され、各サーバーのカーネル内のネットワークフィルターによってサーバー間で分割されます。

SafeKit は、ハードウェアおよびソフトウェアの障害を検出し、障害発生時にネットワークフィルタを再構成し、設定可能なアプリケーションチェッカーとリカバリスクリプトを提供します。

### ネットワークフィルタにおける負荷分散 {#network-load-balancing}

ネットワークフィルタ内のネットワーク負荷分散アルゴリズムは、クライアントパケットの ID（クライアント IP アドレス、クライアント TCP ポート）に基づいています。クライアントパケット入力の ID に応じて、サーバー内の 1 つのフィルタのみがパケットを受け入れ、他のサーバー内の他のフィルタはそれを拒否します。

サーバー上のフィルターによってパケットが受け入れられると、クライアントの要求に応答する Windows アプリケーションによって、このサーバーの CPU とメモリのみが使用されます。出力メッセージは、アプリケーションサーバーからクライアントに直接送信されます。

サーバーに障害が発生した場合、<span class="notranslate farm-term" translate="no">farm</span> ハートビートプロトコルはネットワーク負荷分散クラスター内のフィルターを再構成し、残りの使用可能なサーバーへのトラフィックを再調整します。

### ステートフルアプリケーションまたはステートレスアプリケーション {#stateful-stateless}

ステートフルな Windows では、セッションアフィニティが適用されます。同じクライアントは、サーバー上のコンテキストを取得するために、複数の TCP セッションで同じサーバーに接続する必要があります。この場合、SafeKit ロードバランシングルールはクライアントの IP アドレスに設定されます。したがって、同じクライアントは常に複数の TCP セッションで同じサーバーに接続されます。そして、異なるクライアントは <span class="notranslate farm-term" translate="no">farm</span> 内の異なるサーバーに分散されます。

ステートレスな Windows アプリケーションでは、セッションアフィニティはありません。同じクライアントが、複数の TCP セッションで <span class="notranslate farm-term" translate="no">farm</span> 内の異なるサーバーに接続される可能性があります。あるセッションから別のセッションへのコンテキストは、サーバー上にローカルに保存されません。この場合、SafeKit ロードバランシングルールは、TCP クライアントセッション ID で構成されます。この構成は、サーバー間でセッションを分散するのに最適ですが、セッションアフィニティのない TCP サービスが必要です。

### Windows 向けに <span class="notranslate farm-term" translate="no">farm</span> モードで SafeKit クラスターを構成する方法 {#safekit-farm-cluster-configuration}

![SafeKit Web Console: Windowsネットワーク負荷分散と仮想 IP 管理のためのクラスター構成。](https://safekit.eviden.com/wp-content/uploads/2026/01/safekit-farm-cluster-config.png "w:966")

**<span class="notranslate farm-term" translate="no">farm</span> モードの SafeKit クラスターは**、サービスの高可用性とスケーラビリティを目的として設計されています。この構成では、両方のノードに同時に着信するトラフィックを分散することに重点を置いています

  * **ロードバランシングサービス（マクロタブ）：** すべてのノードでアクティブに保つ特定のアプリケーションサービス（例：Apache、IIS、Nginx）を定義します。
  * **ハートビートネットワーク：** ノードが <span class="notranslate farm-term" translate="no">farm</span> から離脱したかどうかを検出するために使用される通信パスで、負荷の即時再分配をトリガーします。
  * **仮想 IP（<span class="notranslate farm-term" translate="no">Farm</span> VIP）：** mirror クラスターとは異なり、<span class="notranslate farm-term" translate="no">Farm</span> VIP はカーネルフィルタリングアルゴリズムを使用してネットワークトラフィックを分散し、ノード間で共有されます。
  * **ロードバランシングルール：** 送信元 IP アドレスまたはポートに基づいてトラフィック分散ポリシーを定義します。
  * **チェッカー：** アプリケーションの正常性を監視し、プロセスの障害が検出された場合は自動再起動をトリガーします。

### Windows の <span class="notranslate farm-term" translate="no">farm</span> モードで SafeKit クラスターを監視する方法は？ {#safekit-farm-cluster-monitoring}

![SafeKit コンソール：2 ノードのファームモードクラスターを監視。両方の Windows ノードが UP 状態で、アクティブなロードバランシングが有効になっていることを示しています。](https://safekit.eviden.com/wp-content/uploads/2026/01/safekit-farm-cluster-monitor.png "w:473")

<span class="notranslate farm-term" translate="no">farm</span> モードでクラスターを監視すると、インフラストラクチャの**アクティブ/アクティブな**性質を可視化できます。このモードでは、すべてのノードがアプリケーションのパフォーマンスに貢献します（この例では 2 つのノードが表示されます）

  * **UP 状態 (2 ノードで 50%):** 正常な <span class="notranslate farm-term" translate="no">farm</span> では、両方のノードが「UP」(50%)状態にあり、共有仮想 IP を介してクライアント要求をアクティブに受信および処理していることを意味します。
  * **自動リバランス：** 1 つのノードに障害が発生した場合、コンソールには残りのノードがトラフィックの 100% を引き受けていることが視覚的に表示されます。生き残ったノードはすでにアクティブであるため、「フェイルオーバー」による遅延はありません（数秒の検出時間を除く）。
  * **ノード挿入：** 修復されたノードが再起動すると、「STOP」から「UP」に移行し、管理者の介入なしに自動的に負荷の一部を受信し始めます。
  * **データ同期なし：**<span class="notranslate farm-term" translate="no">farm</span> モードクラスターでは、ノードはステートレスであるか、バックエンドデータベースを共有することが想定されているため、「オレンジ」の再同期状態はありません (バックエンドデータベースは mirror クラスターで個別に保護できます)。

シンプルなステータスアイコンに加え、このインターフェースはワンクリックのノード管理を提供します。計画的なメンテナンスのためにノードを手動で停止または開始できる一方で、共有仮想 IP はユーザーの活動を中断することなく自動的にトラフィックを再分配します。

