内容

概要

前提条件

背景説明

設定

トラブルシュート

関連情報

概要

このドキュメントでは、Catalyst 9000シリーズスイッチのIGMP機能がMicrosoft Network Load Balancer(NLB)展開でどのように動作するかについて説明します。

前提条件

要件

次の項目に関する知識があることが推奨されます。

- Microsoft NLB操作モード

- IGMPマルチキャスト

使用するコンポーネント

このドキュメントの情報は、次のソフトウェアとハードウェアのバージョンに基づいています。

- Catalyst 9200

- Catalyst 9300

- Catalyst 9400

- Catalyst 9500

- Catalyst 9600

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな（デフォルト）設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。

背景説明

NLBは、すべてのWindows 2000 ServerおよびWindows 2003 Serverファミリシステムで使用できるクラスタテクノロジーです。これは、クラスタ全体の宛先 IP アドレスとしてすべてのクライアントに単一の仮想 IP アドレスを提供します。

NLBは、一連のサーバにクライアント要求を分散するために使用できます。NLBでは、クライアントに許容可能なパフォーマンスレベルを提供するために、クライアントの負荷が増加するにつれてステートレスアプリケーション（IISベースのWebサーバーなど）をスケールアウトするために追加のサーバーを追加する機能を提供しています。また、サーバの誤動作によるダウンタイムも短縮されます。

次の 3 つのモードのいずれかで動作するように NLB を設定できます。

- ユニキャスト モード

- マルチキャスト モード

- インターネット グループ管理プロトコル（IGMP）モード

ヒント：ユニキャストモードとマルチキャストモードの導入では、ドキュメント『Microsoft Network Load Balancing用のCatalystスイッチの設定例』で説明されている設定と検証が同じです

このドキュメントでは、Internet Group Management Protocol(IGMP)モードを中心に説明します。

ベスト プラクティス

Catalyst 9000シリーズスイッチは、スヌーピングテーブルにデータを入力するために、IGMPパケットのレイヤ3ヘッダーをスヌーピングします。スタティックマルチキャストMACを使用してスイッチでNLBを設定する必要があるため、IGMPスヌーピングテーブルにデータが入力されず、宛先VLANでフラッディングが発生します。つまり、NLBサーバがIGMPモードの場合、Catalyst 9000のIGMPスヌーピングでは、マルチキャストフラッドが自動的には抑止されません（Catalyst 9000の転送は、マルチキャストMACアドレスではなくマルチキャストIPに基づいて行われます）。

注:Catalyst 9000では、フラッディングはNLBの3つのモードすべてで発生します。パケットの宛先がデフォルトゲートウェイである必要があるため、ユーザVLANではフラッディングは発生しません。フラッドが発生するのは、宛先VLANへのヘッダーの書き換え後だけです。

そのため、導入を成功させるために次のベストプラクティスを検討してください。

- 専用VLANを使用して、フラッディングをNLBクラスタだけに制限します。

- スタティックMACエントリを使用して、NLB VLAN内でフラッディングが発生するポートを制限します。

IGMP モード

このモードでは、NLBクラスタの仮想MACアドレスはInternet Assigned Numbers Authority(IANA)の範囲内にあり、0100.5exx.xxxxで始まります。「 IGMP Snooping スイッチに設定された機能は、クラスタの仮想マルチキャストMACアドレスをMACアドレステーブルにプログラムしません。このダイナミックプログラミングがないため、スイッチがNLBクラスタから受信したマルチキャストトラフィックは、同じVLANのすべてのポートメンバーにフラッディングされます。Cisco Bug ID CSCvw18989。

NLBサーバがユーザとは異なるVLANに存在するトポロジの場合、クラスタの仮想IPアドレスはマルチキャストMACアドレスを使用するため、ローカルサブネットの外部からは到達できません。これを解決するには、クラスタVLAN内にレイヤ3インターフェイスを持つ各デバイスにスタティックARPエントリを設定する必要があります。

Catalyst 9000シリーズスイッチのIGMPスヌーピング機能は、マルチキャストMACアドレスを転送に使用しません。これらはマルチキャストIPアドレスを使用するため、他のレガシープラットフォーム（Catalyst 6000シリーズなど）とは異なり、マルチキャストMACアドレスをMACテーブルに自動的にプログラムできません。すべての新しいプラットフォームは、マルチキャストIPアドレス転送方式を使用して、レガシースイッチで見られるアドレスの重複の問題を回避します。

