コンフィグレーションガイド Vol.2


8.4.1 MACアドレスの学習

MLD snoopingが設定されたVLANでMLDメッセージを受信することによってマルチキャストMACアドレスをダイナミックに学習します。学習したマルチキャストMACアドレスはMACアドレステーブルに登録します。

〈この項の構成〉

(1) エントリの登録

次に示すMLDメッセージを受信すると,メッセージに含まれるグループアドレスからマルチキャストMACアドレスを学習し,受信したポートにだけマルチキャストグループ宛てのトラフィックを中継するエントリを作成します。以降,これらのメッセージをMLD Report(参加要求)メッセージと呼びます。

IPv6マルチキャストパケットの宛先MACアドレスはIPv6アドレスの下位32ビットをMACアドレスにコピーして生成します。IPv6マルチキャストアドレスは,マルチキャストグループを識別するグループIDフィールドが112ビット長のフォーマットと,32ビット長のフォーマットの2種類が規定されています。グループIDフィールドが112ビット長のアドレスフォーマットを使用する場合は,IPv4マルチキャストアドレスと同様にMACアドレスの重複が発生します。IPv6マルチキャストアドレスとMACアドレスの対応を次の図に示します。

図8‒4 IPv6マルチキャストアドレスとMACアドレスの対応

[図データ]

(2) MLDv1メッセージ受信によるエントリの削除

MLDv1 Doneメッセージを受信すると,受信したポートだけエントリから削除し,このポートへのマルチキャストトラフィックの中継を停止します。VLAN内のすべてのポートにグループメンバが存在しなくなった時点で,エントリを削除します。

(a) MLDクエリア機能設定時の動作

本装置は,MLDv1 Doneメッセージを受信したポートからGroup-Specific Queryメッセージを1秒間隔で2回送信します。応答がない場合にエントリからこのポートだけを削除します。

(b) MLD即時離脱機能設定時の動作

本装置は,MLDv1 Doneメッセージを受信したポートをエントリからすぐに削除します。MLDクエリア機能を設定していても,Group-Specific Queryメッセージは送信しません。

(3) MLDv2メッセージ受信によるエントリの削除

MLDv2 Report(離脱要求)メッセージを受信すると,受信したポートだけエントリから削除し,このポートへのマルチキャストトラフィックの中継を停止します。VLAN内のすべてのポートにグループメンバが存在しなくなった時点で,エントリを削除します。

(a) MLDクエリア機能設定時の動作

本装置は,MLDv2 Report(離脱要求)メッセージを受信したポートからGroup-Specific Queryメッセージを1秒間隔で2回送信します。応答がない場合にエントリからこのポートだけを削除します。

ただし,受信したMLDv2 Report(離脱要求)メッセージのマルチキャストアドレスレコードタイプがBLOCK_OLD_SOURCESの場合,これらの削除処理が実行されるのは,該当するVLANにIPv6マルチキャストを使用していないときだけです。

(b) MLD即時離脱機能設定時の動作

本装置は,マルチキャストアドレスレコードタイプがCHANGE_TO_INCLUDE_MODEのMLDv2 Report(離脱要求)メッセージを受信したポートをエントリからすぐに削除します。

MLDクエリア機能を設定していても,Group-Specific Queryメッセージは送信しません。

(4) エントリのエージング

MLD Report(参加要求)メッセージを受信してから一定時間経過すると,マルチキャストルータは直接接続するインタフェース上にグループメンバが存在するかを確認するため,定期的にMLD Queryメッセージを送信します。本装置はルータからのMLD Queryメッセージを受信した場合,VLAN内の全ポートに中継します。MLD Queryメッセージへの応答であるMLD Report(参加要求)メッセージを受信しない場合,エントリからこのポートだけを削除します。すべてのポートから応答がない場合は,エントリ自体を削除します。

本装置では,ポートへの中継を停止するタイムアウト時間は260秒(コンフィグレーションコマンドipv6 mld query-intervalのデフォルト値から算出)であり,この間にMLD Report(参加要求)メッセージを受信しない場合,該当するポートへの中継を停止します。

次の場合,タイムアウト時間は動的に設定します。

また,次の場合,タイムアウト時間はデフォルト値での運用となります。

注 タイムアウト時間は,Query Interval(QQICフィールドの値)×2+Query Response Intervalで算出します。