IP : IP マルチキャスト

基本的なマルチキャスト トラブルシューティング ツール

2015 年 11 月 26 日 - 機械翻訳について
その他のバージョン: PDFpdf | ライター翻訳版 (2009 年 6 月 16 日) | 英語版 (2015 年 8 月 22 日) | フィードバック


目次


概要

このドキュメントでは、マルチキャスト ネットワークをトラブルシューティングするためのさまざまなツールとテクニックについて説明しています。 さまざまなコマンドライン インターフェイス ツールとそれらの出力で表示される主要な情報フィールドについて理解すると、マルチキャスト ネットワークのトラブルシューティングに役立ちます。

前提条件

要件

このドキュメントに関する特別な要件はありません。

使用するコンポーネント

このドキュメントは、特定のソフトウェアやハードウェアのバージョンに限定されるものではありません。

このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されたものです。 このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。 ネットワークが稼働中の場合は、コマンドが及ぼす潜在的な影響を十分に理解しておく必要があります。

表記法

ドキュメント表記の詳細は、『シスコ テクニカル ティップスの表記法』を参照してください。

トラブルシューティングの指針

マルチキャスト ネットワークのトラブルシューティングでは、ネットワークで使用されているシグナリング プロトコルとパケット フローについて考察することをお勧めします。 シグナリング プロトコルはマルチキャスト セッション(PIM 稠密モード、PIM 希薄モード、DVMRP など)の確立と切断に使用されるプロトコルです。パケット フローは、シグナリング プロセスで作成された転送テーブルに基づいて送信元と受信側で行われるマルチキャスト パケットの実際の送信、複製、受信のことです。

次の表内の項目が正しく動作しているかどうかをチェックすることで、個々のトラブルシューティング情報を確認できます。

  送信元 ネットワーク 受信側
シグナリング 該当せず ネットワーク シグナリングの確認 受信側のシグナリングの確認
パケット フロー 送信元パケットのフロー確認 ネットワーク パケット フローの確認 受信側パケットのフロー確認

次のサブセクションでは、一般的な問題の調査と修正に使用できるトラブルシューティング ツールについて詳しく説明します。

送信元パケットのフロー確認

次の手順を実行し、送信元がパケットを実際に送信していて、パケット フィールドを正しく挿入しているかどうかを確認します。

  1. ホストのインターフェイスのカウンタを確認します。 最初に、送信元ホストのインターフェイスのカウンタを確認し(UNIX システムの場合は、netstat コマンドを使用)、ホストが実際にパケットを送信しているかどうかを確認します。 送信していない場合は、ホストのスタックとアプリケーションに誤設定または不具合がないかどうかを確認してください。

  2. show ip igmp groups interface-name コマンドを使用して上流ルータを調べ、送信元に直接接続されているインターフェイスで Join Membership Report を受信しているかどうかを確認します。

  3. アプリケーション ソース パケットの TTL 値をチェックして下さい; それは 1.より大きいはずです。 アプリケーションから 1 以下の TTL 値でパケットが送信されると、最初の上流ルータでトラフィックが廃棄されます。 これは、show ip traffic コマンドで出力される「bad hop count」カウンタ値の増加により確認できます。 TTL 値が 1 のパケットや、ip multicast ttl-threshold コマンドでインターフェイスに設定されている TTL しきい値よりも低い TTL 値のパケットはすべて廃棄されます。この廃棄によって「bad hop-count」カウンタが 1 ずつ増加します。 インターフェイスの TTL しきい値を確認するには、show ip igmp interface interface-name コマンドを使用します。

  4. show ip mroute count および show ip mroute active コマンドを使用して、最初の上流ルータまたはスイッチで送信元からのマルチキャスト パケットが認識されているかどうかを確認します。 このコマンド出力に、各(S,G)ペアのトラフィック フロー統計情報が表示されます。 トラフィックがない場合は、受信側のシグナリングを確認してください。

  5. 最も近い上流ルータで、詳細レベルの引数 detail または acl を指定した debug ip mpacket コマンドを使用します。 ネットワーク上に大量のマルチキャスト トラフィックが流れている場合、このコマンドの使用には注意が必要です。 必要な場合のみ、ルータで debug ip mpacket コマンドを使用するようにします。 debug 出力にパケット ヘッダーを表示する場合は detail 引数を使用し、特定の送信元からのトラフィックを調べる場合はアクセス リストを指定します。 このコマンドは他のトラフィックのパフォーマンスに大きな影響を及ぼす可能性があるので、注意して使用してください。

ネットワーク シグナリングの確認

これは、すべてのネットワークのトラブルシューティングにおいて最も複雑で重要な作業です。 この作業は、PIM 希薄モード、PIM 稠密モード、DVMRP などの使用しているネットワーク シグナリング プロトコルによって異なります。 このセクションで説明する段階的なアプローチを推奨します。

PIM sparseモードに関するトラブルシューティング

