内容

はじめに

前提条件

要件

使用するコンポーネント

表記法

トラブルシューティング戦略

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

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

PIMスパースモードのトラブルシューティング

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

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

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

Power CLIツール

mstat

mrinfo

mtrace

ping

show コマンド

show ip igmp groups

show ip igmp interface

show ip pim neighbor

show ip pim interface

show ip mroute summary

show ip mroute

show ip mroute active

show ip rpf

show ip mcache

show ip mroute count

show ip route

show ip pim rp mapping

デバッグ コマンド

debug ip igmp

debug ip mpacket

debug ip mrouting

debug ip pim

関連情報

はじめに

このドキュメントでは、マルチキャストネットワークのトラブルシューティングに使用されるさまざまなツールとテクニックについて説明します。

前提条件

要件

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

使用するコンポーネント

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

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

表記法

表記法の詳細については、『シスコ テクニカル ティップスの表記法』を参照してください。

トラブルシューティング戦略

マルチキャスト ネットワークをトラブルシューティングする際は、ネットワークで使用されているシグナリング プロトコルとパケット フローを考慮することが役立ちます。シグナリング プロトコルは、マルチキャスト セッションの設定と切断に使用されます（PIM デンス モード、PIM スパース モード、DVMRP など）。パケット フローとは、シグナリング プロセスで作成される転送テーブルに基づいて送信元と受信者の間で実際に行われる、マルチキャスト パケットの送信、複製、受信を意味します。

次の表は、トラブルシューティング対象の各情報を確認し、表の各セクションが正しく機能していることを確認するのに役立ちます。

出典

Network

受信者

シグナリング

適用外

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

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

パケット フロー

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

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

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

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

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

送信元がパケットを送信し、正しいパケットフィールドが挿入されたかどうかを判断するには、次の手順を実行します。

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つ増えます。show ip igmp interface <interface-name>コマンドを使用して、インターフェイスのTTLしきい値を確認します。

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

5. 上流に位置する最初のルータで、detail または acl 引数で粒度を指定した debug ip mpacket コマンドを使用します。

注意：このコマンドは、ネットワーク上に大量のマルチキャストトラフィックが流れている場合には注意して使用してください。必要な場合に限り、ルータ上で debug ip mpacket コマンドを使用してください。detail 引数は、debug 出力にパケット ヘッダーを含めるために使用します。アクセス リストは、特定の送信元からのトラフィックの有無を調べるために使用します。このコマンドは、他のトラフィックのパフォーマンスに重大な影響を与える可能性があることに注意してください。

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

これは、ネットワークで最も複雑で重要なトラブルシューティングです。確認手順は、使用されているネットワーク シグナリング プロトコル（PIM スパース モード、PIM デンス モード、DVMRP など）によって異なります。推奨される手順は、このセクションで説明する段階的手法です。

PIMスパースモードのトラブルシューティング

PIM スパース モードをトラブルシューティングするには、以下の手順に従います。

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

2. show ip pim neighborコマンドを使用して有効期限タイマーとモードを調べ、PIMネイバー確立が成功することを確認し、PIMネイバー確立の妨げとなる可能性のある接続とタイマーの問題がないかどうかを調べます。必要に応じて、ip pim [version] [dense-mode] [sparse-mode] [sparse-dense-mode] interface level サブコマンドを使用して正しいモードとバージョンを設定し、PIM ネイバー確立が成功するようにします。

3. show ip pim rp mapping コマンドを使用して、RP-Group マッピングが正しいこと、自動 RP が設定されている場合はネイバー確立タイマーを確認します。自動 RP 障害が発生しているかどうかを調べるには、debug ip pim auto-rp コマンドを利用できます。出力に PIM Group-to-RP Mappings が示されない場合は、自動 RP の設定を確認するか、ip pim rp-address ip address of RP [access-list] [named-accesslist] [override] コマンドを使用して、グループと RP の静的マッピングを設定します。自動 RP を設定するには、ip pim send-rp-announce interface-id scope TTL value コマンドと ip pim send-rp-discovery interface-id scope TTL value コマンドを使用します。これらのコマンドを設定する必要があるのは、自動 RP が設定されている場合のみです。

4. show ip rpf <ip address of source>コマンドを使用して、送信元アドレスに対するRPF障害を確認します。PIM デンス モードと PIM スパース モードでは、トラフィックが非 RPF ポイントツーポイント インターフェイスに到達すると、プルーニング メッセージが送信元に返されます。PIM ネットワークで考えられる障害の原因を識別するには、debug ip pim コマンドが役立ちます。このコマンドは、通常の出力を表示される出力と比較します。この出力で PIM 希薄モードの 3 つのステージ（参加、登録、SPT スイッチオーバー）を識別できます。show ip mroute コマンドを使用することで、Outgoing Interface リストの NULL エントリと、mroute テーブルのプルーニング エントリを観察できます。

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

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

