この章では、Catalyst 3750スイッチにMulticast Source Discovery Protocol(MSDP)を設定する方法について説明します。MSDPによって、複数のProtocol-Independent Multicast Sparse-Mode(PIM-SM)ドメインが接続されます。
このソフトウェア リリースでは、MSDPと連携して動作するMulticast Border Gateway Protocol(MBGP)がサポートされていないため、MSDPは完全にサポートされていません。ただし、MBGPが動作していない場合、MSDPと連携して動作するデフォルト ピアを作成できます。
この機能を使用するには、スタック マスター上でEnhanced Multilayer Image(EMI;拡張マルチレイヤ ソフトウェア イメージ)が稼働している必要があります。特に明記しないかぎり、 スイッチ という用語はスタンドアロン スイッチおよびスイッチ スタックを意味します。
MSDPの概要
MSDPを使用すると、さまざまなドメイン内のすべてのRendezvous Point(RP;ランデブー ポイント)に、グループのマルチキャスト送信元を通知できます。各PIM-SMドメインでは独自のRPが使用され、他のドメインのRPには依存しません。RPはTransmission Control Protocol(TCP)を通じてMSDPを実行し、他のドメイン内のマルチキャスト送信元を検出します。
PIM-SMドメイン内のRPは、他のドメイン内のMSDP対応デバイスとMSDPピアリング関係にあります。ピアリング関係はTCP接続を通じて発生します。交換されるのは、主にマルチキャスト グループを送信する送信元のリストです。RP間のTCP接続は、基本的なルーティング システムによって実現されます。受信側のRPでは、送信元リストを使用して送信元のパスが確立されます。
このトポロジーの目的は、ドメインから、他のドメイン内のマルチキャスト送信元を検出することです。マルチキャスト送信元がレシーバーのあるドメインを対象としている場合、マルチキャスト データはPIM-SMの通常の送信元ツリー構築メカニズムを通じて配信されます。MSDPは、グループを送信する送信元のアナウンスにも使用されます。これらのアナウンスは、ドメインRPで発信する必要があります。
MSDPのドメイン間動作は、Border Gateway Protocol(BGP)またはMBGPに大きく依存します。ドメイン内のRP(インターネットへのアナウンス対象であるグローバル グループを送信する送信元用のRP)で、MSDPを実行してください。
MSDPの動作
RPピア間で動作するMSDP に、2つのMSDPピア間でのMSDPの動作を示します。PIMでは、ドメインのRPに送信元を登録するための標準メカニズムとして、MSDPが使用されます。MSDPが設定されている場合は、次のシーケンスが発生します。
送信元が最初のマルチキャスト パケットを送信すると、送信元に直接接続された先頭ホップ ルータ( 指定ルータ またはRP)によってRPにPIM Registerメッセージが送信されます。RPはRegisterメッセージを使用し、アクティブな送信元を登録したり、ローカル ドメイン内の共有ツリーの下方向にマルチキャスト パケットを転送します。MSDPが設定されている場合は、Source-Active(SA)メッセージもすべてのMSDPピアに転送されます。送信元、送信元からの送信先であるグループ、およびRPのアドレスまたは発信元ID(RPアドレスとして使用されるインターフェイスのIPアドレス)が設定されている場合は、SAメッセージによってこれらが識別されます。
各MSDPピアはSAメッセージを発信元のRPから受信および転送し、ピアReverse-Path Forwarding(RPF)フラッディングを実現します。MSDPデバイスは、BGPまたはMBGPルーティング テーブルを調べ、どのピアがSAメッセージの発信元RPへのネクスト ホップであるかを検出します。このようなピアは RPFピア と呼ばれます。MSDPデバイスでは、RPFピア以外のすべてのMSDPピアにメッセージが転送されます。BGPおよびMBGPがサポートされていない場合にMSDPを設定する方法については、 デフォルトのMSDPピアの設定 を参照してください。
MSDPピアは、非RPFピアから発信元RPへ向かう同じSAメッセージを受信すると、そのメッセージを廃棄します。それ以外の場合、そのMSDPピアはすべてのMSDPピアにメッセージを転送します。
ドメインのRPはMSDPピアからSAメッセージを受信します。RPにSAメッセージが示すグループに対するJoin要求が含まれ、空でない発信インターフェイス リストに(*,G)エントリが含まれている場合、そのグループはドメインの対象となり、RPから送信元方向に(S,G)Joinメッセージが送信されます。(S,G)Joinメッセージが送信元のDRに到達すると、送信元からリモート ドメイン内のRPへの送信元ツリーのブランチが構築されます。この結果、マルチキャスト トラフィックを送信元から送信元ツリーを経由してRPへ、そしてリモート ドメイン内の共有ツリーを下ってレシーバーへと送信できます。
MSDPの利点
- 共有されたマルチキャスト配信ツリーが分割され、共有ツリーがドメインに対してローカルになるように設定できます。ローカル メンバーはローカル ツリーに加わります。共有ツリーへのJoinメッセージをドメイン外へ送信する必要はありません。
- PIM SMドメインは独自のRPのみを信頼するため、他のドメインのRPに対する信頼度が低下します。このため、送信元の情報がドメイン外部に漏れないようにすることができ、セキュリティが高まります。
- レシーバーのみが配置されているドメインは、グループ メンバーシップをグローバルにアドバタイズしなくても、データを受信できます。
- グローバルな送信元マルチキャスト ルーティング テーブル ステートが不要になり、コストが削減されます。
MSDPの設定
- MSDPのデフォルト設定
- デフォルトのMSDPピアの設定 (必須)
- SAステートのキャッシング (任意)
- MSDPピアからの送信元情報の要求 (任意)
- スイッチから発信される送信元情報の制御 (任意)
- スイッチで転送される送信元情報の制御 (任意)
- スイッチで受信される送信元情報の制御 (任意)
- MSDPメッシュ グループの設定 (任意)
- MSDPピアのシャットダウン (任意)
- MSDPへの境界PIM DM領域の追加 (任意)
- RPアドレス以外の発信元アドレスの設定 (任意)
MSDPのデフォルト設定
MSDPはイネーブルになっていません。デフォルトのMSDPピアはありません。
デフォルトのMSDPピアの設定
このソフトウェア リリースでは、BGPおよびMBGPがサポートされていないため、 ip msdp peer グローバル コンフィギュレーション コマンドを使用して、ローカル スイッチにMSDPピアを設定できません。その代わり、デフォルトのMSDPピアを定義し、そこから送信されるスイッチのすべてのSAメッセージを受信できます(そのためには、 ip msdp default-peer グローバル コンフィギュレーション コマンドを使用します)。デフォルトのMSDPピアは、事前に設定しておく必要があります。スイッチでMSDPピアによるBGPまたはMBGPピアリングが行われない場合は、デフォルトのMSDPピアを設定します。単一のMSDPピアが設定されている場合、スイッチでは常にそのピアからのすべてのSAメッセージが受信されます。
デフォルトのMSDPピア ネットワーク に、デフォルトのMSDPピアを使用できるネットワークを示します。 デフォルトのMSDPピア ネットワーク では、スイッチBを所有するカスタマーが、2つのInternet Service Provider(ISP;インターネット サービス プロバイダー)に接続されています。一方のISPはルータA、もう一方のISPはルータCを所有しています。これらのISP間で、BGPまたはMBGPは動作していません。ISPのドメイン内、または他のドメイン内の送信元を学習するため、カスタマー サイトのスイッチBはルータAをデフォルトのMSDPピアとして識別します。スイッチBはルータAとルータCの両方にSAメッセージをアドバタイズしますが、受信するのはルータAからのSAメッセージ、またはルータCからのSAメッセージだけです。ルータAがコンフィギュレーション ファイルの最初に記述されている場合、ルータAが動作していれば、ルータAが使用されます。ルータAが動作していない場合のみ、スイッチBはルータCからのSAメッセージを受信します。これが、プレフィクス リストがない場合のデフォルトの動作です。
プレフィクス リストを指定すると、ピアはリスト内のプレフィクス専用のデフォルト ピアになります。プレフィクス リストがそれぞれ関連付けられている場合は、複数のアクティブなデフォルト ピアを設定することができます。プレフィクス リストがない場合も、複数のデフォルト ピアを設定できますが、アクティブなデフォルト ピアになるのは最初のピアのみです(このピアにルータが接続されていて、ピアがアクティブの場合に限ります)。最初に設定されたデフォルト ピアに障害が発生した場合、またはこのピアが正常に接続されていない場合は、2番めに設定されているピアがアクティブなデフォルト ピアになります。以下同様に処理されます。
デフォルト ピアを削除するには、 no ip msdp default-peer ip-address | name グローバル コンフィギュレーション コマンドを使用します。
次に、 デフォルトのMSDPピア ネットワーク のルータAおよびルータCの設定の一部を示します。それぞれのISPには、デフォルト ピア(BGPまたはMBGP以外)を使用する複数のカスタマーが存在します( デフォルトのMSDPピア ネットワーク のカスタマーと同様)。この場合、両方のISPで類似した設定となります。つまり、両方のISPでは、対応するプレフィクス リストでSAが許可されている場合、デフォルト ピアからのSAのみが受信されます。
Router(config)# ip msdp default-peer 10.1.1.1
Router(config)# ip msdp default-peer 10.1.1.1 prefix-list site-a
Router(config)# ip prefix-list site-b permit 10.0.0.0/1
Router(config)# ip msdp default-peer 10.1.1.1 prefix-list site-a
Router(config)# ip prefix-list site-b permit 10.0.0.0/1
SAステートのキャッシング
デフォルトでは、スイッチで受信されたSAメッセージ内の送信元とグループのペアは、キャッシュに格納されません。また、MSDP SA情報が転送される場合、この情報はメモリに格納されません。したがって、ローカルRPでSAメッセージが受信された直後にメンバーがグループに参加した場合、次のSAメッセージによって送信元に関する情報が取得されるまでそのメンバーは待機する必要があります。この遅延は参加遅延と呼ばれます。
メモリを消費して送信元情報の遅延を短縮する場合は、SAメッセージをキャッシュに格納するようにスイッチを設定できます。
送信元とグループのペアのキャッシングをイネーブルにするには、イネーブルEXECモードで次の手順を実行します。この手順は任意です。
デフォルト設定(SAステートが作成されていない状態)に戻すには、 no ip msdp cache-sa-state グローバル コンフィギュレーション コマンドを使用します。
次に、グループ224.2.0.0/16への送信元である171.69.0.0/16のすべての送信元のキャッシュ ステートをイネーブルにする例を示します。
Switch(config)# ip msdp cache-sa-state 100
Switch(config)# access-list 100 permit ip 171.69.0.0 0.0.255.255 224.2.0.0 0.0.255.255
MSDPピアからの送信元情報の要求
ローカルRPでは、SA要求を送信し、指定されたグループに対するすべてのアクティブな送信元の要求をすぐに取得できます。デフォルトでは、新しいメンバーがグループに参加してマルチキャスト トラフィックを受信する必要が生じた場合、スイッチはMSDPピアにSA要求メッセージを送信しません。新しいメンバーは次の定期的なSAメッセージを受信する必要があります。
グループへの送信元である接続PIM SMドメイン内のアクティブなマルチキャスト送信元を、グループの新しいメンバーが学習する必要がある場合は、新しいメンバーがグループに参加したときに、指定されたMSDPピアにSA要求メッセージを送信するようにスイッチを設定します。ピアはSAキャッシュ内の情報に応答します。ピアにキャッシュが設定されていない場合、このコマンドを実行しても何も起こりません。この機能を設定すると参加遅延は短縮されますが、メモリが消費されます。
新しいメンバーがグループに参加し、マルチキャスト トラフィックを受信する必要が生じた場合、MSDPピアにSA要求メッセージを送信するようにスイッチを設定するには、イネーブルEXECモードで次の手順を実行します。この手順は任意です。
|
指定されたMSDPピアにSA要求メッセージを送信するように、スイッチを設定します。 ip-address | name を指定する場合は、グループの新しいメンバーがアクティブになるときにローカル スイッチのSAメッセージの要求元になるMSDPピアのIPアドレス、または名前を入力します。 |
||
デフォルト設定に戻すには、 no ip msdp sa-request { ip-address | name }グローバル コンフィギュレーション コマンドを使用します。
次に、171.69.1.1のMSDPピアにSA要求メッセージを送信するように、スイッチを設定する例を示します。
Switch(config)# ip msdp sa-request 171.69.1.1
スイッチから発信される送信元情報の制御
スイッチから発信されるマルチキャスト送信元情報を制御できます。
詳細については、 送信元の再配信 および SA要求メッセージのフィルタリング を参照してください。
送信元の再配信
SAメッセージは、送信元が登録されているRPで発信されます。デフォルトでは、RPに登録されているすべての送信元がアドバタイズされます。送信元が登録されている場合は、RPに Aフラグ が設定されています。このフラグは、フィルタリングされる場合を除き、送信元がSAに格納されてアドバタイズされることを意味します。
フィルタを削除するには、 no ip msdp redistribute グローバル コンフィギュレーション コマンドを使用します。
SA要求メッセージのフィルタリング
デフォルトでは、SA情報をキャッシングしているスイッチのみが、SA要求に応答します。このようなスイッチでは、デフォルトでMSDPピアからのすべてのSA要求メッセージが採用され、アクティブな送信元のIPアドレスが取得されます。
ただし、MSDPピアからのSA要求をすべて無視するように、スイッチを設定できます。標準アクセス リストに記述されたグループのピアからのSA要求メッセージのみを採用することもできます。アクセス リスト内のグループが指定された場合は、そのグループのピアからのSA要求メッセージが受信されます。他のグループのピアからの他のメッセージは、すべて無視されます。
デフォルト設定に戻すには、 no ip msdp filter-sa-request { ip-address | name }グローバル コンフィギュレーション コマンドを使用します。
次に、171.69.2.2のMSDPピアからのSA要求メッセージをフィルタリングするように、スイッチを設定する例を示します。ネットワーク192.4.22.0の送信元からのSA要求メッセージはアクセス リスト1を通過して、受信されます。その他のすべてのメッセージは無視されます。
Switch(config)# ip msdp filter sa-request 171.69.2.2 list 1
Switch(config)# access-list 1 permit 192.4.22.0 0.0.0.255
スイッチで転送される送信元情報の制御
デフォルトでは、スイッチで受信されたすべてのSAメッセージが、すべてのMSDPピアに転送されます。ただし、フィルタリングするか、またはTime To Live(TTL)値を設定し、発信メッセージがピアに転送されないようにすることができます。次のセクションでは、この方法について説明します。
フィルタの使用法
フィルタを削除するには、 no ip msdp sa-filter out { ip-address | name } [ list access-list-number ] [ route-map map-tag ]グローバル コンフィギュレーション コマンドを使用します。
次に、アクセス リスト100を通過する(S,G)ペアのみがSAメッセージに格納され、 switch.cisco.com という名前のピアに転送されるように設定する例を示します。
Switch(config)# ip msdp peer switch.cisco.com connect-source gigabitethernet1/0/1
Switch(config)# ip msdp sa-filter out switch.cisco.com list 100
Switch(config)# access-list 100 permit ip 171.69.0.0 0.0.255.255 224.20 0 0.0.255.255
SAメッセージに格納されて送信されるマルチキャスト データのTTLによる制限
TTL値を使用して、各送信元の最初のSAメッセージにカプセル化されるデータを制御できます。IPヘッダーTTL値が ttl 引数以上であるマルチキャスト パケットのみが、指定されたMSDPピアに送信されます。たとえば、内部トラフィックのTTL値を8に制限できます。他のグループを外部に送信する場合は、これらのパケットのTTLを8より大きく設定して送信する必要があります。
デフォルト設定に戻すには、 no ip msdp ttl-threshold { ip-address | name }グローバル コンフィギュレーション コマンドを使用します。
スイッチで受信される送信元情報の制御
デフォルトでは、スイッチは、MSDPのRPFピアによって送信されたすべてのSAメッセージを受信します。ただし、着信SAメッセージをフィルタリングし、MSDPピアから受信する送信元情報を制御できます。つまり、特定の着信SAメッセージを受信しないようにスイッチを設定できます。
フィルタを削除するには、 no ip msdp sa-filter in { ip-address | name } [ list access-list-number ] [ route-map map-tag ]グローバル コンフィギュレーション コマンドを使用します。
次に、 switch.cisco.com という名前のピアからのすべてのSAメッセージをフィルタリングする例を示します。
Switch(config)# ip msdp peer switch.cisco.com connect-source gigabitethernet1/0/1
Switch(config)# ip msdp sa-filter in switch.cisco.com
MSDPメッシュ グループの設定
MSDPメッシュ グループは、MSDPによって完全なメッシュ型に相互接続されたMSDPスピーカーのグループです。メッシュ グループ内のピアから受信されたSAメッセージは、同じメッシュ グループ内の他のピアに転送されません。したがって、SAメッセージのフラッディングが削減され、ピアRPFフラッディングが簡素化されます。ドメイン内に複数のRPがある場合は、 ip msdp mesh-group グローバル コンフィギュレーション コマンドを使用します。特に、ドメインにわたってSAメッセージを送信する場合に使用します。単一のスイッチに複数のメッシュ グループを(異なる名前で)設定できます。
メッシュ グループからMSDPピアを削除するには、 no ip msdp mesh-group name { ip-address | name }グローバル コンフィギュレーション コマンドを使用します。
MSDPピアのシャットダウン
複数のMSDPコマンドが設定された単一のピアをアクティブにしない場合は、ピアをシャットダウンしてから、あとで起動することができます。ピアがシャットダウンすると、TCP接続が終了し、再起動されません。ピアの設定情報を保持したまま、MSDPセッションをシャットダウンすることもできます。
|
設定情報を保持したまま、指定されたMSDPピアを管理上のシャットダウン状態にします。 peer-name | peer address を指定する場合は、シャットダウンするMSDPピアのIPアドレスまたは名前を入力します。 |
||
ピアを再起動するには、 no ip msdp shutdown { peer-name | peer address }グローバル コンフィギュレーション コマンドを使用します。TCP接続が再確立されます。
MSDPへの境界PIM DM領域の追加
Dense-Mode(DM;dense[密]モード)領域とPIM SM領域の境界となるスイッチにMSDPを設定します。デフォルトでは、DM領域のアクティブな送信元はMSDPに参加しません。
DM領域でアクティブな送信元のSAメッセージをMSDPピアに送信するように境界ルータを設定するには、イネーブルEXECモードで次の手順を実行します。この手順は任意です。
|
DM領域内のアクティブな送信元に関するSAメッセージを送信するように、DM領域とSM領域の境界スイッチを設定します。 interface-id には、SAメッセージ内のRPアドレスとして使用される、IPアドレスの配信元となるインターフェイスを指定します。 インターフェイスのIPアドレスは、SAメッセージ内のRPフィールド[Originator-ID]の値として使用されます。 |
||
|
ip msdp redistribute [ list access-list-name ] [ asn aspath-access-list-number ] [ route-map map ] |
SAメッセージに格納されてアドバタイズされる、マルチキャスト ルーティング テーブル内の(S,G)エントリを設定します。 詳細については、 送信元の再配信 を参照してください。 |
|
ip msdp originator-id グローバル コンフィギュレーション コマンドを実行すると、RPアドレスとして使用されるインターフェイスも識別されます。 ip msdp border sa-address と ip msdp originator-id の両方のグローバル コンフィギュレーション コマンドが設定されている場合、 ip msdp originator-id コマンドから取得されたアドレスによってRPアドレスが決まります。
デフォルト設定(DM領域内のアクティブな送信元がMSDPに参加しない設定)に戻すには、 no ip msdp border sa-address interface-id グローバル コンフィギュレーション コマンドを使用します。
RPアドレス以外の発信元アドレスの設定
SAメッセージの発信元であるMSDPスピーカーで、インターフェイスのIPアドレスをSAメッセージ内のRPアドレスとして使用する場合は、送信元IDを変更します。次のいずれかの場合に送信元IDを変更できます。
- MSDPメッシュ グループ内の複数のスイッチ上で、ローカルなRPを設定する場合
- PIM SMドメインとDMドメインの境界となるスイッチがある場合。サイトのDMドメインの境界となるスイッチがあり、SMがその外部で使用されている場合は、DMの送信元を外部に通知する必要があります。このスイッチはRPでないため、SAメッセージで使用されるRPアドレスはありません。したがって、このコマンドではインターフェイスのアドレスを指定し、RPアドレスを提供します。
SAメッセージの発信元であるMSDPスピーカーで、インターフェイスのIPアドレスをSAメッセージ内のRPアドレスとして使用できるようにするには、イネーブルEXECモードで次の手順を実行します。この手順は任意です。
ip msdp border sa-address と ip msdp originator-id の両方のグローバル コンフィギュレーション コマンドが設定されている場合、 ip msdp originator-id コマンドから取得されたアドレスによってRPアドレスが決まります。
この方法でRPアドレスが取得されないようにするには、 no ip msdp originator-id interface-id グローバル コンフィギュレーション コマンドを使用します。
MSDPのモニタおよびメンテナンス
MSDP SAメッセージ、ピア、ステート、またはピア ステートをモニタするには、 MSDPのモニタおよびメンテナンスのためのコマンド に示すイネーブルEXECコマンドを1つまたは複数使用します。
MSDP接続、統計情報、またはSAキャッシュ エントリをクリアするには、 MSDP接続、統計情報、またはSAキャッシュ エントリをクリアするためのコマンド に示すイネーブルEXECコマンドを使用します。