PIM 希薄モードのトラブルシューティングを行うには、次の手順を実行します。

  1. すべてのマルチキャスト ルータで IP マルチキャスト ルーティングが有効になっていることを確認します。

  2. show ip pim neighbor コマンドで有効期限タイマーとモードを確認し、確実に PIM ネイバー関係が確立されるようにします。また、PIM ネイバー関係の確立を阻害する接続性の問題やタイマーの問題がないかどうかを確認します。 必要であれば、ip pim [version] [dense-mode] [sparse-mode] [sparse-dense-mode] インターフェイス レベル サブコマンドを使用して適切なモードとバージョンを設定し、PIM ネイバー関係が正常に確立されるようにします。

  3. show ip pim rp mapping コマンドを使用して RP とグループのマッピングが適切かどうかを確認し、Auto-RP が設定されている場合は有効期限タイマーを確認します。 Auto-RP の障害を確認するには debug ip pim auto-rp コマンドを使用します。 PIM のグループと RP のマッピングを確認できない場合は、auto-RP の設定を確認するか、ip pim rp-address ip address of RP [access-list] [named-accesslist] [override] コマンドでグループと RP との静的マッピングを設定します。 auto-RP の設定は、ip pim send-rp-announce interface-id scope TTL value and ip pim send-rp-discovery interface-id scope TTL value コマンドを使用して行います。 これらのコマンドは、auto-RP の設定がある場合にのみ実行します。

  4. show ip rpf ip address of source コマンドを使用して、送信元アドレスについての RPF エラーを確認します。 PIM 稠密モードと PIM 希薄モードでは、非 RPF ポイントツーポイント インターフェイスにトラフィックが到着すると、送信元に Prune メッセージが送り返されます。 debug ip pim コマンドの通常の出力と実際の出力を比較すると、PIM ネットワーク障害の原因調査に役立ちます。 PIM 希薄モードの 3 つの離散ステージを識別するのにこの出力を使用して下さい: 、加入し、および SPT スイッチオーバ登録します。 show ip mroute コマンドを使用すると、発信インターフェイス リストのヌル エントリや、mroute テーブルのプルーニングされたエントリを確認できます。

ネットワーク パケット フローの確認

ネットワーク上でのマルチキャスト パケットのフローの確認には、次のコマンドを使用します。

受信側のシグナリングの確認

受信側のシグナリングの確認には、次の手順を実行します。

  1. 受信側に接続されている最初の上流ルータで show ip igmp groups コマンドを使用して、インターフェイスがグループに参加しているかどうかを確認します。

  2. ping コマンドを使用して、ホストと最初の上流ルータの到達可能性を確認します。

  3. show ip igmp interface コマンドを使用して、インターフェイスの IGMP のバージョンを確認します。

    注: IGMP バージョン 1 で設定されたルータでは、ホストから受信した IGMP バージョン 2 のパケットは無効と見なされます。 これらの IGMP パケットは、ルータがホストから IGMP バージョン 1 パケットを受信するまで、グループに参加しません。

  4. debug ip igmp コマンドを使用して、さらに受信側のシグナリングのトラブルシューティングを行います。

受信側パケットのフロー確認

次の手順を実行し、受信側のパケット フローを確認します。

  1. UNIX システムで netstat コマンドを使用し、受信側のインターフェイス統計情報を確認します。

  2. TCP/IP スタックが正しくインストールおよび設定されているかどうかを確認します。

  3. マルチキャスト受信側クライアント アプリケーションがインストールされ、正しく設定されていることを確認します。

  4. マルチアクセス セグメント上に重複したマルチキャスト パケットがないかどうかを調べます。

パワー ツール

このセクションで説明するコマンドもトラブルシューティングに使用できます。これらのコマンドは特に、ネットワーク パケットのフローをテストしたり、マルチキャスト ネットワークの障害ポイントを検出する場合に便利です。 マルチキャスト ツール コマンドについての詳細は、『IP マルチキャスト ツール コマンド』を参照してください。

mstat

このコマンドは、マルチキャスト パスを ASCII グラフィック フォーマットで表示します。 ネットワーク上の任意の 2 地点間のパスをトレースし、各ノードにおける廃棄と複製、TTL、および遅延を表示します。 このコマンドは、ネットワーク上の輻輳ポイントを特定したり、廃棄または複製カウントの高いルータを調査する場合に便利です。 出力では、複製は「負」の廃棄として表示されます。

Router# mstat lwei-home-ss2 171.69.58.88 224.0.255.255
Type escape sequence to abort
Mtrace from 171.69.143.27 to 171.69.58.88 via group 224.0.255.255
>From source (lwei-home-ss2.cisco.com) to destination (lwei-ss20.cisco.com)
Waiting to accumulate statistics......
Results after 10 seconds:
 
  Source        Response Dest    Packet Statistics For    Only For Traffic
171.69.143.27    171.69.62.144    All Multicast Traffic     From 171.69.143.27
     |       __/  rtt 48   ms   Lost/Sent = Pct  Rate     To 224.0.255.255
     v      /     hop 48   ms   ---------------------     --------------------
171.69.143.25   lwei-cisco-isdn.cisco.com  
     |     ^      ttl   1   
     v     |      hop 31   ms    0/12 = 0%      1 pps    0/1 = --%  0 pps
171.69.121.84   
171.69.121.45   eng-frmt12-pri.cisco.com  
     |     ^      ttl   2   
     v     |      hop -17  ms    -735/12 = --%      1 pps    0/1 = --%  0 pps
171.69.121.4    
171.69.5.27     eng-cc-4.cisco.com  
     |     ^      ttl   3   
     v     |      hop -21  ms    -678/23 = --%      2 pps    0/1 = --%  0 pps
171.69.5.21     
171.69.62.130   eng-ios-2.cisco.com  
     |     ^      ttl   4   
     v     |      hop 5    ms    605/639 = 95%      63 pps    1/1 = --%  0 pps
171.69.62.144   
171.69.58.65    eng-ios-f-5.cisco.com  
     |      \__   ttl   5   
     v         \  hop 0    ms        4         0 pps           0    0 pps
171.69.58.88    171.69.62.144   
  Receiver      Query Source

mrinfo

このコマンドにより、マルチキャスト ネイバー ルータの情報、ルータの性能とコード バージョン、マルチキャスト インターフェイスの情報、TTL しきい値、メトリック、プロトコル、および状態が表示されます。 このコマンドは、マルチキャスト ネイバーの確認、ネイバーと双方向の隣接関係があるかどうかの確認、およびトンネルが双方向でアップになっているかどうかの確認が必要な場合に使用すると便利です。

