MLD Snooping


1 機能概要

MLD Snoopingは、IPv6のVLAN環境において余分なマルチキャストのフラッディングを制御することで、ネットワークの帯域幅の消費を抑える機能です。
L2スイッチでは、マルチキャストパケットはVLAN単位で配送されるため、VLAN内に1つでもマルチキャストパケットを受信したい端末が存在すると、
同一VLAN内のすべてのポートにパケットが配送されてしまいます。

MLD Snooping機能を使用すると、受信端末とマルチキャストルーター間で交換されるMLDメッセージを監視 (Snooping) することで、
マルチキャストパケットを受信したい端末が接続されたポートのみに該当グループのパケットを配信することができます。


2 用語の定義

MLD (Multicast Listener Discovery)

IPv6でマルチキャストグループを制御するためのプロトコル(ICMPv6のサブプロトコル)。
マルチキャストルーターはLAN上のどのホストがマルチキャストグループのメンバーであるか判断でき、ホストは自分がどのマルチキャストグループのメンバーかを伝えることができます。
2つのバージョンがあり、 MLDv1 (RFC2710)MLDv2 (RFC3810) で規定されます。

マルチキャストルーターポート

マルチキャストルーターが接続されているLAN/SFPポートのこと。
MLDジェネラルクエリーを受信したLAN/SFPポートをマルチキャストルーターポートとして自動で学習します。

MLDレポート抑制機能

マルチキャストルーターとホスト間で行われる通信負荷をL2スイッチで抑制する機能。
抑制するために本製品がまとめるメッセージは、以下となります。

レポート抑制機能は、MLDv1/v2に対して動作します。

MLD Fast Leave (高速脱退) 機能

MLDv1 DoneメッセージおよびMLDv2のReport(離脱)メッセージを受信したLAN/SFPポートを即座にマルチキャスト受信ポートから外す(転送に必要なFDBエントリーを削除する)機能。
本来、MLDの離脱処理では、MLDv1 DoneメッセージおよびMLDv2 Report(離脱)メッセージを受信した際、グループスペシフィッククエリーを送信し、レシーバーの存在確認が行われますが、
高速脱退機能が 有効 な場合、本動作を行いません。
このため、高速脱退機能は LAN/SFPポート配下に1つのレシーバーが接続されている場合にのみ効果的な機能 です。

MLD クエリー送信機能 (MLD Querier)

MLD ジェネラルクエリー、スペシフィッククエリーを送信する機能。
マルチキャストルーターがいない環境でMLD Snoopingを機能させる場合に使用します。


3 機能詳細