- mtraceコマンドを使用して、マルチキャストトレースをホップバイホップで確認します

- mstat

- ping

- show ip mroute count

- show ip mroute active

- debug ip mpacket

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

受信側シグナリングを確認するには、以下の手順に従います。

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. マルチアクセス セグメントで重複するマルチキャスト パケットがないかどうか観察します。

Power CLIツール

このセクションで説明するコマンドは、トラブルシューティング時、特にネットワークパケットフローをテストしてマルチキャストネットワークの障害ポイント(POP)を検出する場合にも役立ちます。

mstat

このコマンドは、ASCII グラフ形式でマルチキャスト パスを表示します。このコマンドはネットワーク内の 2 つのポイントの間のパスをトレースし、ナットワーク内のノードごとに、ドロップ/重複カウント、TTL、および遅延を表示します。これは、ネットワーク内の輻輳ポイントを特定する必要がある場合、またはドロップ/重複カウントが高いルータに焦点を当てる必要がある場合に非常に便利です。重複は、出力では負のドロップとして示されます。

Router#mstat lwei-home-ss2 172.16.58.88 224.0.255.255

Type escape sequence to abort

Mtrace from 172.16.143.27 to 172.16.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

172.16.143.27    172.16.62.144    All Multicast Traffic     From 172.16.143.27

|       __/  rtt 48   ms   Lost/Sent = Pct  Rate     To 224.0.255.255

v      /     hop 48   ms   ---------------------     --------------------

172.16.143.25   lwei-cisco-isdn.cisco.com

|     ^      ttl   1

v     |      hop 31   ms    0/12 = 0%      1 pps    0/1 = --%  0 pps

172.16.121.84

172.16.121.45   eng-frmt12-pri.cisco.com

|     ^      ttl   2

v     |      hop -17  ms    -735/12 = --%      1 pps    0/1 = --%  0 pps

172.16.121.4

172.16.5.27     eng-cc-4.cisco.com

|     ^      ttl   3

v     |      hop -21  ms    -678/23 = --%      2 pps    0/1 = --%  0 pps

172.16.5.21

172.16.62.130   eng-ios-2.cisco.com

|     ^      ttl   4

v     |      hop 5    ms    605/639 = 95%      63 pps    1/1 = --%  0 pps

172.16.62.144

172.16.58.65    eng-ios-f-5.cisco.com

|      \__   ttl   5

v         \  hop 0    ms        4         0 pps           0    0 pps

172.16.58.88    172.16.62.144

Receiver      Query Source

mrinfo

このコマンドは、マルチキャスト ネイバー ルータ情報、ルータの機能とコード バージョン、マルチキャスト インターフェイス情報、TTL しきい値、メトリック、プロトコル、ステータスを表示します。マルチキャスト ネイバーを確認し、双方向ネイバー隣接関係が確立されていること、そしてトンネルが双方向で稼働していることを確認する場合には、このコマンドが役立ちます。

Router#mrinfo

192.168.7.37 (b.cisco.com) [version cisco 11.1] [flags: PMSA]:

192.168.7.37 -> 192.168.7.34 (s.cisco.com) [1/0/pim]

192.168.7.37 -> 192.168.7.47 (d.cisco.com) [1/0/pim]

192.168.7.37 -> 192.168.7.44 (d2.cisco.com) [1/0/pim]

192.168.9.26  -> 192.168.9.29 (su.bbnplanet.net) [1/32/pim]

出力に示されるフラグの意味は以下のとおりです。

- P = プルーニング対応

- M = mtrace 対応

- S = SNMP 対応

- A = 自動 RP 対応

mtrace

このコマンドは、送信元から受信側までのマルチキャスト パスを表示し、ネットワーク内のポイント間のパスをトレースして各ノードの TTL しきい値と遅延を示します。トラブルシューティング時にmtraceコマンドを使用して、マルチキャストトラフィックフローが停止する場所を見つけ、マルチキャストトラフィックのパスを確認し、準最適パスを特定します。

Router#mtrace 192.168.215.41 192.168.215.67 239.254.254.254

Type escape sequence to abort.

Mtrace from 192.168.215.41 to 192.168.215.67 via group 239.254.254.254

From source (?) to destination (?)

Querying full reverse path...

0  192.168.215.67

-1  192.168.215.67 PIM  thresh^ 0  0 ms

-2  192.168.215.74 PIM  thresh^ 0  2 ms