Router# mrinfo 
  192.1.7.37 (b.cisco.com) [version cisco 11.1] [flags: PMSA]: 
  192.1.7.37 -> 192.1.7.34 (s.cisco.com) [1/0/pim] 
  192.1.7.37 -> 192.1.7.47 (d.cisco.com) [1/0/pim] 
  192.1.7.37 -> 192.1.7.44 (d2.cisco.com) [1/0/pim] 
  131.9.26.10 -> 131.9.26.9 (su.bbnplanet.net) [1/32/pim]

出力内のフラグの意味は次のとおりです。

  • P = prune 対応

  • M = mtrace 対応

  • S = SNMP 対応

  • A = Auto-RP 対応

mtrace

このコマンドは、送信元から受信側までのマルチキャスト パスを表示し、ネットワーク上の各地点間のパスをトレースして、各ノードの TTL しきい値および遅延を表示します。 トラブルシューティング時に mtrace コマンドを使用し、マルチキャスト トラフィック フローが止まる地点を特定したり、マルチキャスト トラフィック パスを確認したり、次に最適なパスを判別することができます。

Router# mtrace 171.69.215.41 171.69.215.67 239.254.254.254 
Type escape sequence to abort. 
Mtrace from 171.69.215.41 to 171.69.215.67 via group 239.254.254.254 
From source (?) to destination (?) 
Querying full reverse path... 
0  171.69.215.67 
-1  171.69.215.67 PIM  thresh^ 0  0 ms 
-2  171.69.215.74 PIM  thresh^ 0  2 ms 
-3  171.69.215.57 PIM  thresh^ 0  894 ms 
-4  171.69.215.41 PIM  thresh^ 0  893 ms 
-5  171.69.215.12 PIM  thresh^ 0  894 ms 
-6  171.69.215.98 PIM  thresh^ 0  893 ms

ping

トラブルシューティング時に、マルチキャスト ツリーをテストする目的でラボ環境にマルチキャスト トラフィックを生成するには、ping コマンドを使用する方法が最も簡単な方法です。これは、グループのすべてのメンバに対して ping が発行され、すべてのメンバが応答するからです。

R3# ping 239.255.0.1 
 Type escape sequence to abort. 
Sending 1, 100-byte ICMP Echos to 239.255.0.1, timeout is 2 seconds: 
Reply to request 0 from 172.16.12.2, 16 ms 
Reply to request 0 from 172.16.7.2, 20 ms 

show コマンド

このセクションで説明するコマンドを使用すると、マルチキャストの問題のトラブルシューティングに役立つ情報を収集できます。 これらの show コマンドについての詳細は、『IP マルチキャスト コマンド リファレンス ガイド』を参照してください。

ヒント: 表示コマンド応答が緩慢である場合、ほとんどのありそうな理由はルータが表示コマンドで現在 IP アドレスのための IP ドメイン ルックアップを行うことです。 IP ドメイン ルックアップはディセーブルにできます。IP ドメイン ルックアップをディセーブルにするには、ルータのグローバル コンフィギュレーション モードで no ip domain-lookup コマンドを使用します。 このコマンドを発行すると IP ドメイン ルックアップが行われなくなり、show コマンドの出力速度が上がります。

show ip igmp groups

このコマンドでは、ルータに直接接続されているマルチキャスト グループと、Internet Group Management Protocol(IGMP; インターネット グループ管理プロトコル)によって学習されたマルチキャスト グループが表示されます。 送信元または受信側が、ルータ インターフェイスでターゲットのグループに実際に参加しているかどうかを確認する場合に、このコマンドを使用できます。 「Last Reporter」カラムには IGMP ホストが 1 つだけ表示されます。これは、PIM ルータが送信したそのグループに関する IGMP Query の応答として、そのホストが IGMP Join または IGMP Report を送信したことを示しています。 各グループ アドレスに対して「Last Reporter」が 1 つだけ表示されます。

R1# show ip igmp groups
IGMP Connected Group Membership
Group Address    Interface      Uptime          Expires         Last Reporter
239.255.0.1      Ethernet1      00:10:54        00:01:10        192.168.9.1
224.0.1.40       Ethernet0      01:36:27        00:02:45        192.168.10.2
224.0.1.40       Ethernet1      01:48:15        never           192.168.9.3

show ip igmp interface

このコマンドは、インターフェイスのマルチキャスト関連情報を表示したり、IGMP が有効になっているかどうか、適切なバージョンが稼働しているかどうか、タイマー、TTL しきい値、IGMP クエリア ルータが正しく設定されているかどうかを確認する場合に使用します。 インターフェイスで IGMP を設定する必要はありません。 それは ip pim dense-mode を設定するときデフォルトで有効に なります|sparse(疎)モード|sparse(疎)- dense(密)モード

R1# show ip igmp interface
Ethernet1 is up, line protocol is up
  Internet address is 192.168.9.3/24
  IGMP is enabled on interface
  Current IGMP version is 2
  CGMP is disabled on interface
  IGMP query interval is 60 seconds
  IGMP querier timeout is 120 seconds
  IGMP max query response time is 10 seconds
  Last member query response interval is 1000 ms
  Inbound IGMP access group is not set
  IGMP activity: 22 joins, 18 leaves
  Multicast routing is enabled on interface
  Multicast TTL threshold is 0
  Multicast designated router (DR) is 192.168.9.5  
  IGMP querying router is 192.168.9.3 (this system)
  Multicast groups joined (number of users):
      224.0.1.40(1)

show ip pim neighbor

Cisco IOS によって検出される Protocol Independent Multicast (PIM)相手をリストするのにこのコマンドを使用して下さいか。 ソフトウェア。

R1# show ip pim neighbor
PIM Neighbor Table
Neighbor          Interface                Uptime/Expires    Ver   DR
Address                                                            Prio/Mode
10.10.10.1        Ethernet0/0              02:19:41/00:01:38 v2    1 / DR B S