MLD Snoopingの動作仕様について以下に示します。

  1. 本製品は、 MLD v1/v2 に対応したSnooping機能を提供します。
    本製品で機能させる上位バージョンを mld snooping versionコマンド で設定できます。
    バージョン設定は VLANインターフェース に対して行い、初期設定は v2 となっています。
    設定バージョンと受信フレームのバージョンの違いによる動作は以下となります。
  2. MLD Snoopingの 有効 / 無効 設定は、 VLANインターフェース に対して行います。
    デフォルトVLAN (VLAN #1)に対する初期設定、VLAN 生成後の初期設定どちらも 有効 となっています。

  3. MLD Snoopingの機能として、以下の4つに対応します。
  4. MLD Snoopingが 有効 に設定されているVLANインターフェースでは、 マルチキャストルーターポート自動で学習 しますが、
    mld snooping mrouter interface コマンドで静的に設定することもできます。
    なお、VLANインターフェースに設定されているマルチキャストルーターポートは、show mld snooping mrouterコマンドで確認します。

  5. MLD Snoopingが 有効 に設定されているVLANインターフェースでは、 MLDレポート抑制機能 が自動で 有効 となります。
    MLDレポート抑制機能を 無効 にすることはできません。
    レポート抑制機能により、MLDレポート、MLD Doneメッセージを送信する場合、送信元IPv6アドレスには、VLANインターフェースに割り振られているIPv6リンクローカルアドレスを使用します。
    (割り振られていない場合は、::を設定して送信します。)

  6. MLD Fast-Leave(高速脱退)機能 は、VLANインターフェースに対して mld snooping fast-leaveコマンド で設定します。
    デフォルトVLAN (VLAN #1)に対する初期設定、VLAN 生成後の初期設定どちらも 無効 となっています。

  7. マルチキャストルーターが存在しない環境でMLD Snoopingを使用するために、 MLD クエリー送信機能 に対応します。
    MLD クエリー送信機能は、以下の2つのパラメータで制御します。
  8. VLAN内に複数の機器がクエリーを送信する場合、VLAN内で最も小さいIPv6アドレスを持つ機器がクエリー送信を行います。
    本製品は、自身のIPv6アドレスより小さなIPv6アドレスを持つ機器からのクエリーを受信した場合、クエリー送信機能を停止します。
    なお、クエリー送信時に設定する送信元IPv6アドレスは、VLANインターフェースに割り振られているIPv6リンクローカルアドレスを使用しますが、
    割り振られていない場合は、他のVLANインターフェースに割り振られているIPv6リンクローカルアドレスを使用します。
    (すべてのVLANインターフェースにIPv6リンクローカルアドレスが割り当てられていない場合は、送信されません。)


4 関連コマンド

関連コマンドについて、以下に示します。
コマンドの詳細は、コマンドリファレンスを参照願います。



5 コマンド実行例

5.1 MLD Snooping の設定(マルチキャストルーターあり)

マルチキャストルーターがある環境でMLD Snooping機能を有効にして、マルチキャストグループに参加している
PC1、PC3にのみデータが配信されるようにします。


  1. VLAN #10 を定義して、MLD Snoopingの設定を行います。
    Yamaha(config)# vlan database
    Yamaha(config-vlan)#vlan 10                    ... (VLAN #10 の定義)
    Yamaha(config-vlan)#exit
    Yamaha(config)#interface vlan10
    Yamaha(config-if)#ipv6 enable                  ... (VLAN #10 のIPv6機能を有効にする)
    Yamaha(config-if)#ipv6 mld snooping            ... (VLAN #10 のMLD Snoopingを有効にする)
    Yamaha(config-if)#no ipv6 mld snooping querier ... (VLAN #10 のMLD クエリー送信機能を無効にする)
    Yamaha(config-if)#ipv6 mld snooping fast-leave ... (VLAN #10 のMLD Fast-leave機能を有効にする)
    
  2. LANポート #1 ~ #4 を アクセスポートに設定し、VLAN #10 に所属させます。
    Yamaha(config)# interface port1.1
    Yamaha(config-if)# switchport mode access
    Yamaha(config-if)# switchport access vlan 10
    (上記設定をLANポート #2 ~ #4に対しても行います。)
    
  3. マルチキャストルーターポートの情報を確認します。(LANポート #1 につながっている)
    Yamaha#show ipv6 mld snooping mrouter vlan10
    VLAN    Interface             IP-address    Expires
    10      port1.1(dynamic)         fe80::2a0:deff:feae:b879        00:00:43
    
  4. マルチキャスト受信者の情報を確認します。
    Yamaha#show ipv6 mld snooping groups
    MLD Connected Group Membership
    Vlan   Group Address                           Interface            Uptime   Expires  Last Reporter
    10     ff15::1                                 port1.2              00:00:13 00:00:41 fe80::a00:27ff:fe8b:87e2
    10     ff15::1                                 port1.4              00:00:02 00:00:48 fe80::a00:27ff:fe8b:87e4
    


5.2 MLD Snooping の設定(マルチキャストルーターなし)

マルチキャストルーターがいない環境でMLD Snooping機能を有効にして、マルチキャストグループに参加している
PC1、PC3にのみデータが配信されるようにします。


  1. [スイッチ#A] VLAN #10 を定義して、MLD Snoopingの設定を行います。
    Yamaha(config)# vlan database
    Yamaha(config-vlan)#vlan 10                           ... (VLAN #10 の定義)
    Yamaha(config-vlan)#exit
    Yamaha(config)#interface vlan10
    Yamaha(config-if)#ipv6 enable                         ... (VLAN #10 のIPv6機能を有効にする)
    Yamaha(config-if)#ipv6 mld snooping                   ... (VLAN #10 のMLD Snoopingを有効にする)
    Yamaha(config-if)#ipv6 mld snooping querier           ... (VLAN #10 のMLD クエリー送信機能を有効にする)
    Yamaha(config-if)#ipv6 mld snooping query-interval 20 ... (VLAN #10 のMLD クエリーの送信間隔を20秒にする)
    
  2. [スイッチ#A] LANポート #1 ~ #2 を アクセスポートに設定し、VLAN #10 に所属させます。
    Yamaha(config)# interface port1.1
    Yamaha(config-if)# switchport mode access
    Yamaha(config-if)# switchport access vlan 10
    (上記設定をLANポート #2に対しても行います。)
    
  3. [スイッチ#B] VLAN #10 を定義して、MLD Snoopingの設定を行います。
    Yamaha(config)# vlan database
    Yamaha(config-vlan)#vlan 10                       ... (VLAN #10 の定義)
    Yamaha(config-vlan)#exit
    Yamaha(config)#interface vlan10
    Yamaha(config-if)#ipv6 enable                     ... (VLAN #10 のIPv6機能を有効にする)
    Yamaha(config-if)#ipv6 mld snooping               ... (VLAN #10 のMLD Snoopingを有効にする)
    Yamaha(config-if)#no ipv6 mld snooping querier    ... (VLAN #10 のMLD クエリー送信機能をに無効する)
    Yamaha(config-if)#ipv6 mld snooping fast-leave    ... (VLAN #10 のMLD Fast-leave機能を有効にする)
    
  4. [スイッチ#B] LANポート #1 ~ #4 を アクセスポートに設定し、VLAN #10 に所属させます。
    Yamaha(config)# interface port1.1
    Yamaha(config-if)# switchport mode access
    Yamaha(config-if)# switchport access vlan 10
    (上記設定をLANポート #2 ~ #4に対しても行います。)
    
  5. [スイッチ#B] マルチキャストルーターポートの情報を確認します。(LANポート #1 につながっている)
    Yamaha#show ipv6 mld snooping mrouter vlan10
    VLAN    Interface             IP-address    Expires
    10      port1.1(dynamic)         fe80::2a0:deff:feae:b879        00:00:43
    
  6. [スイッチ#B] マルチキャスト受信者の情報を確認します。
    Yamaha#show ipv6 mld snooping groups
    MLD Connected Group Membership
    Vlan   Group Address                           Interface            Uptime   Expires  Last Reporter
    10     ff15::1                                 port1.2              00:00:13 00:00:41 fe80::a00:27ff:fe8b:87e2
    10     ff15::1                                 port1.4              00:00:02 00:00:48 fe80::a00:27ff:fe8b:87e4
    



6 注意事項

未知のマルチキャストフレームの処理を変更したい場合は、l2-unknown-mcastコマンドで行ってください。

スタック機能が有効な場合、MLDスヌーピングは設定にかかわらず 無効 になります。


7 関連文書


トップへ戻る