-3  192.168.215.57 PIM  thresh^ 0  894 ms

-4  192.168.215.41 PIM  thresh^ 0  893 ms

-5  192.168.215.12 PIM  thresh^ 0  894 ms

-6  192.168.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コマンドについての詳細は、『Cisco IOS IPマルチキャストコマンドリファレンスガイド』を参照してください。

ヒント： show コマンドの応答が遅い場合、ルータが show コマンド内の IP アドレスについて IP ドメイン ルックアップを行っている可能性があります。IPドメインルックアップを無効にするには、ルータグローバルコンフィギュレーションモードでno ip domain-lookupコマンドを使用して、IPドメインルックアップを無効にします。これにより、IP ドメイン ルックアップが停止して、show コマンドの出力速度が向上します。

show ip igmp groups

このコマンドは、ルータに直接接続されているマルチキャスト グループと、Internet Group Management Protocol（IGMP）で学習されたマルチキャスト グループを特定します。このコマンドを使用することで、ルータ インターフェイスで実際にターゲット グループに参加している送信元または受信側を確認できます。Last Reporter列には、IGMPホストが1つだけ表示されます。これは、その特定のグループに対するPIMルータからのIGMPクエリに対する応答として、要求されていないIGMP JoinまたはIGMPレポートを送信したことを示します。グループアドレスごとに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-mode|sparse-dense-mode}を設定するとデフォルトで有効になります。

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(R) ソフトウェアで検出された PIM（Protocol Independent Multicast）ネイバーを一覧表示する場合に使用します。

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-priority <0-4294967294>インターフェイスコマンドを使用します。DR プライオリティはデフォルトで 1 に設定されます。相互運用性を確保するため、DRプライオリティ機能をサポートしていない古いバージョンのCisco IOSがPIMネイバーで実行されている場合、「DR Prior」列にはNと表示されます。ネイバーがインターフェイスにNを示す唯一のルータである場合は、どのルータが実際に最大のIPアドレスを持っているかに関係なく、そのルータがDRになります。この列にNが表示されているPIMネイバーが複数ある場合、その中で最も高いIPアドレスが選出されます。

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

この列には、DR に加え、その PIM ネイバーがサポートしているすべての機能が一覧表示されます。

DR - この PIM ネイバーが代表ルータであることを示す。

B：双方向 PIM（Bidir-PIM）対応

S：状態更新対応（デンス モードにのみ適用）

トラブルシューティングの際に、すべてのネイバーが稼働していること、それらのネイバーが適切なモード、バージョン、期限タイマーを使用していることを確認するには、このコマンドを使用します。また、ルータ設定を確認したり、show ip pim interface コマンドを使用してモード（PIM スパースまたはデンス モード）を確認することもできます。PIM クエリ メッセージ交換を観察するには、debug ip pim コマンドを使用します。

show ip pim interface

このコマンドを使用して、PIM に設定されているインターフェイスに関する情報を表示します。さらに、このコマンドを使用して、インターフェイスに正しい PIM モード（デンスまたはスパース）が設定されていること、ネイバー カウントが正しいこと、代表ルータ（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