次に、各フィールドについて説明します。

  • Neighbor Address:PIM ネイバーの IP アドレス

  • Interface:PIM ネイバーが検出されたインターフェイス

  • Uptime:ネイバーの動作期間の合計

  • Expires:次の PIM Hello を受信するまで、ネイバーがタイムアウトされるのを待機する時間

  • Ver:ネイバーのインターフェイスでの PIM のバージョン

  • DR Prio:0 ~ 4294967294 の値または「N」

    これは、DR 選出時の PIM インターフェイスの優先順位を追跡管理するための新しいカラムです。 最高優先順位と最高 IP アドレスの比較を基に DR を設定する機能は、Cisco IOS ソフトウェア リリース 12.1(2)T、12.2、および Bidir-PIM 対応 Cisco IOS イメージで導入されました。 DR 優先順位を設定 する IP PIM DR 優先順位 <0-4294967294> interface コマンドを使用できます。 デフォルトの DR 優先順位は 1 です。 相互運用性のため、DR 優先順位機能がサポートされていない古い Cisco IOS バージョンが PIM ネイバーで稼働している場合は、「DR Prior」カラムは「N」と表示されます。 インターフェイスで「N」と表示されているネイバーが 1 つだけの場合、どのルータに最高 IP アドレスが付与されているかに関係なく、そのルータが DR になります。 このカラムに「N」が表示されている PIM ネイバーが複数ある場合、その中で最も高い IP アドレスが付与されているネイバーが選出されます。

  • Mode:DR およびその他の PIM 機能に関する情報。

    このカラムには、PIM ネイバーでサポートされている機能のほか、DR が表示されます。

    DR - PIM ネイバーは代表ルータです

    B:双方向 PIM(Bidir-PIM)対応。

    S:ステート リフレッシュ対応(稠密モード時のみ)。

トラブルシューティング時にこのコマンドを使用して、すべてのネイバーがアップ状態になっているか、ネイバーで使用されているモード、バージョン、および有効期限タイマーが適切かどうかを確認できます。 また、ルータの設定を確認することもできます。モード(PIM 希薄または稠密モード)の確認は、show ip pim interface コマンドでも可能です。 pim-query メッセージの交換を表示するには debug ip pim コマンドを使用します。

show ip pim interface

このコマンドは、PIM が設定されたインターフェイスに関する情報を表示する場合に使用します。 さらに、このコマンドにより、適切な PIM モード(稠密または希薄)がインターフェイスに設定されているかどうか、ネイバーの数は正しいか、および Designated Router(DR; 代表ルータ)が正しいかを(PIM 希薄モードの場合は重要)確認できます。 マルチアクセス セグメント(イーサネット、トークン リング、FDDI)では、最も高い IP アドレスのものが DR に選出されます。 ポイントツーポイント リンクでは、DR 情報は表示されません。

R1# show ip pim interface 
Address          Interface          Version/Mode    Nbr   Query     DR
                                                    Count Intvl
192.168.10.1     Ethernet0          v2/Sparse-Dense  1    30     192.168.10.2
192.168.9.3      Ethernet1          v2/Sparse-Dense  1    30     192.168.9.5

show ip mroute summary

このコマンドは、IP マルチキャスト ルーティング テーブルの要約を表示する場合に使用します。 このコマンドでは、アクティブのマルチキャスト グループを確認したり、タイマーとフラグを確認することでアクティブのマルチキャスト送信元を確認することもできます。

R1## show ip mroute summary
IP Multicast Routing Table
Flags: D - Dense, S - Sparse, C - Connected, L - Local, P - Pruned
       R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT
       M - MSDP created entry, X - Proxy Join Timer Running
       A - Advertised via MSDP
Outgoing interface flags: H - Hardware switched
Timers: Uptime/Expires
Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 239.255.0.1), 01:57:07/00:02:59, RP 192.168.7.2, flags: SJCF
  (133.33.33.32, 239.255.0.1), 01:56:23/00:02:59, flags: CJT
  (192.168.9.1, 239.255.0.1), 01:57:07/00:03:27, flags: CFT

(*, 224.0.1.40), 1d00h/00:00:00, RP 192.168.7.2, flags: SJPCL

show ip mroute

このコマンドは、IP マルチキャスト ルーティング テーブルの全内容を表示する場合に使用します。 トラブルシューティングで次について確認する場合に、このコマンドを使用します。

  • フラグから、(S,G)と(*,G)のステート エントリ

  • 着信インターフェイスが正しいかどうかの確認。 正しくない場合、ユニキャスト ルーティング テーブルを確認してください。

  • 発信インターフェイスが正しいかどうかの確認。 不正にプルーニングされている場合、下流ルータの状態を確認してください。

R1# show ip mroute
IP Multicast Routing Table
Flags: D - Dense, S - Sparse, C - Connected, L - Local, P - Pruned
       R - RP-bit set, F - Register flag, T - SPT-bit set, J - Join SPT
       M - MSDP created entry, X - Proxy Join Timer Running
       A - Advertised via MSDP
Outgoing interface flags: H - Hardware switched
Timers: Uptime/Expires
Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 239.255.0.1), 01:55:27/00:02:59, RP 192.168.7.2, flags: SJCF
  Incoming interface: Ethernet0, RPF nbr 192.168.10.2
  Outgoing interface list:
    Ethernet1, Forward/Sparse, 01:55:27/00:02:52

(133.33.33.32, 239.255.0.1), 01:54:43/00:02:59, flags: CJT
  Incoming interface: Ethernet0, RPF nbr 192.168.10.2
  Outgoing interface list:
    Ethernet1, Forward/Sparse, 01:54:43/00:02:52

(192.168.9.1, 239.255.0.1), 01:55:30/00:03:26, flags: CFT
  Incoming interface: Ethernet1, RPF nbr 0.0.0.0
  Outgoing interface list:
    Ethernet0, Forward/Sparse, 01:55:30/00:03:12

(*, 224.0.1.40), 1d00h/00:00:00, RP 192.168.7.2, flags: SJPCL
  Incoming interface: Ethernet0, RPF nbr 192.168.10.2
  Outgoing interface list: Null

