この製品のドキュメントセットは、偏向のない言語を使用するように配慮されています。このドキュメントセットでの偏向のない言語とは、年齢、障害、性別、人種的アイデンティティ、民族的アイデンティティ、性的指向、社会経済的地位、およびインターセクショナリティに基づく差別を意味しない言語として定義されています。製品ソフトウェアのユーザインターフェイスにハードコードされている言語、RFP のドキュメントに基づいて使用されている言語、または参照されているサードパーティ製品で使用されている言語によりドキュメントに例外が存在する場合があります。シスコのインクルーシブ ランゲージの取り組みの詳細は、こちらをご覧ください。
シスコは世界中のユーザにそれぞれの言語でサポート コンテンツを提供するために、機械と人による翻訳を組み合わせて、本ドキュメントを翻訳しています。ただし、最高度の機械翻訳であっても、専門家による翻訳のような正確性は確保されません。シスコは、これら翻訳の正確性について法的責任を負いません。原典である英語版(リンクからアクセス可能)もあわせて参照することを推奨します。
このドキュメントでは、マルチキャストネットワークのトラブルシューティングに使用されるさまざまなツールとテクニックについて説明します。
このドキュメントに関する固有の要件はありません。
このドキュメントの内容は、特定のソフトウェアやハードウェアのバージョンに限定されるものではありません。
このドキュメントの情報は、特定のラボ環境にあるデバイスに基づいて作成されました。このドキュメントで使用するすべてのデバイスは、クリアな(デフォルト)設定で作業を開始しています。本稼働中のネットワークでは、各コマンドによって起こる可能性がある影響を十分確認してください。
表記法の詳細については、『シスコ テクニカル ティップスの表記法』を参照してください。
マルチキャスト ネットワークをトラブルシューティングする際は、ネットワークで使用されているシグナリング プロトコルとパケット フローを考慮することが役立ちます。シグナリング プロトコルは、マルチキャスト セッションの設定と切断に使用されます(PIM デンス モード、PIM スパース モード、DVMRP など)。パケット フローとは、シグナリング プロセスで作成される転送テーブルに基づいて送信元と受信者の間で実際に行われる、マルチキャスト パケットの送信、複製、受信を意味します。
次の表は、トラブルシューティング対象の各情報を確認し、表の各セクションが正しく機能していることを確認するのに役立ちます。
出典 | Network | 受信者 | |
---|---|---|---|
シグナリング | 適用外 | ネットワーク シグナリングの確認 | 受信側シグナリングの確認 |
パケット フロー | 送信元パケット フローの確認 | ネットワーク パケット フローの確認 | 受信側パケット フローの確認 |
次のサブセクションでは、一般的な問題のチェックと修正に使用できるトラブルシューティングツールについて詳しく説明します。
送信元がパケットを送信し、正しいパケットフィールドが挿入されたかどうかを判断するには、次の手順を実行します。
ホスト上のインターフェイス カウンタを確認します。最初に、発信元ホストのインターフェイスカウンタを調べ(UNIXシステムの場合は、netstatコマンドを使用)、パケットを送信しているかどうかを確認します。送信していない場合は、ホスト スタックおよびアプリケーションに不良構成やバグがあるかどうかを調べます。
show ip igmp groups <interface-name>コマンドを使用して、上流に位置するルータが、送信元に直接接続されているインターフェイスでJoin Membership Reportを受信したかどうかを確認します。
マルチキャストアプリケーションのパケットの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しきい値を確認します。
show ip mroute count および show ip mroute active コマンドを使用して、上流に位置するルータまたはスイッチで、送信元からのマルチキャスト パケットが観測されているかどうかを調べます。コマンド出力には、(S,G) ペアごとのトラフィック フロー統計情報が表示されます。統計情報にトラフィックが示されていない場合は、受信側シグナリングを確認します。
上流に位置する最初のルータで、detail または acl 引数で粒度を指定した debug ip mpacket コマンドを使用します。
注意:このコマンドは、ネットワーク上に大量のマルチキャストトラフィックが流れている場合には注意して使用してください。必要な場合に限り、ルータ上で debug ip mpacket コマンドを使用してください。detail 引数は、debug 出力にパケット ヘッダーを含めるために使用します。アクセス リストは、特定の送信元からのトラフィックの有無を調べるために使用します。このコマンドは、他のトラフィックのパフォーマンスに重大な影響を与える可能性があることに注意してください。
これは、ネットワークで最も複雑で重要なトラブルシューティングです。確認手順は、使用されているネットワーク シグナリング プロトコル(PIM スパース モード、PIM デンス モード、DVMRP など)によって異なります。推奨される手順は、このセクションで説明する段階的手法です。
PIM スパース モードをトラブルシューティングするには、以下の手順に従います。
すべてのマルチキャスト ルータで IP マルチキャスト ルーティングが有効にされていることを確認します。
show ip pim neighborコマンドを使用して有効期限タイマーとモードを調べ、PIMネイバー確立が成功することを確認し、PIMネイバー確立の妨げとなる可能性のある接続とタイマーの問題がないかどうかを調べます。必要に応じて、ip pim [version] [dense-mode] [sparse-mode] [sparse-dense-mode] interface level サブコマンドを使用して正しいモードとバージョンを設定し、PIM ネイバー確立が成功するようにします。
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 が設定されている場合のみです。
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コマンドを使用して、マルチキャストトレースをホップバイホップで確認します
受信側シグナリングを確認するには、以下の手順に従います。
上流に位置し、受信側インターフェイスに接続された最初のルータで show ip igmp groups コマンドを使用して、そのインターフェイスがグループに参加していることを確認します。
show ip igmp interface コマンドを使用して、インターフェイスの IGMP バージョンを確認します。
注:IGMPバージョン1で設定されたルータは、ホストから受信したIGMPバージョン2のパケットを無効と見なすことに注意してください。これらの IGMP パケットは、ルータがホストから IGMP バージョン 1 のパケットを受信するまでグループに参加しません。
受信側パケット フローを確認するには、以下の手順に従います。
UNIX システムで netstat コマンドを使用して、受信側インターフェイスの統計情報を確認します。
TCP/IP スタックがインストールされて適切に設定されていることを確認します。
マルチキャスト受信側クライアント アプリケーションがインストールされて適切に設定されていることを確認します。
マルチアクセス セグメントで重複するマルチキャスト パケットがないかどうか観察します。
このセクションで説明するコマンドは、トラブルシューティング時、特にネットワークパケットフローをテストしてマルチキャストネットワークの障害ポイント(POP)を検出する場合にも役立ちます。
このコマンドは、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
このコマンドは、マルチキャスト ネイバー ルータ情報、ルータの機能とコード バージョン、マルチキャスト インターフェイス情報、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 対応
このコマンドは、送信元から受信側までのマルチキャスト パスを表示し、ネットワーク内のポイント間のパスをトレースして各ノードの 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を発行し、すべてのメンバーが応答するからです。
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コマンドについての詳細は、『Cisco IOS IPマルチキャストコマンドリファレンスガイド』を参照してください。
ヒント: show コマンドの応答が遅い場合、ルータが show コマンド内の IP アドレスについて IP ドメイン ルックアップを行っている可能性があります。IPドメインルックアップを無効にするには、ルータグローバルコンフィギュレーションモードでno ip domain-lookupコマンドを使用して、IPドメインルックアップを無効にします。これにより、IP ドメイン ルックアップが停止して、show コマンドの出力速度が向上します。
このコマンドは、ルータに直接接続されているマルチキャスト グループと、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
このコマンドは、インターフェイスに関するマルチキャスト関連情報を表示したり、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)
このコマンドは、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 コマンドを使用します。
このコマンドを使用して、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
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
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
このコマンドを使用して、しきい値を超えたアクティブなトラフィックの送信元とグループを表示します。トラブルシューティング時にこのコマンドを使用して、アクティブな送信元グループ、各送信元グループ(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)
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
このコマンドを使用することで、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 コマンドを使用して「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:
ユニキャスト ルーティング テーブルを調べて、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
マルチキャスト グループ範囲別の 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』を参照してください。
送受信された 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 のバージョンを判断することもできます。
送受信されたすべての 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 値およびパケットがドロップされた理由を調べるには、このコマンドが役立ちます。
注意:パケットレベルのデバッグ出力をオンにする場合、特にルータが大量のマルチキャストパケットを処理している場合は、注意が必要です。
このコマンドは、ルーティング テーブルのメンテナンスに役立ちます。このコマンドを使用して、(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
送受信された 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 メッセージが交換されます。
改定 | 発行日 | コメント |
---|---|---|
2.0 |
28-Nov-2023 |
再認定 |
1.0 |
10-Dec-2001 |
初版 |