(192.168.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

(192.168.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: 192.168.33.32 (?)

Rate: 10 pps/115 kbps(1sec), 235 kbps(last 23 secs), 87 kbps(life avg)

show ip rpf

IP マルチキャスト ルーティングのリバース パス フォワーディング（RPF）状況を表示するには、このコマンドを使用します。トラブルシューティングの際は、このコマンドを使用して RPF 情報が正しいことを確認します。情報が正しくない場合は、送信元アドレスのユニキャスト ルーティング テーブルを確認します。また、送信元アドレスに対して ping コマンドと trace コマンドを使用してユニキャスト ルーティングが機能していることを確認します。Distance Vector Multicast Routing Protocol(DVMRP)ルートまたはスタティックmrouteを使用して、ユニキャストマルチキャストの不整合を修正できます。

R1#show ip rpf 192.168.33.32

RPF information for ? (192.168.33.32)

RPF interface: Ethernet0

RPF neighbor: ? (192.168.10.2)

RPF route/mask: 192.168.33.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

(192.168.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 コマンドを使用して「Outgoing Interface」リストで NULL エントリと 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: 192.168.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    192.168.33.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（静的または自動 RP）学習ソースとマッピングが正しいことを確認する場合は、このコマンドを使用します。エラーを見つけた場合は、ローカル ルータ設定または自動 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 コマンドの包括的な情報については、『Cisco IOS Debug Command Reference』を参照してください。

debug ip igmp

送受信された IGMP パケットならびに IGMP ホスト関連のイベントを表示するには、debug ip 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

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

このdebug出力は、ルータインターフェイスがクエリーを送信していることを確認し、クエリー間隔（以前のケースでは60秒）を決定する場合に役立ちます。また、このコマンドで、クライアントが使用している IGMP のバージョンを判断することもできます。

debug ip mpacket

送受信されたすべての IP マルチキャスト パケットを表示するには、debug ip mpacket コマンドを使用します。このコマンドの 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=192.168.33.32 (Ethernet0) d=239.255.0.1 (Ethernet1) len 906, mforward

このコマンドはマルチキャスト パケットをデコードして、パケットが転送（mforward）されたものなのか、ドロップされたものなのかを示します。ネットワーク内のパケット フローの問題をデバッグして、TTL 値およびパケットがドロップされた理由を調べるには、このコマンドが役立ちます。

注意：パケットレベルのデバッグ出力をオンにする場合、特にルータが大量のマルチキャストパケットを処理している場合は、注意が必要です。

debug ip mrouting

このコマンドは、ルーティング テーブルのメンテナンスに役立ちます。このコマンドを使用して、(S,G) ルートが mrouting テーブルにインストールされているかどうか、インストールされていない場合はその理由を確認できます。このコマンドで出力される重要な情報は、RPF インターフェイスです。RPF チェックが失敗すると、(S,G) ルートの 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 (192.168.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

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

このセクションには、PIM スパース モードのデバッグ出力を理解できるよう、例を用いて一般的なデバッグ出力の内容を説明します。

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 は Join/Prune メッセージを RP アドレス 192.168.7.2 に送信します。RP（R2）はこれに対し、グループ 239.255.0.1 の R1 に 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.168.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を送信して、共有ツリーに参加します。

R2 出力の行 12 から行 15 に示されているように、IGMP Join が R2 に到着すると、R2 は (*, 239.255.0.1) mroute をインストールします。

R2は、mroutingテーブルに(*, 239.255.0.1)をインストールすると、Join/Pruneメッセージの送信元インターフェイスをforward状態のOutgoing-interface-list(OIL)に追加します。その後、そのインターフェイス（Join/Prune メッセージの送信元）に RP 到達可能性メッセージを返します。このトランザクションは、R2 出力の行 15 から行 21 に示されています。

R1 はグループ 239.255.0.1 の RP 到達可能性メッセージを受信すると、RP の有効期限タイマーを更新します。デフォルトでは、この交換が 1 分ごとに 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 192.168.33.32, group 239.255.0.1

8 PIM: Send Register to 192.168.7.2 for 192.168.33.32, group 239.255.0.1

9 PIM: Received Join/Prune on Serial4/0 from 192.168.7.2

10 PIM: Join-list: (192.168.33.32/32, 239.255.0.1), S-bit set

11 PIM: Add Serial4/0/192.168.7.2 to (192.168.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 (192.168.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 (192.168.33.32/32, 239.255.0.1)

R2（RP）での出力は以下のとおりです。

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 192.168.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 (192.168.33.32/32, 239.255.0.1), S-bit

22 PIM: Send Join on Serial0 to 192.168.7.1 for (192.168.33.32/32, 239.255.0.1), S-bit

23 PIM: Send Register-Stop to 192.168.7.1 for 192.168.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: (192.168.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 (192.168.33.32/32, 239.255.0.1)

30 PIM: Join-list: (192.168.33.32/32, 239.255.0.1), S-bit set

31 PIM: Add Ethernet0/192.168.10.1 to (192.168.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: 192.168.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 (192.168.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) エントリを作成し、Join メッセージを RP に送信します。

行 16 と行 17 に、RP である R2 も Join/Prune メッセージを受信し、RP 到達可能性情報を R3 に返していることが示されています。

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

行 18 と行 20 では、R2 が Register パケットを受信し、カプセル化を解除してから、ルート テーブル内の (*, 239.255.0.1) エントリが存在するツリーに転送します。

行21と行29は、R2がR3にJoinメッセージを送信し、(S,G)(192.168.33.32, 239.255.0.1)エントリをmrouteテーブルにインストールすることを示しています。

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

行 23 で、R2 が (S,G) トラフィック ダウン SPT を受信し始めると、送信元に Register-Stop メッセージ（および Join メッセージ）を送信します。

行 12 から行 15 に、R3 が Register-Stop メッセージを受信して、レジスタ フラグをクリアし、カプセル化 (S,G) トラフィックを停止したことが示されています。

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

関連情報

- IP マルチキャストのトラブルシューティング ガイド

- マルチキャスト クイックスタート設定ガイド

- IP マルチキャストに関するサポートページ

- IP ルーティングに関するサポート ページ

- シスコのテクニカルサポートとダウンロード