show ip mroute active

このコマンドは、しきい値を上回るアクティブ トラフィックの送信元とグループを表示する場合に使用します。 解決するとき、アクティブソース グループを確認するのに使用して下さいそれを各ソースグループ(S、G)のためのトラフィックレート ペア(最短パスツリー (SPT)に切り替えたにちがいありません)およびターゲット グループ マルチキャストトラフィックが受信されているかどうか確認するため。 トラフィックを受信していない場合は、送信元から受信側に向かって、アクティブ トラフィックを探してください。

R1# show ip mroute active
Active IP Multicast Sources - sending >= 4 kbps

Group: 239.255.0.1, (?)
   Source: 133.33.33.32 (?)
   Rate: 10 pps/115 kbps(1sec), 235 kbps(last 23 secs), 87 kbps(life avg)

show ip rpf

このコマンドは、IP マルチキャスト ルーティングの Reverse Path Forwarding(RPF)の動作を表示する場合に使用します。 トラブルシューティング時にこのコマンドを使用して、RPF 情報が正しいかどうかを確認します。 正しくない場合、ユニキャスト ルーティング テーブルで送信元アドレスを確認してください。 送信元アドレスで ping または trace コマンドを使用する方法でも、ユニキャスト ルーティングが機能しているかどうかを確認できます。 ユニキャストとマルチキャストの不整合を修正するには、Distance Vector Multicast Routing Protocol(DVMRP; ディスタンスベクトル マルチキャスト ルーティング プロトコル)ルートまたはスタティック mroute を使用する必要がある場合があります。

R1# show ip rpf 133.33.33.32
RPF information for ? (133.33.33.32)
  RPF interface: Ethernet0
  RPF neighbor: ? (192.168.10.2)
  RPF route/mask: 133.33.0.0/16
  RPF type: unicast (eigrp 1)
  RPF recursion count: 0
  Doing distance-preferred lookups across tables

show ip mcache

このコマンドにより、IP マルチキャスト ファースト スイッチング キャッシュの検証と、ファースト スイッチングの不具合のデバッグが可能です。

R1# show ip mcache
IP Multicast Fast-Switching Cache
(133.33.33.32/32, 239.255.0.1), Ethernet0, Last used: 00:00:00
  Ethernet1       MAC Header: 01005E7F000100000C13DBA90800
(192.168.9.1/32, 239.255.0.1), Ethernet1, Last used: 00:00:00
  Ethernet0       MAC Header: 01005E7F000100000C13DBA80800

show ip mroute count

このコマンドは、マルチキャスト トラフィックを受信していることの確認と、そのフロー レートと廃棄について調べる場合に使用します。 トラフィックを受信していない場合、送信元から受信側に向かって、トラフィックが停止している地点を探してください。 このコマンドは、トラフィックが転送されているかどうかを確認する場合にも使用できます。 転送されていない場合は、show ip mroute コマンドを使用して、「Null Outgoing interface list」と RPF エラーを検索してください。

R1# show ip mroute count 
   IP Multicast Statistics 
    routes using 2406 bytes of memory 
   2 groups, 1.00 average sources per group 
   Forwarding Counts: Pkt Count/Pkts per second/Avg Pkt Size/Kilobits per second    
   Other counts: Total/RPF failed/Other drops(OIF-null, rate-limit etc) 
   Group: 239.255.0.1, Source count: 2, Group pkt count: 11709 
  RP-tree: Forwarding: 3/0/431/0, Other: 3/0/0 
  Source: 133.33.33.32/32, Forwarding: 11225/6/1401/62, Other: 11225/0/0 
  Source: 192.168.9.1/32, Forwarding: 481/0/85/0, Other: 490/0/9 
Group: 224.0.1.40, Source count: 0, Group pkt count:

show ip route

このコマンドを使用して、ユニキャスト ルーティング テーブルを確認し、mroute テーブル上で RPF 障害を修復します。

R2# show ip route 
   Codes: C - connected, S - static, I - IGRP, R - RIP, M - mobile, B - BGP 
       D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area 
       N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2 
       E1 - OSPF external type 1, E2 - OSPF external type 2, E - EGP 
       i - IS-IS, L1 - IS-IS level-1, L2 - IS-IS level-2, ia - IS-IS inter area 
       * - candidate default, U - per-user static route, o - ODR 
       P - periodic downloaded static route 
Gateway of last resort is not set 
D    192.168.9.0/24 [90/307200] via 192.168.10.1, 00:59:45,    Ethernet0 
   C    192.168.10.0/24 is directly connected, Ethernet0 
   D    192.168.4.0/24 [90/11040000] via 192.168.7.1, 23:21:00,    Serial0 
   D    192.168.5.0/24 [90/11023872] via 192.168.7.1, 23:21:02,    Serial0 
   C    192.168.7.0/24 is directly connected, Serial0 
   D    133.33.0.0/16 [90/2195456] via 192.168.7.1, 1d23h, Serial0    
   D    192.168.1.0/24 [90/11552000] via 192.168.7.1, 22:41:27,    Serial0

show ip pim rp mapping

このコマンドは、マルチキャスト グループ範囲ごとの RP 割り当てと、RP の学習(スタティックまたは Auto-RP)のソースとマッピングが正しいかことを確認する場合に使用します。 エラーがある場合は、ローカル ルータの設定または Auto-RP の設定を確認してください。

R1# show ip pim rp mapping 
   PIM Group-to-RP Mappings 
Group(s) 224.0.1.40/32 
     RP 192.168.7.2 (?), v1 
       Info source: local, via Auto-RP 
            Uptime: 2d00h, expires: never    
   Group(s): 224.0.0.0/4, Static 
       RP: 192.168.7.2 (?)

debug コマンド