注：イーサネットマルチキャストMACアドレスには、オーバーラップする部分があります。同じMACアドレスが32の異なるマルチキャストグループに割り当てられています。イーサネットセグメント上のあるユーザがマルチキャストグループ225.1.1.1に加入し、別のユーザが230.1.1.1に加入している場合、両方のユーザが両方のマルチキャストストリームを受信します（MACアドレスは同じ01-00-5e-01-01-01）。LANセグメント上のマルチキャストネットワークを設計する際には、このオーバーラップを特に監視し、問題を回避するように設計する必要があります。

設定

同じVLAN内の送信元と宛先

ネットワーク図

このセクションでは、クラスタとユーザが同じVLANにある場合にNLBを設定する方法について説明します。

1. NLB VLANが作成されていることを確認します。フラッドが原因で、NLBトラフィック専用のVLANを設定することを推奨します。

C9300-01#show vlan id 10

VLAN Name                             Status    Ports

---- -------------------------------- --------- -------------------------------

10   NLB                              active    Te1/0/1, Te1/0/2, Te1/0/3

VLAN Type  SAID       MTU   Parent RingNo BridgeNo Stp  BrdgMode Trans1 Trans2

---- ----- ---------- ----- ------ ------ -------- ---- -------- ------ ------

10   enet  100010     1500  -      -      -        -    -        0      0

Remote SPAN VLAN

----------------

Disabled

Primary Secondary Type              Ports

------- --------- ----------------- ------------------------------------------

2.CこのNLBトラフィックを取得する必要があるポートのスタティックMACアドレスエントリを設定します。このコマンドには、NLB VLANのNLBクラスタへのパス内のすべてのトランクポートまたはアクセスポートを含める必要があります。この図では、Tengig1/0/2経由でNLBに向かうパスは1つだけです。

C9300-01(config)#mac address-table static 0100.5e01.0155 vlan 10 interface TenGigabitEthernet 1/0/2

C9300-01#show run | in mac

mac address-table static 0100.5e01.0155 vlan 10 interface TenGigabitEthernet1/0/2

注：スタティックMACアドレスエントリには、必要な数のマッピングポートを含めることができます。このポートマップにより、NLBのVLAN内で予想されるフラッディングが減少します。この例では、スタティックMACエントリにより、NLBクラスタへのトラフィックがTe1/0/3からフラッディングされるのを回避できます。

異なるVLANの送信元と宛先

ネットワーク図

このセクションでは、クラスタとユーザが異なるVLANにある場合にNLBを設定する方法について説明します。

1. NLB VLANとIPアドレスをNLBクラスタのデフォルトゲートウェイとして設定します。

C9300-01#show vlan id 10

VLAN Name                             Status    Ports

---- -------------------------------- --------- -------------------------------

10   NLB                              active    Te1/0/2, Te1/0/3

VLAN Type  SAID       MTU   Parent RingNo BridgeNo Stp  BrdgMode Trans1 Trans2

---- ----- ---------- ----- ------ ------ -------- ---- -------- ------ ------

10   enet  100010     1500  -      -      -        -    -        0      0

Remote SPAN VLAN

----------------

Disabled

Primary Secondary Type              Ports

------- --------- ----------------- ------------------------------------------

C9300-01#show run interface vlan 10

Building configuration...

Current configuration : 59 bytes

!

interface Vlan10

ip address 10.1.1.1 255.255.255.0

end

2. NLBクラスターサーバーの仮想IPアドレスの静的ARPエントリを構成します。スタティックARPは、クラスタVLAN内にスイッチ仮想インターフェイス(SVI)を持つすべてのレイヤ3デバイスで設定する必要があります。スタティックARPの目的は、ルーティングされたパケットをNLB VLANに送信するために必要な書き換え情報をスイッチが持てるようにすることです。

C9300-01(config)#arp 10.1.1.85 0100.5e01.0155 arpa

3.アクセスレイヤで作成されたユーザVLANとそのデフォルトゲートウェイを確認します。両側でデフォルトゲートウェイを設定することが重要です。（NLBクラスタおよびユーザー）。

C9300-01#show vlan id 11

VLAN Name                             Status    Ports

---- -------------------------------- --------- -------------------------------

11   Users2                           active    Te1/0/1, Te1/0/4

VLAN Type  SAID       MTU   Parent RingNo BridgeNo Stp  BrdgMode Trans1 Trans2

---- ----- ---------- ----- ------ ------ -------- ---- -------- ------ ------

11   enet  100011     1500  -      -      -        -    -        0      0

Remote SPAN VLAN

----------------

Disabled