このセクションでは、運用中のネットワークで各 debug コマンドを発行した場合の出力を示しています。 トラブルシューティングの際には、正常な状態の debug 出力と、ネットワークでの問題を示唆する出力を判別できます。 これらの debug コマンドについての詳細は、『Cisco IOS debug コマンド リファレンス』を参照してください。

debug ip igmp

debug ip igmp コマンドは、送受信された IGMP パケットと、IGMP ホスト関連のイベントを表示する場合に使用します。 このコマンドの no 形式を使用すると、デバッグ出力が無効になります。

この出力から IGMP プロセスが機能しているかどうかを調べることができます。 一般に、IGMP が機能していない場合、ルータ プロセスでは、マルチキャスト パケットを受信するように設定されているネットワーク上の別のホストは検出されません。 PIM 稠密モードの場合、これはパケットが断続的に(3 分おきに数回)配信されていることを意味します。 PIM 希薄モードの場合、パケットは配信されていません。

R1# debug ip igmp 
   12:32:51.065: IGMP: Send v2 Query on Ethernet1 to 224.0.0.1 
12:32:51.069: IGMP: Set report delay time to 9.4 seconds for 224.0.1.40 on Ethernet1 
12:32:56.909: IGMP: Received v1 Report from 192.168.9.1 (Ethernet1) for 239.255.0.1 
12:32:56.917: IGMP: Starting old host present timer for 239.255.0.1 on Ethernet1 
12:33:01.065: IGMP: Send v2 Report for 224.0.1.40 on Ethernet1 
12:33:01.069: IGMP: Received v2 Report from 192.168.9.4 (Ethernet1) for 224.0.1.40 
12:33:51.065: IGMP: Send v2 Query on Ethernet1 to 224.0.0.1

この出力では、ルータがインターフェイス Ethernet 1 からマルチキャスト アドレス 224.0.0.1(このサブネット内のすべてのマルチキャスト システム)宛てに IGMP バージョン 2 クエリーを送信していることを示しています。 インターフェイス Ethernet 1 自体はグループ 224.0.1.40 のメンバーで(show ip igmp interface コマンドで確認できます)、レポートの遅延時間は 9.4 秒に設定されています(ランダムに決定された時間)。 このルータは、次の 9.4 秒間にマルチキャスト グループ 224.0.1.40 の別のシステムからレポートを受信しないと、自身のメンバシップに関するバージョン 2 レポートを送信します。このレポートは Ethernet 1 でこのルータ自身により受信されます。 また IGMP バージョン 1 のレポートをホスト 192.168.9.1 から受信しています。このホストは、グループ 239.255.0.1 に参加するためインターフェイス Ethernet 1 に直接接続されています。

この debug 出力は、ルータ インターフェイスからクエリーが送信されているかどうかと、クエリーの間隔(上記の例では 60 秒)を調べる場合に役立ちます。 このコマンドを使用して、クライアントで使用されている IGMP のバージョンを確認することもできます。

debug ip mpacket

debug ip mpacket コマンドは、送受信されたすべての IP マルチキャスト パケットを表示する場合に使用します。 このコマンドの no 形式を使用すると、デバッグ出力が無効になります。

R1# debug ip mpacket 239.255.0.1 detail 
   13:09:55.973: IP: MAC sa=0000.0c70.d41e (Ethernet0), IP last-hop=192.168.10.2 
   13:09:55.977: IP: IP tos=0x0, len=892, id=0xD3C1, ttl=12, prot=17 
   13:09:55.981: IP: s=133.33.33.32 (Ethernet0) d=239.255.0.1 (Ethernet1) len 906, mforward

このコマンドはマルチキャスト パケットをデコードし、パケットが転送(mforward)されたのか、それとも廃棄されたのかを示します。 ネットワークのパケット フロー問題のデバックで、TTL 値とパケット廃棄の理由を調べる場合に便利なコマンドです。

注意 注意: ルータで大量のマルチキャスト パケットが処理されている場合は特に、パケットレベルのデバッグ出力の有効化には注意が必要です。

debug ip mrouting

このコマンドは、ルーティング テーブルのメンテナンスを行う場合に便利です。 mrouting テーブルに(S,G)mroute が登録されているかどうかを確認したり、登録されていない場合はその理由を調べることができます。 この出力の重要な情報は RPF インターフェイスです。 RPF チェックのエラーが発生した場合、(S,G)mroute は mrouting テーブルに登録されません。

R1# debug ip mrouting 239.255.0.1
13:17:27.821: MRT: Create (*, 239.255.0.1), RPF Null, PC 0x34F16CE 
    13:17:27.825: MRT: Create (133.33.33.32/32, 239.255.0.1), RPF Ethernet0/192.168.10.2, 
    PC 0x34F181A 
    13:17:30.481: MRT: Create (192.168.9.1/32, 239.255.0.1), RPF Ethernet1/0.0.0.0, 
    PC 0x34F18

debug ip pim

debug ip pim コマンドは、送受信された PIM パケットと PIM 関連のイベントを表示する場合に使用します。 このコマンドの no 形式を使用すると、デバッグ出力が無効になります。

このセクションでは、PIM 希薄モードのデバッグ出力をわかりやすく説明し一般的なデバッグ出力を示すため、例を挙げて説明しています。

/image/gif/paws/13726/57a.gif

次は R1 の debug ip pim 出力です。

R1# debug ip pim 
 PIM: Send v2 Hello on Ethernet0 
 PIM: Send v2 Hello on Ethernet1 
 PIM: Received v2 Hello on Ethernet0 from 192.168.10.2 
 PIM: Send v2 Hello on Ethernet0 
 PIM: Send v2 Hello on Ethernet1 
 PIM: Building Join/Prune message for 239.255.0.1 
 PIM: v2, for RP, Join-list: 192.168.7.2/32, RP-bit, WC-bit, S-bit 
 PIM: Send v2 periodic Join/Prune to RP via 192.168.10.2 (Ethernet0) 
 PIM: Received RP-Reachable on Ethernet0 from 192.168.7.2 for group 239.255.0.1 
 PIM: Update RP expiration timer (270 sec) for 239.255.0.1