Primary Secondary Type              Ports

------- --------- ----------------- ------------------------------------------

C9300-01#show run interface vlan 11

Building configuration...

Current configuration : 59 bytes

!

interface Vlan11

ip address 172.16.1.1 255.255.255.0

end

注：宛先MACが出力SVIで学習されないMACヘッダーの書き換え後にルーティングされるパケットは、対応するVLANにフラッディングされます。フラッドを軽減するには、NLBサーバ専用のゲートウェイと個別のVLANを作成する必要があります。NLBトラフィック専用のVLANを設定しない場合は、NLBトラフィックを受信する必要があるポートのスタティックMACアドレスエントリ、つまりmac address-table static 0100.5exx.xxxx vlan # interface interface_nameを設定できます

トラブルシュート

1.トラフィックをNLBに転送する必要があるすべての宛先ポートにスタティックMACアドレスが設定されているかどうかを確認します。

C9300-01#show mac address multicast

Vlan Mac Address Type Ports

---- ----------- ---- -----

10 0100.5e01.0155 USER Te1/0/2

2. NLBクラスターがクライアントとは異なるサブネットにある展開では、NLBサーバーの仮想IPをマルチキャストMACアドレスにマップする静的ARPエントリが存在するかどうかを確認してください。

C9300-01#show run | in arp

arp 10.1.1.85 0100.5e01.0155 ARPA

C9300-01#show ip arp

Protocol Address Age (min) Hardware Addr Type Interface

Internet 10.1.1.1 - c4c6.0309.cf46 ARPA Vlan10

Internet 10.1.1.85 - 0100.5e01.0155 ARPA

Internet 172.16.1.1 - c4c6.0309.cf54 ARPA Vlan11

3.あまり使用されていないサイズでNLBサーバーIPにpingを実行します。ポートのコントローラをクリアし、サイズがあまり使用されていないコマンドを複数回繰り返して確認します。

C9300-01#show controllers ethernet-controller Te1/0/2 | in 1024

0 1024 to 1518 byte frames 0 1024 to 1518 byte frames

C9300-01#clear controllers ethernet-controller Te1/0/2

HOST#ping 10.1.1.85 time 0 rep 1000 size 1024

Type escape sequence to abort.

Sending 1000, 1024-byte ICMP Echos to 10.1.1.85, timeout is 0 seconds:

......................................................................

......................................................................

......................................................................

......................................................................

......................................................................

......................................................................

......................................................................

......................................................................

......................................................................

......................................................................

......................................................................

......................................................................

......................................................................

......................................................................

....................

Success rate is 0 percent (0/1000)

4. pingが宛先ポートから正しく転送されているかどうか、および同じpingテストが他のポートにフラッディングされているかどうかを確認します。別のインターフェイスで同じcontrollers countersコマンドを使用して、これを確認します。

C9300-01#show controllers ethernet-controller Te1/0/1 | in 1024 <-- Ingress Host port

0 1024 to 1518 byte frames 1000 1024 to 1518 byte frames

C9300-01#show controllers ethernet-controller Te1/0/2 | in 1024 <-- Egress port to NLB

1000 1024 to 1518 byte frames 0 1024 to 1518 byte frames

5. EPCの場合は入力ポートで、SPANの場合は出力ポートでパケットキャプチャを取得し、スイッチがデータを転送しているかどうかを確認します。

C9300-01#monitor capture tac buffer size 10 match any interface Te1/0/1 in

C9300-01#monitor capture tac start

C9300-01#monitor capture tac stop

C9300-01#monitor capture tac export location flash:DataTraffic.pcap

ヒント：組み込みパケットキャプチャ(EPC)機能は、パケットがレイヤ2の入力方向または出力方向で転送される場合に信頼性があります。ただし、トラフィックがスイッチによってルーティングされてから出力ポートに転送される場合、EPCは信頼できません。レイヤ3ルーティングが発生した後に出力のパケットをキャプチャするには、スイッチポートアナライザ(SPAN)機能を使用します。

C9300-01(config)#monitor session 1 source interface Te1/0/2 tx

C9300-01(config)#monitor session 1 destination interface Te1/0/3 encapsulation replicate

C9300-01#show monitor session all

Session 1

---------

Type : Local Session

Source Ports :

TX Only : Te1/0/2

Destination Ports : Te1/0/3

Encapsulation : Replicate

Ingress : Disabled

関連情報

- Catalyst スイッチの Microsoft Network Load Balancing 用の設定例

- シスコテクニカルサポートおよびダウンロード