出力の各行の意味を説明します。 R1 と R2 は Hello メッセージの交換によって PIM ネイバー関係を確立します。 R1(E0)と R2(E0)の間で「Query-Interval」秒の間隔で定期的に交わされる Hello メッセージにより、PIM ネイバー関係が継続的にトラッキングされます。

R1 が RP アドレス 192.168.7.2 に Join/Prune メッセージを送信します。 RP(R2)が R1 に、グループ 239.255.0.1 についての Received RP Reachable メッセージを送信します。 これにより、R1 で RP 有効期限タイマーが更新されます。 期限切れタイマーはまだ存在 する RP を確かめるためにチェックポイントを設定 します; さもなければ新しい RP は検出する必要があります。 RP の有効期限を確認するには、show ip pim rp コマンドを使用します。

次に、グループ 239.255.0.1 のマルチキャスト受信側が R1 に参加した際の、R1 と R2 間の debug 出力を示します。

まず、R1 の出力を示します。

1 PIM: Check RP 192.168.7.2 into the (*, 239.255.0.1) entry 
 2 PIM: Send v2 Join on Ethernet0 to 192.168.10.2 for (192.16.8.7.2/32, 239.255.0.1), WC-bit, RPT-bit, S-bit 
 3 PIM: Building batch join message for 239.255.0.1 
 4 PIM: Building Join/Prune message for 239.255.0.1 
 5 PIM: v2, for RP, Join-list: 192.168.7.2/32, RP-bit, WC-bit, S-bit 
 6 PIM: Send v2 periodic Join/Prune to RP via 192.168.10.2 (Ethernet0) 
 7 PIM: Received RP-Reachable on Ethernet0 from 192.168.7.2 : for group 239.255.0.1 
 8 PIM: Update RP expiration timer (270 sec) for 239.255.0.1 
 9 PIM: Building Join/Prune message for 239.255.0.1 
 10 PIM: v2, for RP, Join-list: 192.168.7.2/32, RP-bit, WC-bit, S-bit 
 11 PIM: Send v2 periodic Join/Prune to RP via 192.168.10.2 (Ethernet0)

次に、R2 の出力を示します。

12 PIM: Received v2 Join/Prune on Ethernet0 from 192.168.10.1, to us
13 PIM: Join-list: (*, 239.255.0.1) RP 192.168.7.2
14 PIM: Check RP 192.168.7.2 into the (*, 239.255.0.1) entry, RPT-bit set, WC-bit set, S-bit set
15 PIM: Add Ethernet0/192.168.10.1 to (*, 239.255.0.1), Forward state
16 PIM: Building Join/Prune message for 239.255.0.1
17 PIM: Received v2 Join/Prune on Ethernet0 from 192.168.10.1, to us
18 PIM: Join-list: (*, 239.255.0.1) RP 192.168.7.2, RPT-bit set, WC-bit set, S-bit set
19 PIM: Add Ethernet0/192.168.10.1 to (*, 239.255.0.1), Forward state
20 PIM: Building Join/Prune message for 239.255.0.1
21 PIM: Send RP-reachability for 239.255.0.1 on Ethernet0
22 PIM: Received v2 Join/Prune on Ethernet0 from 192.168.10.1, to us
23 PIM: Join-list: (*, 239.255.0.1) RP 192.168.7.2, RPT-bit set, WC-bit set, S-bit set
24 PIM: Add Ethernet0/192.168.10.1 to (*, 239.255.0.1), Forward state
25 PIM: Building Join/Prune message for 239.255.0.1

上記の行 1 で、グループ 239.255.0.1 のマルチキャスト受信側が R1 に参加しています。 これにより、mroute テーブルに(*, 239.255.0.1)のエントリが登録されます。 行 2 で、マルチキャスト受信側が R2(RP)に IGMP Join を送信し、共有ツリーへの参加を要求します。

IGMP Join が R2 に到着すると、R2 は(*, 239.255.0.1)の mroute を登録します。これは R2 の出力の行 12 ~ 15 に当たります。

R2 の mrouting テーブルに(*, 239.255.0.1)が登録されると、R2 は Join/Prune メッセージを受信したインターフェイスを転送ステートとして発信インターフェイス リストに追加します。 次に、Join/Prune メッセージを受信したインターフェイスから RP-reachability メッセージを送信します。 このトランザクションは、R2 の出力の行 15 ~ 21 に当たります。

R1 はグループ 239.255.0.1 についての RP-reachable メッセージを受信し、RP の有効期限タイマーを更新します。 デフォルトでは、このメッセージ交換は 1 分おきに自動的に繰り返され、マルチキャストの転送ステートが更新されます。この処理は、R1 の出力の行 7 ~ 8 に当たります。

次の出力は、R2(RP)と R3 間の debug 出力です。 R3 に直接接続された送信元が、グループ 239.255.0.1 のパケット送信を開始します。

まず、R3 の出力を示します。

1 PIM: Check RP 192.168.7.2 into the (*, 239.255.0.1) entry 
2 PIM: Building Join/Prune message for 239.255.0.1 
3 PIM: For RP, Join-list: 192.168.7.2/32, RP-bit, WC-bit 
4 PIM: Send periodic Join/Prune to RP via 192.168.7.2 (Serial4/0) 
5 PIM: Received RP-Reachable on Serial4/0 from 192.168.7.2 
6 PIM: Update RP expiration timer (270 sec) for 239.255.0.1 
7 PIM: Send Register to 192.168.7.2 for 133.33.33.32, group 239.255.0.1 
8 PIM: Send Register to 192.168.7.2 for 133.33.33.32, group 239.255.0.1 
9 PIM: Received Join/Prune on Serial4/0 from 192.168.7.2 
10 PIM: Join-list: (133.33.33.32/32, 239.255.0.1), S-bit set 
11 PIM: Add Serial4/0/192.168.7.2 to (133.33.33.32/32, 239.255.0.1), Forward state    
12 PIM: Received Register-Stop on Serial4/0 from 192.168.7.2 
13 PIM: Clear register flag to 192.168.7.2 for (133.33.33.32/32, 239.255.0.1) 
14 PIM: Received Register-Stop on Serial4/0 from 192.168.7.2 
15 PIM: Clear register flag to 192.168.7.2 for (133.33.33.32/32, 239.255.0.1)

次に RP である R2 の出力を示します。

16 PIM: Received Join/Prune on Serial0 from 192.168.7.1, to us 
17 PIM: Send RP-reachability for 239.255.0.1 on Serial0 
18 PIM: Received Register on Serial0 from 192.168.7.1 for 133.33.33.32, group 239.255.0.1 
19 PIM: Forward decapsulated data packet for 239.255.0.1 on Ethernet0 
10 PIM: Forward decapsulated data packet for 239.255.0.1 on Serial0 
21 PIM: Send Join on Serial0 to 192.168.7.1 for (133.33.33.32/32, 239.255.0.1), S-bit 
22 PIM: Send Join on Serial0 to 192.168.7.1 for (133.33.33.32/32, 239.255.0.1), S-bit 
23 PIM: Send Register-Stop to 192.168.7.1 for 133.33.33.32, group 239.255.0.1
24 PIM: Received Join/Prune on Serial0 from 192.168.7.1, to us 
25 PIM: Prune-list: (133.33.33.32/32, 239.255.0.1) 
26 PIM: Received v2 Join/Prune on Ethernet0 from 192.168.10.1, to us 
27 PIM: Join-list: (*, 239.255.0.1) RP 192.168.7.2, RPT-bit set, WC-bit set, S-bit set 
28 PIM: Add Ethernet0/192.168.10.1 to (*, 239.255.0.1), Forward state 
29 PIM: Add Ethernet0/192.168.10.1 to (133.33.33.32/32, 239.255.0.1) 
30 PIM: Join-list: (133.33.33.32/32, 239.255.0.1), S-bit set 
31 PIM: Add Ethernet0/192.168.10.1 to (133.33.33.32/32, 239.255.0.1), Forward state
32 PIM: Building Join/Prune message for 239.255.0.1 
33 PIM: For 192.168.7.1, Join-list: 133.33.33.32/32 
34 PIM: For 192.168.10.1, Join-list: 192.168.9.1/32 
35 PIM: Send v2 periodic Join/Prune to 192.168.10.1 (Ethernet0) 
36 PIM: Send periodic Join/Prune to 192.168.7.1 (Serial0) 
37 PIM: Received Join/Prune on Serial0 from 192.168.7.1, to us 
38 PIM: Join-list: (*, 239.255.0.1) RP 192.168.7.2, RP-bit set, WC-bit set, S-bit set 
39 PIM: Add Serial0/192.168.7.1 to (*, 239.255.0.1), Forward state 
40 PIM: Add Serial0/192.168.7.1 to (133.33.33.32/32, 239.255.0.1) 
41 PIM: Add Serial0/192.168.7.1 to (192.168.9.1/32, 239.255.0.1) 
42 PIM: Join-list: (192.168.9.1/32, 239.255.0.1), S-bit set 
43 PIM: Add Serial0/192.168.7.1 to (192.168.9.1/32, 239.255.0.1), Forward state
44 PIM: Join-list: (*, 239.255.0.1) RP 192.168.7.2, RP-bit set, WC-bit set, S-bit set 
45 PIM: Add Serial0/192.168.7.1 to (*, 239.255.0.1), Forward state

上記の行 1 は、Ethernet0/0 で送信元に直接接続されている R3 が、グループ 239.255.0.1 宛てのマルチキャスト トラフィックを受信したことを示しています。 R3 は(* , 239.255.0.1)のエントリを作成し、RP に Join メッセージを送信します。

行 16 ~ 17 は、RP である R2 も Join/Prune メッセージを受信し、RP 到着可能性情報を R3 に送信したことを示しています。

行 5 ~ 6 は、RP 到達可能性情報の受信後、R3 が RP 有効期限タイマーを更新したことを示しています。 上記の行 7 ~ 8 は、R3 が(*,G)エントリを使用し、RP へのデータを Register パケットにカプセル化して、グループ 239.255.0.1 への送信を開始する送信元で送信したことを示しています。

行 18 ~ 20 は、R2 が Register パケットを受信してカプセル化解除し、ルーティング テーブルに存在する(*, 239.255.0.1)エントリを使用してツリーの下流にパケットを転送したことを示しています。

行 21 および 29 は、R2 が R3 に向けて Join メッセージを送信し、mroute テーブルに(S,G)(133.33.33.32, 239.255.0.1)エントリを登録したことを示しています。

行 9 ~ 11 は、R3 が R2 から Join メッセージを受信し、mroute テーブルに(S,G)(133.33.33.32,239.255.0.1)エントリを登録し、RP に接続されているインターフェイスを転送モードに設定したことを示しています。これにより、送信元に向かう(S,G)マルチキャスト SPT ツリーが構築されます。

行 23 は、R2 が SPT による(S,G)トラフィックの受信を開始し、Register-Stop メッセージ(および Join メッセージ)を送信元に向け送信したことを示しています。

行 12 ~ 15 は、R3 が Register-Stop メッセージを受信し、登録フラグを消去し、カプセル化(S,G)トラフィックを停止したことを示しています。

マルチキャスト ツリーを維持するため、RP と R3 間では Join/Prune メッセージが定期的に交換されます。

関連するシスコ サポート コミュニティ ディスカッション

シスコ サポート コミュニティは、どなたでも投稿や回答ができる情報交換スペースです。


関連情報


Document ID: 13726