内容

はじめに

前提条件

要件

使用するコンポーネント

背景説明

トポロジ

コンフィギュレーション

コントロールプレーンの検証

マルチキャスト受信側がIGMPメンバーシップレポートを送信

PIMスパースモード共有ツリーの作成

オーバーレイのPIMネイバー

エニーキャストRPは(*,G)を作成

マルチキャストソース登録

MSDPソースアドバタイズメント

最短パスツリー(SPT)カットオーバー

データプレーン検証（プラットフォームに依存しない）

ソース側の検証

ソース登録

受信側の確認

LHR PIM(*,G)の検証

LHR PIM共有ツリーの検証

MFIB転送：発信側の検証

MFIB転送：受信側の確認

データプレーンの検証（プラットフォームによって異なります）

(S,G)作成 – CPUパントパス

Mrouteハードウェアプログラミング – IOS Mroute

Mrouteハードウェアプログラミング – IOS MFIB

Mrouteハードウェアプログラミング – RP MFIB

Mrouteハードウェアプログラミング – FP MFIB

Mrouteハードウェアプログラミング – Mrouteオブジェクト

Mrouteハードウェアプログラミング – Mlistオブジェクト

Mrouteハードウェアプログラミング – FED Mroute

はじめに

このドキュメントでは、SDアクセス(SDA)ファブリックでのヘッドエンドレプリケーションをトラブルシューティングする方法について説明します。

前提条件

要件

次の項目に関する知識があることが推奨されます。

- インターネットプロトコル(IP)転送

- ロケータ/ID分離プロトコル(LISP)

- Protocol Independent Multicast(PIM)スパースモード

使用するコンポーネント

- Cisco IOS® XE 17.10.1上のC9000v

- Cisco Catalyst Centerバージョン2.3.5.3

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

このドキュメントは、次のバージョンのハードウェアとソフトウェアにも使用できます。

- C9200

- C9300

- C9400

- C9500

- C9600

- Cisco IOS® XE 16.12以降

背景説明

SDAヘッドエンドレプリケーションはオーバーレイマルチキャストの一形態であり、ファブリックデバイス間のマルチキャストトラフィックの伝送に使用され、マルチキャストトラフィックをユニキャストIPヘッダーにカプセル化します。ヘッドエンドレプリケーションでは、同じVLAN内または異なるVLAN内の送信元と受信機間のマルチキャストトラフィックをルーティングできます（同じVLANのマルチキャストをルーティングできます）。

同じファブリックエッジ上の送信側と受信側の間のマルチキャストトラフィックは、オーバーレイマルチキャスト（VXLANカプセル化）を使用して転送されませんが、ファブリックエッジによってローカルにルーティングされます。

オーバーレイマルチキャストのすべての形式（ヘッドエンドまたはネイティブ）は、224.0.0.0/24の範囲にあるグループ、またはTTL=1のグループのマルチキャストトラフィックをルーティングできません。これは、レイヤ2フラッディングによって処理されます

注：読み手が注意を引くことを意味します。役立つ情報や、このマニュアル以外の参照資料などを紹介しています。

注：プラットフォーム(fed)のコマンドは異なる場合があります。コマンドは、「show platform fed <active|standby>」と「show platform fed switch <active|standby>」です。になります。例に示されている構文が解析できない場合は、バリアント型を試してください。

トポロジ

Network Topology

このトポロジでは、次のようになります。

- 10.47.10と10.47.1.11は、仮想ネットワーク(VN)/VRF内の2台の間のMulticast Source Discovery Protocol(MSDP)を使用するAnycast Rendezvous Point(RP)としても機能するコロケート境界です。

- 10.47.1.12と10.47.1.13はファブリックエッジノード

- 10.47.7.2はマルチキャスト送信元です

- 10.47.7.3はマルチキャスト受信側です

- 239.1.1.1はマルチキャストグループ宛先アドレス(GDA)です。

コンフィギュレーション

Cisco Catalyst Centerを使用して、SDAファブリックをデフォルト設定でプロビジョニングすることを前提としています。

- レプリケーションの実装はヘッドエンドレプリケーション

- コロケーション境界でのAny Source Multicast(ASM)マルチキャスト用のMSDPを使用したエニーキャストRP

Catalyst Centerからの設定が正常に行われた後、デバイスごとの関連する設定にはいくつかのセクションが含まれています。

ファブリックエッジ(10.47.1.12)の設定

ip multicast-routing vrf blue_vn

ip multicast vrf blue_vn multipath

!

interface LISP0.4100

vrf forwarding blue_vn

ip pim sparse-mode

end

!

interface Loopback4100

vrf forwarding blue_vn

ip address 10.47.6.4 255.255.255.255

ip pim sparse-mode

end

!

ip pim vrf blue_vn register-source Loopback4100

ip pim vrf blue_vn rp-address 10.47.6.1 ASM_ACL_IPV4_blue_vn_10.47.6.1

!

interface Vlan1025

description Configured from Cisco DNA-Center

mac-address 0000.0c9f.fb87

vrf forwarding blue_vn

ip address 10.47.7.1 255.255.255.0

ip helper-address 10.47.9.9

no ip redirects

ip pim passive

ip route-cache same-interface

ip igmp version 3

ip igmp explicit-tracking

no lisp mobility liveness test

lisp mobility blue-IPV4

end

!

ip access-list standard ASM_ACL_IPV4_blue_vn_10.47.6.1

10 permit 239.0.0.0 0.255.255.255

ファブリックエッジ(10.47.1.13)の設定

ip multicast-routing vrf blue_vn

ip multicast vrf blue_vn multipath

!

interface LISP0.4100

vrf forwarding blue_vn

ip pim sparse-mode

end

!

interface Loopback4100

vrf forwarding blue_vn

ip address 10.47.6.4 255.255.255.255

ip pim sparse-mode

end

!

ip pim vrf blue_vn register-source Loopback4100

ip pim vrf blue_vn rp-address 10.47.6.1 ASM_ACL_IPV4_blue_vn_10.47.6.1

!

interface Vlan1025

description Configured from Cisco DNA-Center

mac-address 0000.0c9f.fb87

vrf forwarding blue_vn

ip address 10.47.7.1 255.255.255.0

ip helper-address 10.47.9.9

no ip redirects

ip pim passive

ip route-cache same-interface

ip igmp version 3

ip igmp explicit-tracking

no lisp mobility liveness test

lisp mobility blue-IPV4

end

!

ip access-list standard ASM_ACL_IPV4_blue_vn_10.47.6.1

10 permit 239.0.0.0 0.255.255.255

コロケートされたBorder/エニーキャストRP(10.47.1.10)の設定

router bgp 69420

address-family ipv4 vrf blue_vn

aggregate-address 10.47.6.0 255.255.255.0 summary-only

!

router lisp

site site_uci

eid-record instance-id 4100 10.47.6.0/24 accept-more-specifics

!

ip multicast-routing vrf blue_vn

ip multicast vrf blue_vn multipath

!

interface LISP0.4100

vrf forwarding blue_vn

ip pim sparse-mode

end

!

interface Loopback4100

vrf forwarding blue_vn

ip address 10.47.6.1 255.255.255.255

ip pim sparse-mode

end

!

interface Loopback4600

vrf forwarding blue_vn

ip address 10.47.6.6 255.255.255.255

ip pim sparse-mode

end

!

ip pim vrf blue_vn rp-address 10.47.6.1 ASM_ACL_IPV4_blue_vn_10.47.6.1

ip pim vrf blue_vn register-source Loopback4100

!

ip access-list standard ASM_ACL_IPV4_blue_vn_10.47.6.1

10 permit 239.0.0.0 0.255.255.255

!

ip msdp vrf blue_vn peer 10.47.6.7 connect-source Loopback4600

ip msdp vrf blue_vn cache-sa-state

ip msdp vrf blue_vn originator-id Loopback4600

コロケートされたBorder/Anycast RP(10.47.1.11)の設定

router bgp 69420

address-family ipv4 vrf blue_vn

aggregate-address 10.47.6.0 255.255.255.0 summary-only

!

router lisp

site site_uci

eid-record instance-id 4100 10.47.6.0/24 accept-more-specifics

!

ip multicast-routing vrf blue_vn

ip multicast vrf blue_vn multipath

!

interface LISP0.4100

vrf forwarding blue_vn

ip pim sparse-mode

end

!

interface Loopback4100

vrf forwarding blue_vn

ip address 10.47.6.1 255.255.255.255

ip pim sparse-mode

end

!

interface Loopback4600

vrf forwarding blue_vn

ip address 10.47.6.7 255.255.255.255

ip pim sparse-mode

end

!

ip pim vrf blue_vn rp-address 10.47.6.1 ASM_ACL_IPV4__blue_vn_10.47.6.1

ip pim vrf blue_vn register-source Loopback4100

!

ip access-list standard ASM_ACL_IPV4_blue_vn_10.47.6.1

10 permit 239.0.0.0 0.255.255.255

!

ip msdp vrf blue_vn peer 10.47.6.6 connect-source Loopback4600

ip msdp vrf blue_vn cache-sa-state

ip msdp vrf blue_vn originator-id Loopback4600

コントロールプレーンの検証

次に、Internet Group Membership Protocol(IGMP)とPIMを確認します。

マルチキャスト受信側がIGMPメンバーシップレポートを送信

マルチキャスト受信側(10.47.7.3)は、マルチキャストトラフィックの受信に関心があることを示すために、IGMPメンバーシップレポート(MR)またはIGMP Joinを送信します。Embedded Packet Capture（EPC；組み込みパケットキャプチャ）を設定して、IGMP MRが受信されていることを確認できます。

Edge-2#monitor capture 1 interface GigabitEthernet1/0/5 IN

Edge-2#monitor capture 1 match any

Edge-2#monitor capture 1 buffer size 10

Edge-2#monitor capture 1 start

Edge-2#monitor capture 1 stop

Edge-1#show monitor capture 1 buff display-filter igmp brief

Starting the packet display ........ Press Ctrl + Shift + 6 to exi

145 63.730527 10.47.7.4 -> 239.1.1.1 IGMPv2 60 Membership Report group 239.1.1.1

次に、Fabric Edge（FE；ファブリックエッジ）が、マルチキャストを受信するVLANのPIM指定ルータ(DR)であることを確認します。これは、ラストホップルータ(LHR)とも呼ばれます。コマンド「show ip pim vrf <VN Name> interface vlan <vlan> detail | include PIM DRコマンドを使用します。

Edge-2#show ip pim vrf blue_vn interface vlan 1025 detail | i PIM DR

PIM DR: 10.47.7.1 (this system)

コマンド「show ip igmp vrf <VN Name> snooping group」を使用して、IGMPスヌーピングがIGMP MRをピックアップしたことを確認します。

Edge-1#show ip igmp vrf blue_vn snooping groups

Vlan Group           Type Version Port List

-----------------------------------------------------------------------

1025 239.255.255.254 igmp v2      Gi1/0/5

PIMスパースモード共有ツリーの作成

そのセグメント上のDRであるEdge-2は、エニーキャストRPに(*,G) PIM Joinを送信します。エニーキャストRPアドレスがLISPマップキャッシュで解決されない場合、LISP EID監視プロセスがLISPマップ要求をトリガーします。コマンド"show lisp instance-id <LISP L3 IID> ipv4/ipv6 eid-watch | RLOCの開始」

Edge-2#show lisp instance-id 4100 ipv4 eid-watch | begin RLOC

LISP IPv4 EID Watches for Table (RLOC mapping in vrf blue_vn IPv4) IID (4100), 1 watch entries

Watch entries for prefix 10.47.6.1/32

10.47.6.1, multicast

Edge-2#show lisp instance-id 4100 ipv4 map-cache 10.47.6.1

LISP IPv4 Mapping Cache for LISP 0 EID-table vrf blue_vn (IID 4100), 1 entries

10.47.6.1/32, uptime: 9w1d, expires: 20:19:57, via map-reply, complete

Sources: map-reply

State: complete, last modified: 9w1d, map-source: 10.47.1.10

Active, Packets out: 577721(21849998 bytes), counters are not accurate (~ 00:00:12 ago)

Locator Uptime State Pri/Wgt Encap-IID

10.47.1.10 9w1d up 10/10 -

Last up-down state change: 1w1d, state change count: 3

Last route reachability change: 9w1d, state change count: 1

Last priority / weight change: never/never

RLOC-probing loc-status algorithm:

Last RLOC-probe sent: 1w1d (rtt 272ms)

10.47.1.11 9w1d up 10/10 -

Last up-down state change: 9w1d, state change count: 1

Last route reachability change: 9w1d, state change count: 1

Last priority / weight change: never/never

RLOC-probing loc-status algorithm:

Last RLOC-probe sent: 1w1d (rtt 602ms)

Edge-2#show ip rpf vrf blue_vn 10.47.6.1

RPF information for (10.47.6.1)

RPF interface: LISP0.4100

RPF neighbor: ? (10.47.1.10)

RPF route/mask: 10.47.6.1/32

RPF type: unicast ()

Doing distance-preferred lookups across tables

Multicast Multipath enabled.

RPF topology: ipv4 multicast base

コマンド「show ip mroute vrf <VN Name> <multicast group>」を使用して、Edge-2の(*,G)エントリを検証します

Edge-2#show ip mroute vrf blue_vn 239.1.1.1

IP Multicast Routing Table

Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,

L - Local, P - Pruned, R - RP-bit set, F - Register flag,

T - SPT-bit set, J - Join SPT, M - MSDP created entry, E - Extranet,

X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,

U - URD, I - Received Source Specific Host Report,

Z - Multicast Tunnel, z - MDT-data group sender,

Y - Joined MDT-data group, y - Sending to MDT-data group,

G - Received BGP C-Mroute, g - Sent BGP C-Mroute,

N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,

Q - Received BGP S-A Route, q - Sent BGP S-A Route,

V - RD & Vector, v - Vector, p - PIM Joins on route,

x - VxLAN group, c - PFP-SA cache created entry,

* - determined by Assert, # - iif-starg configured on rpf intf,

e - encap-helper tunnel flag, l - LISP decap ref count contributor

Outgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join

t - LISP transit group

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 239.1.1.1), 4d05h/00:02:12, RP 10.47.6.1, flags: SC <-- Anycast RP IP address 10.47.6.1

Incoming interface: LISP0.4100, RPF nbr 10.47.1.10 <-- Reverse Path Forwarding (RPF) neighbor to get to the Anycast RP IP

Outgoing interface list:

Vlan1025, Forward/Sparse-Dense, 4d05h/00:02:12, flags: <-- Outgoing interface list (OIL) is populated via PIM Join or IGMP Membership Report

オーバーレイのPIMネイバー

ルーティングロケータ(RLOC)によって表され、LISPインターフェイスを介して到達可能なRPFネイバーは、VRF/VNにPIMネイバーとして追加されます。

次の点に注意してください。

- PIM (*,G) Joinを送信するために使用されるRPFチェックでは、2分間の有効期限タイマーでPIMネイバー作成がトリガーされます。2分間PIM Joinメッセージが送信されないと、ネイバーはタイムアウトします。

- PIM HelloメッセージはSDAオーバーレイで送信されないため、PIMは対応するRLOCのネイバー構造を明示的に作成する必要があります

Edge-2#show ip pim vrf blue_vn neighbor

PIM Neighbor Table

Mode: B - Bidir Capable, DR - Designated Router, N - Default DR Priority,

P - Proxy Capable, S - State Refresh Capable, G - GenID Capable,

L - DR Load-balancing Capable

Neighbor    Interface Uptime/Expires Ver DR

Address                                  Prio/Mode

10.47.1.10 LISP0.4100 4d23h/00:01:37 v2  0 /

エニーキャストRPは(*,G)を作成

Edge-2から受信したPIM (*,G)参加に基づいて、Border-1はEdge-2のRLOCに向けてOILを(*,G)を作成します

Border-1#show ip mroute vrf blue_vn 239.1.1.1

IP Multicast Routing Table

Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,

L - Local, P - Pruned, R - RP-bit set, F - Register flag,

T - SPT-bit set, J - Join SPT, M - MSDP created entry, E - Extranet,

X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,

U - URD, I - Received Source Specific Host Report,

Z - Multicast Tunnel, z - MDT-data group sender,

Y - Joined MDT-data group, y - Sending to MDT-data group,

G - Received BGP C-Mroute, g - Sent BGP C-Mroute,

N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,

Q - Received BGP S-A Route, q - Sent BGP S-A Route,

V - RD & Vector, v - Vector, p - PIM Joins on route,

x - VxLAN group, c - PFP-SA cache created entry,

* - determined by Assert, # - iif-starg configured on rpf intf,

e - encap-helper tunnel flag, l - LISP decap ref count contributor

Outgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join

t - LISP transit group

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 239.1.1.1), 4d23h/00:02:48, RP 10.47.6.1, flags: S

Incoming interface: Null, RPF nbr 0.0.0.0

Outgoing interface list:

LISP0.4100, 10.47.1.13, Forward/Sparse, 4d23h/00:02:33, flags: <-- RLOC of Edge-2

マルチキャストソース登録

マルチキャスト送信元10.47.7.2がマルチキャストトラフィックを送信し、これがEdge-1に入ります。Edge-1はパケットをCPUにパントして(S,G)ステートを作成し、Edge-1は送信元をエニーキャストRPに登録します。

Edge-1#monitor capture 1 interface GigabitEthernet1/0/4 IN

Edge-1#monitor capture 1 match any

Edge-1#monitor capture 1 buffer size 10

Edge-1#monitor capture 1 start

Edge-1#monitor capture 1 stop

Edge-1#show monitor capture 1 buffer brief

Starting the packet display ........ Press Ctrl + Shift + 6 to exit

1 0.000000 10.47.7.2 -> 239.1.1.1 ICMP 98 Echo (ping) request id=0x0007, seq=107/27392, ttl=5

2 0.355071 10.47.7.3 -> 239.1.1.1 ICMP 98 Echo (ping) request id=0x0007, seq=107/27392, ttl=5

3 1.096757 10.47.7.3 -> 239.1.1.1 ICMP 98 Echo (ping) request id=0x0007, seq=108/27648, ttl=5

4 1.102425 10.47.7.3 -> 239.1.1.1 ICMP 98 Echo (ping) request id=0x0007, seq=108/27648, ttl=5

Border-1がPIM登録によってマルチキャストパケットを受信すると、Border-1は(S,G)を取得し、これをMSDP経由でBorder-2にアドバタイズします

Border-1#show ip mroute vrf blue_vn 239.1.1.1 10.47.7.2

IP Multicast Routing Table

Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,

L - Local, P - Pruned, R - RP-bit set, F - Register flag,

T - SPT-bit set, J - Join SPT, M - MSDP created entry, E - Extranet,

X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,

U - URD, I - Received Source Specific Host Report,

Z - Multicast Tunnel, z - MDT-data group sender,

Y - Joined MDT-data group, y - Sending to MDT-data group,

G - Received BGP C-Mroute, g - Sent BGP C-Mroute,

N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,

Q - Received BGP S-A Route, q - Sent BGP S-A Route,

V - RD & Vector, v - Vector, p - PIM Joins on route,

x - VxLAN group, c - PFP-SA cache created entry,

* - determined by Assert, # - iif-starg configured on rpf intf,

e - encap-helper tunnel flag, l - LISP decap ref count contributor

Outgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join

t - LISP transit group

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

(10.47.7.2, 239.1.1.1), 00:02:26/00:00:34, flags: TA <-- A flag indicates that this is a candidate for MSDP advertisement

Incoming interface: LISP0.4100, RPF nbr 10.47.1.12

Outgoing interface list:

LISP0.4100, 10.47.1.13, Forward/Sparse, 00:02:26/00:02:36, flags:

MSDPソースアドバタイズメント

コマンド「show ip msdp vrf <VN name> sa-cache」を使用して、送信元のアクティブキャッシュを表示します。MSDPピアを表示するには、「show ip msdp vrf <VN name> summary」コマンドを使用できます

Border-1#show ip msdp vrf blue_vn sa-cache

MSDP Source-Active Cache - 1 entries

(10.47.7.2, 239.1.1.1), RP 10.47.6.7, BGP/AS 23456, 00:00:34/00:05:25, Peer 10.47.6.7

Border-1#show ip msdp vrf blue_vn summary

MSDP Peer Status Summary

Peer Address AS    State Uptime/  Reset SA   Peer Name

Downtime Count Count

10.47.6.7    23456 Up    1w1d     0     1

Border-2は、MSDPアナウンスを介してBorder-1から(S,G)情報を受信します。Border-2がEdge-2からPIM (*,G)参加を受信した場合、Border-2は(S,G)エントリを作成し、Edge-2のRLOCを指す(*,G)からLISP OILを継承します。経験則として、MSDP SAエントリは(*,G)が存在する場合にのみ、マルチキャストルーティング情報ベース(MRIB)にインストールされます。

Border-2#show ip msdp vrf blue_vn sa-cache

MSDP Source-Active Cache - 1 entries

(10.47.7.2, 239.1.1.1), RP 10.47.6.6, BGP/AS 23456, 00:13:59/00:03:28, Peer 10.47.6.6

Border-2#show ip mroute vrf blue_vn 239.1.1.1

IP Multicast Routing Table

Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,

L - Local, P - Pruned, R - RP-bit set, F - Register flag,

T - SPT-bit set, J - Join SPT, M - MSDP created entry, E - Extranet,

X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,

U - URD, I - Received Source Specific Host Report,

Z - Multicast Tunnel, z - MDT-data group sender,

Y - Joined MDT-data group, y - Sending to MDT-data group,

G - Received BGP C-Mroute, g - Sent BGP C-Mroute,

N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,

Q - Received BGP S-A Route, q - Sent BGP S-A Route,

V - RD & Vector, v - Vector, p - PIM Joins on route,

x - VxLAN group, c - PFP-SA cache created entry,

* - determined by Assert, # - iif-starg configured on rpf intf,

e - encap-helper tunnel flag, l - LISP decap ref count contributor

Outgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join

t - LISP transit group

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 239.1.1.1), 00:21:04/00:00:06, RP 10.47.6.1, flags: SP

Incoming interface: Null, RPF nbr 0.0.0.0

Outgoing interface list: Null <-- Indicates no PIM (*,G) Join received, if there was an OIL, there would be (S,G)

Border-1は送信元10.47.7.2に向けてPIM(S,G)Joinを送信し、マルチキャストトラフィックをネイティブに引き付けます。これにより、Edge-1は(S,G)OILをアップデートできます

Edge-1#show ip mroute vrf blue_vn 239.1.1.1 10.47.7.3

IP Multicast Routing Table

Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,

L - Local, P - Pruned, R - RP-bit set, F - Register flag,

T - SPT-bit set, J - Join SPT, M - MSDP created entry, E - Extranet,

X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,

U - URD, I - Received Source Specific Host Report,

Z - Multicast Tunnel, z - MDT-data group sender,

Y - Joined MDT-data group, y - Sending to MDT-data group,

G - Received BGP C-Mroute, g - Sent BGP C-Mroute,

N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,

Q - Received BGP S-A Route, q - Sent BGP S-A Route,

V - RD & Vector, v - Vector, p - PIM Joins on route,

x - VxLAN group, c - PFP-SA cache created entry,

* - determined by Assert, # - iif-starg configured on rpf intf,

e - encap-helper tunnel flag, l - LISP decap ref count contributor

Outgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join

t - LISP transit group

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

(10.47.7.2, 239.1.1.1), 01:19:57/00:02:29, flags: FT

Incoming interface: Vlan1025, RPF nbr 0.0.0.0 <-- Multicast source 10.47.7.2 is in VLAN 1025

Outgoing interface list:

LISP0.4100, 10.47.1.10, Forward/Sparse, 01:19:55/00:02:30, flags: <-- RLOC of Border-1

10.47.7.2から239.1.1.1へのマルチキャストトラフィックは、ユニキャストVXLANカプセル化によって10.47.6.6(Border-1)から転送されます。Border-1はVXLANトラフィックのカプセル化を解除し、Edge-2(10.47.1.13)に再カプセル化します。

Border-1#show ip mroute vrf blue_vn 239.1.1.1

IP Multicast Routing Table

Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,

L - Local, P - Pruned, R - RP-bit set, F - Register flag,

T - SPT-bit set, J - Join SPT, M - MSDP created entry, E - Extranet,

X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,

U - URD, I - Received Source Specific Host Report,

Z - Multicast Tunnel, z - MDT-data group sender,

Y - Joined MDT-data group, y - Sending to MDT-data group,

G - Received BGP C-Mroute, g - Sent BGP C-Mroute,

N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,

Q - Received BGP S-A Route, q - Sent BGP S-A Route,

V - RD & Vector, v - Vector, p - PIM Joins on route,

x - VxLAN group, c - PFP-SA cache created entry,

* - determined by Assert, # - iif-starg configured on rpf intf,

e - encap-helper tunnel flag, l - LISP decap ref count contributor

Outgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join

t - LISP transit group

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 239.1.1.1), 5d01h/00:03:14, RP 10.47.6.1, flags: S

Incoming interface: Null, RPF nbr 0.0.0.0

Outgoing interface list:

LISP0.4100, 10.47.1.13, Forward/Sparse, 5d01h/00:02:54, flags:

(10.47.7.2, 239.1.1.1), 00:02:28/00:00:30, flags: MT <-- Unicast Source

Incoming interface: LISP0.4100, RPF nbr 10.47.1.12   <-- RPF neighbor to get to the source (Edge-1)

Outgoing interface list:

LISP0.4100, 10.47.1.13, Forward/Sparse, 00:02:28/00:03:14, flags: <-- RLOC of Edge-2

最短パスツリー(SPT)カットオーバー

ラストホップルータ(LHR)Edge-2は、(*,G)ツリーに沿ってマルチキャストパケットを受信すると、SPTカットオーバーを実行し、PIM(S,G)参加をEdge-1に送信しようとします。

Edge-2#show ip mroute vrf blue_vn 239.1.1.1

IP Multicast Routing Table

Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,

L - Local, P - Pruned, R - RP-bit set, F - Register flag,

T - SPT-bit set, J - Join SPT, M - MSDP created entry, E - Extranet,

X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,

U - URD, I - Received Source Specific Host Report,

Z - Multicast Tunnel, z - MDT-data group sender,

Y - Joined MDT-data group, y - Sending to MDT-data group,

G - Received BGP C-Mroute, g - Sent BGP C-Mroute,

N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,

Q - Received BGP S-A Route, q - Sent BGP S-A Route,

V - RD & Vector, v - Vector, p - PIM Joins on route,

x - VxLAN group, c - PFP-SA cache created entry,

* - determined by Assert, # - iif-starg configured on rpf intf,

e - encap-helper tunnel flag, l - LISP decap ref count contributor

Outgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join

t - LISP transit group

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 239.1.1.1), 4d23h/stopped, RP 10.47.6.1, flags: SJC

Incoming interface: LISP0.4100, RPF nbr 10.47.1.10

Outgoing interface list:

Vlan1025, Forward/Sparse-Dense, 4d23h/00:02:40, flags: <-- LHR creates the OIL because of receipt of an IGMP MR

(10.47.7.2, 239.1.1.1), 00:00:02/00:02:57, flags: JT <-- Unicast Source

Incoming interface: LISP0.4100, RPF nbr 10.47.1.12   <-- RPF neighbor to get to 10.47.7.2, which is Edge-1 RLOC

Outgoing interface list:

Vlan1025, Forward/Sparse-Dense, 00:00:02/00:02:57, flags: <-- Multicast traffic is forwarded into VLAN 1025, where 10.47.7.3 is

FHR(Edge-1)は、Edge-2のRLOCに直接向かう(S,G)を持ちます

Edge-1#show ip mroute vrf blue_vn 239.1.1.1

IP Multicast Routing Table

Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,

L - Local, P - Pruned, R - RP-bit set, F - Register flag,

T - SPT-bit set, J - Join SPT, M - MSDP created entry, E - Extranet,

X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,

U - URD, I - Received Source Specific Host Report,

Z - Multicast Tunnel, z - MDT-data group sender,

Y - Joined MDT-data group, y - Sending to MDT-data group,

G - Received BGP C-Mroute, g - Sent BGP C-Mroute,

N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,

Q - Received BGP S-A Route, q - Sent BGP S-A Route,

V - RD & Vector, v - Vector, p - PIM Joins on route,

x - VxLAN group, c - PFP-SA cache created entry,

* - determined by Assert, # - iif-starg configured on rpf intf,

e - encap-helper tunnel flag, l - LISP decap ref count contributor

Outgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join

t - LISP transit group

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 239.1.1.1), 5d01h/stopped, RP 10.47.6.1, flags: SCF

Incoming interface: LISP0.4100, RPF nbr 10.47.1.10

Outgoing interface list:

Vlan1025, Forward/Sparse-Dense, 5d01h/00:01:40, flags:

(10.47.7.2, 239.1.1.1), 01:53:06/00:02:42, flags: FT <-- Unicast Source

Incoming interface: Vlan1025, RPF nbr 0.0.0.0

Outgoing interface list:

LISP0.4100, 10.47.1.13, Forward/Sparse, 00:14:22/00:03:07, flags: <-- Edge-2's RLOC

データプレーン検証（プラットフォームに依存しない）

マルチキャストの発信元や受信側がトラフィックを送受信するのを妨げる原因としては、さまざまな問題が考えられます。このセクションでは、マルチキャストソースとマルチキャスト受信側の両方に影響を与える可能性がある問題の検証を中心に、ハードウェアプログラミングに関係しない問題について説明します。

ソース側の検証

マルチキャストソースとFHRの作成能力(S、G)を検証するには、スイッチ統合セキュリティ機能(SISF)、LISP、Cisco Express Forwarding(CEF)、RPFの順に検証します。

マルチキャストソースはSISF/IPデバイストラッキング(IPDT)内に存在する必要があります。これにより、残りのLISP、CEF、そして最終的にはRPFが駆動されます。

コマンド「show device-tracking database address <IP address>」を使用すると、マルチキャスト送信元に有効なIPDTエントリがあることを確認できます。

Edge-1#show device-tracking database address 10.47.7.2

Codes: L - Local, S - Static, ND - Neighbor Discovery, ARP - Address Resolution Protocol, DH4 - IPv4 DHCP, DH6 - IPv6 DHCP, PKT - Other Packet, API - API created

Preflevel flags (prlvl):

0001:MAC and LLA match 0002:Orig trunk 0004:Orig access

0008:Orig trusted trunk 0010:Orig trusted access 0020:DHCP assigned

0040:Cga authenticated 0080:Cert authenticated 0100:Statically assigned

Network Layer Address Link Layer Address Interface vlan prlvl age  state     Time left

DH4  10.47.7.2             5254.0012.521d     Gi1/0/4   1025 0024  163s REACHABLE 81 s try 0(84284 s)

次に、FHR上のLISPデータベースにマルチキャストソースのエントリがあることを確認します。コマンド「show lisp instance-id <LISP L3 IID> ipv4 database ip address/32」を使用します。

Edge-1#show lisp instance-id 4100 ipv4 database 10.47.7.2/32

LISP ETR IPv4 Mapping Database for LISP 0 EID-table vrf blue_vn (IID 4100), LSBs: 0x1

Entries total 1, no-route 0, inactive 0, do-not-register 1

10.47.7.3/32, dynamic-eid blue-IPV4, inherited from default locator-set rloc_691b1fe4-5264-44c2-bb1b-0903b3eb2c51

Uptime: 1w2d, Last-change: 1w2d

Domain-ID: local

Service-Insertion: N/A

Locator Pri/Wgt Source State

10.47.1.13 10/10 cfg-intf site-self, reachable

Map-server Uptime ACK Domain-ID

10.47.1.10 1w2d Yes 0

10.47.1.11 1w2d Yes 0

Edge-1#show ip lisp instance-id 4100 forwarding eid local 10.47.7.2

Prefix

10.47.7.2/32

CEFはLISPに基づいてエントリを作成します。CEFはLISPではなく/32ホストエントリを指します。

Edge-1#show ip cef vrf blue_vn 10.47.7.2

10.47.7.2/32

nexthop 10.47.7.2 Vlan1025

次に、RPFはCEFから派生します

Edge-1#show ip rpf vrf blue_vn 10.47.7.2

RPF information for (10.47.7.2)

RPF interface: Vlan1025

RPF neighbor: ? (10.47.7.2) - directly connected

RPF route/mask: 10.47.7.2/32

RPF type: unicast (lisp)

Doing distance-preferred lookups across tables

Multicast Multipath enabled.

RPF topology: ipv4 multicast base, originated from ipv4 unicast base

SISF/IPDTに有効なエントリがない場合、FHRでLISPデータベースのマッピングが行われず、その結果、境界を指すCEFおよびRPFが発生します。マルチキャスト送信元がトラフィックを送信する場合、RPFポイントが正しくないインターフェイスを指し、その結果RPF障害が発生し、(S,G)は形成されません。

Edge-1#show device-tracking database address 10.47.7.2

Codes: L - Local, S - Static, ND - Neighbor Discovery, ARP - Address Resolution Protocol, DH4 - IPv4 DHCP, DH6 - IPv6 DHCP, PKT - Other Packet, API - API created

Preflevel flags (prlvl):

0001:MAC and LLA match 0002:Orig trunk 0004:Orig access

0008:Orig trusted trunk 0010:Orig trusted access 0020:DHCP assigned

0040:Cga authenticated 0080:Cert authenticated 0100:Statically assigned

Network Layer Address Link Layer Address Interface vlan prlvl age state Time left

Edge-1#show lisp instance-id 4100 ipv4 database 10.47.7.2/32

% No database-mapping entry for 10.47.7.2/32.

Edge-1#show ip cef vrf blue_vn 10.47.7.2

10.47.7.0/24

nexthop 10.47.1.10 LISP0.4100 <-- Result of a LISP Negative Map-Reply, so the LISP interface is now the RPF interface

nexthop 10.47.1.11 LISP0.4100 <-- Result of a LISP Negative Map-Reply, so the LISP interface is now the RPF interface

Edge-1#show ip rpf vrf blue_vn 10.47.7.2

RPF information for (10.47.7.2)

RPF interface: LISP0.4100

RPF neighbor: ? (10.47.1.11)

RPF route/mask: 10.47.7.2/32

RPF type: unicast ()

Doing distance-preferred lookups across tables

Multicast Multipath enabled.

RPF topology: ipv4 multicast base

これを防ぐには、マルチキャスト送信元をサイレントホストとして扱います。サイレントホストでは、IPダイレクトブロードキャスト、フラッディング、スタティックSISF/IPDTバインディングによってこの問題を解決できます。

ソース登録

PIM登録はユニキャストパケットフローであり、他のユニキャストパケットと同様にLISP/VXLANを使用します。FHRがマルチキャストソースをエニーキャストRPに正しく登録できることを検証するために、いくつかの必須チェックがあります。

まず、エニーキャストRPがGDA用に正しく設定されていることを確認します。

Edge-1#show ip pim vrf blue_vn rp 239.1.1.1

Group: 239.1.1.1, RP: 10.47.6.1, uptime 5d22h, expires never

PIMレジスタトンネルが形成されていることを確認します。

Edge-1#show ip pim vrf blue_vn tunnel

Tunnel1

Type : PIM Encap

RP : 10.47.6.1 <-- This is from "ip pim vrf blue_vn rp-address 10.47.6.1 ASM_ACL_IPV4_blue_vn_10.47.6.1"

Source : 10.47.6.4 <-- This is from "ip pim vrf blue_vn register-source Loopback4100"

State : UP

Last event : Created (1w2d)

エニーキャストRPへのIP到達可能性の確認

Edge-1#show ip cef vrf blue_vn 10.47.6.1

10.47.6.1/32

nexthop 10.47.1.10 LISP0.4100 <-- RLOC of Border-1

nexthop 10.47.1.11 LISP0.4100 <-- RLOC of Border-2

Edge-1#ping vrf blue_vn 10.47.6.1 source lo4100

Type escape sequence to abort.

Sending 5, 100-byte ICMP Echos to 10.47.6.1, timeout is 2 seconds:

Packet sent with a source address of 10.47.6.4

!!!!!

Success rate is 100 percent (5/5), round-trip min/avg/max = 257/275/294 ms

受信側の確認

- マルチキャスト受信側がIGMP MRを送信していることを確認します。

- IGMPスヌーピングが有効になっていることを確認します。L2のみのVNは、IGMPスヌーピングが有効になっていない唯一のVNタイプです

- IGMP MRをドロップするようなポートACL、VLAN ACL、ルーテッドポートACLが設定されていないことを確認します。

- IGMP MRのバージョンを確認します。マルチキャストの受信者がIGMPv3の場合は、デフォルトでIGMPv2であり、「ip igmp version 3」が必要です。

- 「ip option drop」が設定されていないことを確認します

LHR PIM(*,G)の検証

- LHRが受信側サブネット/セグメントのPIM DRであることを確認します

- 「ip multicast group-range」が設定されていないことを確認します

- IGMP MRをドロップするようなポートACL、VLAN ACL、ルーテッドポートACLが設定されていないことを確認します。

- 高いCPUまたはコントロールプレーンポリシング(CoPP)によってIGMP MRがドロップされていないことを確認します。

LHR PIM共有ツリーの検証

RPがマルチキャストグループに設定されていることを確認します

Edge-2#show ip mroute vrf blue_vn 239.1.1.1

IP Multicast Routing Table

Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,

L - Local, P - Pruned, R - RP-bit set, F - Register flag,

T - SPT-bit set, J - Join SPT, M - MSDP created entry, E - Extranet,

X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,

U - URD, I - Received Source Specific Host Report,

Z - Multicast Tunnel, z - MDT-data group sender,

Y - Joined MDT-data group, y - Sending to MDT-data group,

G - Received BGP C-Mroute, g - Sent BGP C-Mroute,

N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,

Q - Received BGP S-A Route, q - Sent BGP S-A Route,

V - RD & Vector, v - Vector, p - PIM Joins on route,

x - VxLAN group, c - PFP-SA cache created entry,

* - determined by Assert, # - iif-starg configured on rpf intf,

e - encap-helper tunnel flag, l - LISP decap ref count contributor

Outgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join

t - LISP transit group

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 239.1.1.1), 6d01h/stopped, RP 10.47.6.1, flags: SCF

Incoming interface: LISP0.4100, RPF nbr 10.47.1.10

Outgoing interface list:

Vlan1025, Forward/Sparse-Dense, 6d01h/00:01:34, flags:

エニーキャストRPへのRPFが正しいことを確認します。

Edge-2#show ip cef vrf blue_vn 10.47.6.1

10.47.6.1/32

nexthop 10.47.1.10 LISP0.4100

nexthop 10.47.1.11 LISP0.4100

Edge-2#show ip rpf vrf blue_vn 10.47.6.1

RPF information for (10.47.6.1)

RPF interface: LISP0.4100

RPF neighbor: ? (10.47.1.10)

RPF route/mask: 10.47.6.1/32

RPF type: unicast ()

Doing distance-preferred lookups across tables

Multicast Multipath enabled.

RPF topology: ipv4 multicast base

MFIB転送：発信側の検証

パケット転送についての追加情報を取得するには、コマンド「show ip mfib vrf <VN Name> <multicast group> <unicast source> verbose」を使用します

Edge-1#show ip mfib vrf blue_vn 239.1.1.1 10.47.7.2 verbose

Entry Flags: C - Directly Connected, S - Signal, IA - Inherit A flag,

ET - Data Rate Exceeds Threshold, K - Keepalive

DDE - Data Driven Event, HW - Hardware Installed

ME - MoFRR ECMP entry, MNE - MoFRR Non-ECMP entry, MP - MFIB

MoFRR Primary, RP - MRIB MoFRR Primary, P - MoFRR Primary

MS - MoFRR Entry in Sync, MC - MoFRR entry in MoFRR Client,

e - Encap helper tunnel flag.

I/O Item Flags: IC - Internal Copy, NP - Not platform switched,

NS - Negate Signalling, SP - Signal Present,

A - Accept, F - Forward, RA - MRIB Accept, RF - MRIB Forward,

MA - MFIB Accept, A2 - Accept backup,

RA2 - MRIB Accept backup, MA2 - MFIB Accept backup

Forwarding Counts: Pkt Count/Pkts per second/Avg Pkt Size/Kbits per second

Other counts: Total/RPF failed/Other drops

I/O Item Counts: HW Pkt Count/FS Pkt Count/PS Pkt Count Egress Rate in pps

VRF blue_vn

(10.47.7.2,239.1.1.1) Flags: K HW DDE

0x42 OIF-IC count: 0, OIF-A count: 1

SW Forwarding: 0/0/0/0, Other: 272/272/0

HW Forwarding: 7431223059161284608/0/0/0, Other: 0/0/0

Vlan1025 Flags: RA A MA NS

LISP0.4100, 10.47.1.13 Flags: RF F NS <-- RLOC of Edge-2

CEF: Adjacency with MAC: 4500000000004000001164770A2F010D0A2F010C000012B5000000000840000000100400BA25CDF4AD3852540017FE730000

Pkts: 0/0/0 Rate: 0 pps

Edge-1#show adjacency lisp0.4100

Protocol Interface Address

IP LISP0.4100 10.47.1.10(23)

IP LISP0.4100 10.47.1.11(27)

IP LISP0.4100 10.47.1.13(8)

Edge-2#show adjacency lisp0.4100 10.47.1.13 detail

Protocol Interface Address

IP LISP0.4100 10.47.1.13(8)

0 packets, 0 bytes

epoch 0

sourced in sev-epoch 14

Encap length 50

4500000000004000001164770A2F010D

0A2F010C000012B50000000008400000

00100400BA25CDF4AD3852540017FE73

0000

L2 destination address byte offset 0

L2 destination address byte length 0

Link-type after encap: ip

LISP

Next chain element:

IP adj out of GigabitEthernet1/0/1, addr 10.47.1.6

EPCを使用して、マルチキャストパケットのVXLANカプセル化を検証できます

Edge-1#monitor capture 1 interface GigabitEthernet1/0/4 IN

Edge-1#monitor capture 1 interface GigabitEthernet1/0/1 OUT

Edge-1#monitor capture 1 match any

Edge-1#monitor capture 1 buffer size 10

Edge-1#monitor capture 1 limit pps 1000

Edge-1#monitor capture 1 start

Edge-1#monitor capture 1 stop

Edge-1#show monitor capture 1 buffer brief

Starting the packet display ........ Press Ctrl + Shift + 6 to exit

1 0.000000 10.47.7.2 -> 239.1.1.1 ICMP 98 Echo (ping) request id=0x0008, seq=28213/13678, ttl=5 <-- Packet as it ingresses the FHR, TTL is 5

2 0.014254 10.47.7.2 -> 239.1.1.1 ICMP 148 Echo (ping) request id=0x0008, seq=28213/13678, ttl=4 <-- Packet as it leaves the FHR, TTL is 4 as is it decremented

MFIB転送：受信側の確認

アンダーレイネットワークは、ユニキャストルーティングを使用して、このパケットをEdge-1からEdge-2にルーティングします。

Edge-2#show ip mroute vrf blue_vn 239.1.1.1 10.47.7.2

IP Multicast Routing Table

Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,

L - Local, P - Pruned, R - RP-bit set, F - Register flag,

T - SPT-bit set, J - Join SPT, M - MSDP created entry, E - Extranet,

X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,

U - URD, I - Received Source Specific Host Report,

Z - Multicast Tunnel, z - MDT-data group sender,

Y - Joined MDT-data group, y - Sending to MDT-data group,

G - Received BGP C-Mroute, g - Sent BGP C-Mroute,

N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,

Q - Received BGP S-A Route, q - Sent BGP S-A Route,

V - RD & Vector, v - Vector, p - PIM Joins on route,

x - VxLAN group, c - PFP-SA cache created entry,

* - determined by Assert, # - iif-starg configured on rpf intf,

e - encap-helper tunnel flag, l - LISP decap ref count contributor

Outgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join

t - LISP transit group

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

(10.47.7.2, 239.1.1.1), 00:01:39/00:01:20, flags: JT

Incoming interface: LISP0.4100, RPF nbr 10.47.1.12

Outgoing interface list:

Vlan1025, Forward/Sparse-Dense, 00:01:39/00:02:45, flags:

コマンド「show ip mfib vrf <VN Name> <group address> <unicast source> counters」を使用すると、ハードウェア転送カウンタの値が増加します

Edge-2#show ip mfib vrf blue_vn 239.1.1.1 counters

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)

VRF blue_vn

12 routes, 7 (*,G)s, 4 (*,G/m)s

Group: 239.1.1.1

RP-tree,

SW Forwarding: 0/0/0/0, Other: 0/0/0

HW Forwarding: 0/0/2/0, Other: 0/0/0

Source: 10.47.7.2,

SW Forwarding: 0/0/0/0, Other: 2/1/1

HW Forwarding: 6118996613340856320/0/0/0, Other: 0/0/0

Totals - Source count: 1, Packet count: 6118996613340856320

Edge-2#show ip igmp snooping groups vlan 1025 239.1.1.1

Vlan Group     Type Version Port List

-----------------------------------------------------------------------

1025 239.1.1.1 igmp v2      Gi1/0/4

出力マルチキャストカウンタを使用して、マルチキャストトラフィックがマルチキャスト受信側に向けてLHRから送信されたかどうかを検証できます。コマンド「show controllers ethernet-controller <interface> | include Multicast|Transmit」を実行します。

Edge-2#show controllers ethernet-controller g1/0/4 | include Multicast|Transmit

Transmit                  GigabitEthernet1/0/5          Receive

426729240 Total bytes                                   100803109 Total bytes

5732 Unicast frames                                     949355 Unicast frames

5732 Unicast bytes                                      93563018 Unicast bytes

4388433 Multicast frames                                32346 Multicast frames

4388433 Multicast bytes                                 7236178 Multicast bytes

<snip>

Edge-2#show controllers ethernet-controller g1/0/5 | include |Multicast|Transmit

Transmit                  GigabitEthernet1/0/5          Receive

426742895 Total bytes                                   100813570 Total bytes

5733 Unicast frames                                     949456 Unicast frames

5733 Unicast bytes                                      93573016 Unicast bytes

4388569 Multicast frames                                32348 Multicast frames

4388569 Multicast bytes                                 7236641 Multicast bytes

LHRから送信されるマルチキャストトラフィックを検証するもう1つの方法は、マルチキャスト受信側に対してEPCを実行することです。

Edge-2#show monitor capture 1 buffer brief

Starting the packet display ........ Press Ctrl + Shift + 6 to exit

1 0.168401 10.47.7.2 -> 239.1.1.1 ICMP 106 Echo (ping) request id=0x0008, seq=35903/16268, ttl=3

2 0.969138 10.47.7.2 -> 239.1.1.1 ICMP 106 Echo (ping) request id=0x0008, seq=35904/16524, ttl=3

データプレーンの検証（プラットフォームによって異なります）

(S,G)作成 – CPUパントパス

FHRが(S,G)状態を作成するために、マルチキャストソースから送信されるいくつかのマルチキャストパケットは、MFIBによって処理されるCPUにパントされます。マルチキャストパケットはFEDキュー「CPU_Q_MCAST_DATA」に送信されます。

Edge-1#show platform software fed switch active punt cpuq 30

Punt CPU Q Statistics

===========================================

CPU Q Id : 30

CPU Q Name : CPU_Q_MCAST_DATA

Packets received from ASIC : 27124

Send to IOSd total attempts : 27124

Send to IOSd failed count : 0

RX suspend count : 0

RX unsuspend count : 0

RX unsuspend send count : 0

RX unsuspend send failed count : 0

RX consumed count : 0

RX dropped count : 0

RX non-active dropped count : 0

RX conversion failure dropped : 0

RX INTACK count : 0

RX packets dq'd after intack : 0

Active RxQ event : 0

RX spurious interrupt : 0

RX phy_idb fetch failed: 0

RX table_id fetch failed: 0

RX invalid punt cause: 0

Replenish Stats for all rxq:

-------------------------------------------

Number of replenish : 0

Number of replenish suspend : 0

Number of replenish un-suspend : 0

-------------------------------------------

また、MCASTデータのCoPPキューに損失があってはなりません。コマンド「show platform hardware fed active qos queue stats internal cpu policer | マルチキャストデータを含める|QId"

Edge-1#show platform hardware fed active qos queue stats internal cpu policer | include MCAST Data|QId

QId PlcIdx                                   Queue  Name               Enabled   Rate     Rate      Drop(Bytes) Drop(Frames)

30   9                                       MCAST  Data                 No      500      400       0           0

トラフィックが直接接続された送信元から来る場合、トラフィックはLinux Shared Memory Punt Interface(LSMPI)キューによって、(S,G)Joinからの場合は「直接接続された送信元」として処理されます。これは「Mcast PIM Signaling」です

コマンド「show platform software infrastructure lsmpi punt | include原因|Mcast"

Edge-1#show platform software infrastructure lsmpi punt | include Cause|Mcast

Cause                           Total        Total      Length        Dot1q encap        Other        SKB

Mcast Directly Connected Source 0            27038      0             0                  0            0

Mcast IPv4 Options data packet  0            0          0             0                  0            0

Mcast Internal Copy             0            0          0             0                  0            0

Mcast IGMP Unroutable           0            0          0             0                  0            0

Mcast PIM signaling             0            0          0             0                  0            0

Mcast punt to RP                0            0          0             0                  0            0

Mcast UDLR                      0            0          0             0                  0            0

次に、FED Punjectパケットキャプチャを実行して、送信元からのマルチキャストパケットを確認し、CPUにグループ化できます。これにより、着信インターフェイスとCPUキューを確認できます。

Edge-1#debug platform software fed switch active punt packet-capture set-filter "ip.addr==239.1.1.1"

Edge-1#debug platform software fed switch active punt packet-capture start

Edge-1#debug platform software fed switch active punt packet-capture stop

Punt packet capturing stopped. Captured 2 packet(s)

Edge-1#show platform software fed switch active punt packet-capture brief

Punt packet capturing: disabled. Buffer wrapping: disabled

Total captured so far: 2 packets. Capture capacity : 4096 packets

Capture filter : "ip.addr==239.255.255.254"

------ Punt Packet Number: 1, Timestamp: 2024/08/26 15:38:27.341 ------

interface : physical: GigabitEthernet1/0/4[if-id: 0x0000000c], pal: Vlan1025 [if-id: 0x0000001d]

metadata : cause: 12 [Mcast Directly Connected Source], sub-cause: 0, q-no: 30, linktype: MCP_LINK_TYPE_IP [1]

ether hdr : dest mac: 0100.5e7f.fffe, src mac: 5254.0012.521d

ether hdr : ethertype: 0x0800 (IPv4)

ipv4 hdr : dest ip: 239.1.1.1, src ip: 10.47.7.2

ipv4 hdr : packet len: 84, ttl: 5, protocol: 1 (ICMP)

icmp hdr : icmp type: 8, code: 0

Mrouteハードウェアプログラミング – IOS Mroute

(S,G)のハードウェアプログラミングは、IOSからFMAN、RPからFMAN、FPからFEDへの他のプログラミングパスと同じ構造を使用します。

Edge-1#show ip mroute vrf blue_vn 239.1.1.1

IP Multicast Routing Table

Flags: D - Dense, S - Sparse, B - Bidir Group, s - SSM Group, C - Connected,

L - Local, P - Pruned, R - RP-bit set, F - Register flag,

T - SPT-bit set, J - Join SPT, M - MSDP created entry, E - Extranet,

X - Proxy Join Timer Running, A - Candidate for MSDP Advertisement,

U - URD, I - Received Source Specific Host Report,

Z - Multicast Tunnel, z - MDT-data group sender,

Y - Joined MDT-data group, y - Sending to MDT-data group,

G - Received BGP C-Mroute, g - Sent BGP C-Mroute,

N - Received BGP Shared-Tree Prune, n - BGP C-Mroute suppressed,

Q - Received BGP S-A Route, q - Sent BGP S-A Route,

V - RD & Vector, v - Vector, p - PIM Joins on route,

x - VxLAN group, c - PFP-SA cache created entry,

* - determined by Assert, # - iif-starg configured on rpf intf,

e - encap-helper tunnel flag, l - LISP decap ref count contributor

Outgoing interface flags: H - Hardware switched, A - Assert winner, p - PIM Join

t - LISP transit group

Timers: Uptime/Expires

Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 239.255.255.254), 00:08:29/stopped, RP 10.47.6.1, flags: SCF <-- Anycast RP address

Incoming interface: LISP0.4100, RPF nbr 10.47.1.10 <-- RLOC of Border-1

Outgoing interface list:

Vlan1025, Forward/Sparse-Dense, 00:08:29/00:00:30, flags:

(10.47.7.2, 239.1.1.1), 00:08:28/00:02:54, flags: FT <-- Unicast source

Incoming interface: Vlan1025, RPF nbr 0.0.0.0 <-- Multicast source is in VLAN 1025

Outgoing interface list:

LISP0.4100, 10.47.1.13, Forward/Sparse, 00:08:23/00:03:07, flags: <-- Forwarding to Edge-2

Mrouteハードウェアプログラミング – IOS MFIB

その後、マルチキャストルートはMulticast Forwarding Information Base（MFIB；マルチキャスト転送情報ベース）に追加されます。これは、Routing Information Base（RIB；ルーティング情報ベース）がCisco Express Forwarding（CEF；シスコエクスプレスフォワーディング）に追加される方法と似ています。マルチキャストに相当するのはMFIBです。

Edge-1#show ip mfib vrf blue_vn 239.1.1.1 10.47.7.2 verbose

Entry Flags: C - Directly Connected, S - Signal, IA - Inherit A flag,

ET - Data Rate Exceeds Threshold, K - Keepalive

DDE - Data Driven Event, HW - Hardware Installed

ME - MoFRR ECMP entry, MNE - MoFRR Non-ECMP entry, MP - MFIB

MoFRR Primary, RP - MRIB MoFRR Primary, P - MoFRR Primary

MS - MoFRR Entry in Sync, MC - MoFRR entry in MoFRR Client,

e - Encap helper tunnel flag.

I/O Item Flags: IC - Internal Copy, NP - Not platform switched,

NS - Negate Signalling, SP - Signal Present,

A - Accept, F - Forward, RA - MRIB Accept, RF - MRIB Forward,

MA - MFIB Accept, A2 - Accept backup,

RA2 - MRIB Accept backup, MA2 - MFIB Accept backup

Forwarding Counts: Pkt Count/Pkts per second/Avg Pkt Size/Kbits per second

Other counts: Total/RPF failed/Other drops

I/O Item Counts: HW Pkt Count/FS Pkt Count/PS Pkt Count Egress Rate in pps

VRF blue_vn

(10.47.7.2,239.1.1.1) Flags: K HW DDE <-- Multicast source and GDA

0x21 OIF-IC count: 0, OIF-A count: 1

SW Forwarding: 0/0/0/0, Other: 2/2/0

HW Forwarding: 0/0/0/0, Other: 0/0/0

Vlan1025 Flags: RA A MA NS

LISP0.4100, 10.47.1.13 Flags: RF F NS <-- RLOC of Edge-2 and the RPF interface to reach 10.47.1.13

CEF: Adjacency with MAC: 4500000000004000001164770A2F010D0A2F010C000012B5000000000840000000100400BA25CDF4AD3852540017FE730000

Pkts: 0/0/0 Rate: 0 pps

Mrouteハードウェアプログラミング – RP MFIB

コマンド"show platform software ip switch active r0 mfib vrf index <VRF index> group <GDA/32>"を使用します。

Edge-1#show vrf detail blue_vn | inc Id

VRF blue_vn (VRF Id = 2); default RD <not set>; default VPNID <not set>

Edge-1#show platform software ip switch active r0 mfib vrf index 2 group 239.1.1.1/32

Route flags:

S - Signal; C - Directly connected;

IA - Inherit A Flag; L - Local;

BR - Bidir route

*, 239.1.1.1/32 --> OBJ_INTF_LIST (0x6b)

Obj id: 0x6b, Flags: C

OM handle: 0x34803c47f0

Edge-2#show platform software ip switch active r0 mfib vrf index 2 group address 239.1.1.1 10.47.7.2

Route flags:

S - Signal; C - Directly connected;

IA - Inherit A Flag; L - Local;

BR - Bidir route

239.1.1.1, 10.47.7.2/64 --> OBJ_INTF_LIST (0x21)

Obj id: 0x21, Flags: unknown

OM handle: 0x34803c4088

Mrouteハードウェアプログラミング – FP MFIB

同じmrouteのFMAN RPエントリにはAsynchronous Object Manager (AOM) IDが含まれています。このAOM IDは、その他のプログラミングを検証するために使用されます。

コマンド「show platform software ip switch active f0 mfib vrf index <VRF Index> group <GDA/32>」を使用します。

Edge-1#show platform software ip switch active f0 mfib vrf index 2 group 239.1.1.1/32

Route flags:

S - Signal; C - Directly connected;

IA - Inherit A Flag; L - Local;

BR - Bidir route

*, 239.1.1.1/32 --> OBJ_INTF_LIST (0x6b)

Obj id: 0x6b, Flags: C

aom id: 29154, HW handle: (nil) (created)

Edge-1#show platform software ip switch active f0 mfib vrf index 2 group address 239.1.1.1 10.47.7.2

Route flags:

S - Signal; C - Directly connected;

IA - Inherit A Flag; L - Local;

BR - Bidir route

239.1.1.1., 10.47.7.2/64 --> OBJ_INTF_LIST (0x21)

Obj id: 0x21, Flags: unknown

aom id: 36933, HW handle: (nil) (created)

Mrouteハードウェアプログラミング – Mrouteオブジェクト

AOM IDを使用して、オブジェクトマネージャコマンドを使用して(*,G)と(S,G)の両方のオブジェクトと親オブジェクトを確認します。 コマンド"show platform software object-manager switch active f0 object <AOM ID>"または"show platform software object-manager switch active f0 object <AOM ID> parents"を使用できます。

各mrouteには2つの親オブジェクトがあります。オブジェクトの1つはipv4_mcastテーブルを参照し、もう1つはmlistで、後続のコマンドで使用されます。

Edge-1#show platform software object-manager switch active f0 object 29154

Object identifier: 29154

Description: PREFIX 0.0.0.0 , 239.1.1.1/32 (Table id 2)

Obj type id: 72

Obj type: mroute-pfx

Status: Done, Epoch: 0, Client data: 0xa3e23c48

Edge-1#show platform software object-manager switch active f0 object 29154 parents

Object identifier: 26509

Description: ipv4_mcast table 2 (blue_vn), vrf id 2

Status: Done

Object identifier: 29153

Description: mlist 107

Status: Done

Edge-1#show platform software object-manager switch active f0 object 36933

Object identifier: 36933

Description: PREFIX 10.47.7.2 , 239.1.1.164 (Table id 2)

Obj type id: 72

Obj type: mroute-pfx

Status: Done, Epoch: 0, Client data: 0xa413c928

Edge-1#show platform software object-manager switch active f0 object 36933 parents

Object identifier: 26509

Description: ipv4_mcast table 2 (blue_vn), vrf id 2

Status: Done

Object identifier: 47695

Description: mlist 33

Status: Done

Mrouteハードウェアプログラミング – Mlistオブジェクト

MLISTオブジェクトは、Incoming InterfacesとOutgoing Interface Listの両方を組み合わせたものです。コマンド"show platform software mlist switch active f0 index <index>"を使用できます。

This is for (*,G)

Edge-1#show platform software mlist switch active f0 index 107

Multicast List entries

OCE Flags:

NS - Negate Signalling; IC - Internal copy;

A - Accept; F - Forward;

OCE         Type                   OCE Flags   Interface

--------------------------------------------------------------------------------------

0xf8000171  OBJ_ADJACENCY          A           LISP0.4100 <-- A Flag indicates an Incoming interface for (*,G)

0xf80001d1  OBJ_ADJACENCY          NS, F       Vlan1025   <-- F Flag indicates an Outgoing interface for (*,G)

This is for (S,G)

Edge-1#show platform software mlist switch active f0 index 33

Multicast List entries

OCE Flags:

NS - Negate Signalling; IC - Internal copy;

A - Accept; F - Forward;

OCE         Type                   OCE Flags      Interface

--------------------------------------------------------------------------------------

0x5c        OBJ_ADJACENCY          NS, F          LISP0.4100  <-- F Flag indicates an Outgoing interface(s), for (S,G)

0xf80001d1  OBJ_ADJACENCY          A              Vlan1025    <-- A Flag indicates an Incoming interface, for (S,G)

Mrouteハードウェアプログラミング – FED Mroute

FEDプログラミングを検証するには、コマンド「show platform software fed switch active ip mfib vrf <VN Name> <GDA> <unicast source>」を使用します。

Edge-1#show platform software fed switch active ip mfib vrf blue_vn 239.1.1.1 10.47.7.2

Multicast (S,G) Information

VRF : 2

Source Address : 10.47.7.2

HTM Handler : 0x7f45d98c7728

SI Handler : 0x7f45d9a44a28

DI Handler : 0x7f45d9bcb2d8

REP RI handler : 0x7f45d97e7188

Flags :

Packet count : 0

State : 4

RPF :

Vlan1025 A

OIF :

Vlan1025 A

LISP0.4100 F NS

(Adj: 0x5c )

リライトインデックスは、ヘッドエンドレプリケーションで利用されるマルチキャストトラフィックのカプセル化に関する情報を提供します。コマンド"show platform hardware fed switch active fwd-asic abstraction print-resource-handle <REP RI Handle> 1"を使用できます。

Edge-1#show platform hardware fed switch active fwd-asic abstraction print-resource-handle 0x7f45d97e7188 1

Handle:0x7f45d97e7188 Res-Type:ASIC_RSC_RI_REP Res-Switch-Num:255 Asic-Num:255 Feature-ID:AL_FID_L3_MULTICAST_IPV4 Lkp-ftr-id:LKP_FEAT_INVALID ref_count:1

priv_ri/priv_si Handle: (nil)Hardware Indices/Handles: index0:0x19 mtu_index/l3u_ri_index0:0x0 index1:0x19 mtu_index/l3u_ri_index1:0x0

Cookie length: 56

00 00 00 00 00 00 00 00 02 00 00 00 03 07 2f 0a fe ff ff ef 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

Detailed Resource Information (ASIC_INSTANCE# 0)

----------------------------------------

Replication list RI handle = 7f45d97e7188

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

ASIC [0] Replication Expansion Handle [0x7f45d9b9c048]

Replication list :

Number of RIs = 6

Start RI = 25

Common rewrite = No

Replication REP_RI 0x19 [elements = 1]

[0] ri_list[0]=4 RI_MCAST_BRIDGE_V6 port=88 ri_ref_count:1 dirty=0

RIL first:4 last:4 start:4 ril_total:4 ref_count:0

RI list this:4 num_pairs:4 free:3 next:0 prev:0 ---->

uri1:50 ri_ref_count_1:1 uri0:26 ri_ref_count_0:1 ptr_type:0 last:1 dirty:1

uri1:49151 ri_ref_count_1:0 uri0:49151 ri_ref_count_0:1 ptr_type:1 last:1 dirty:1

uri1:49151 ri_ref_count_1:0 uri0:49151 ri_ref_count_0:0 ptr_type:1 last:1 dirty:0

uri1:49151 ri_ref_count_1:0 uri0:49151 ri_ref_count_0:0 ptr_type:1 last:1 dirty:0

<snip>

次に、URI値を取得してrewrite-indexの範囲を検証します。コマンド「show platform hardware fed switch active fwd-asic resource asic all rewrite-index range <URI> <URI>」を使用します。

Edge-1#show platform hardware fed switch active fwd-asic resource asic all rewrite-index range 50 50

ASIC#:0 RI:50 Rewrite_type:AL_RRM_REWRITE_IPV4_VXLAN_INNER_IPV4_ENCAP(110) Mapped_rii:LVX_L3_ENCAP_L2_PAYLOAD(123)

Dst Mac: MAC Addr: ba:25:cd:f4:ad:38,

Src IP: 10.47.1.12 <-- RLOC of Edge-1

Dst IP: 10.47.1.13 <-- RLOC of Edge-2

IPv4 TTL: 0

LISP INSTANCEID: 0

L3IF LE Index: 49

ASIC#:1 RI:50 Rewrite_type:AL_RRM_REWRITE_IPV4_VXLAN_INNER_IPV4_ENCAP(110) Mapped_rii:LVX_L3_ENCAP_L2_PAYLOAD(123)

Dst Mac: MAC Addr: ba:25:cd:f4:ad:38,

Src IP: 10.47.1.12 <-- RLOC of Edge-1

Dst IP: 10.47.1.13 <-- RLOC of Edge-2

IPv4 TTL: 0

LISP INSTANCEID: 0

L3IF LE Index: 49

次に、さらに検証するために、前のコマンドのRIを取得します。コマンド「show platform software fed switch active ip mfib vrf <VN Name> <GDA> <source>」を使用します。

Edge-1#show platform software fed switch active ip mfib vrf blue_vn 239.1.1.1 10.47.7.2

Multicast (S,G) Information

VRF : 2

Source Address : 10.47.7.2

HTM Handler : 0x7f45d98c7728

SI Handler : 0x7f45d9a44a28

DI Handler : 0x7f45d9bcb2d8

REP RI handler : 0x7f45d97e7188

Flags :

Packet count : 0

State : 4

RPF :

Vlan1025 A

OIF :

Vlan1025 A

LISP0.4100 F NS

(Adj: 0x5c )

コマンド「show platofmr software fed switch active ip adj | include <宛先RLOC>"

Edge-1#show platform software fed switch active ip adj 10.47.1.12

IPV4 Adj entries

dest       if_name    dst_mac        si_hdl         ri_hdl          pd_flags adj_id Last-modified

----       -------    -------        ------         ------          -------- ------ -------------

10.47.1.12 LISP0.4100 4500.0000.0000 0x7f45d9a4a5e8 0x7f45d9a4a798  0x60     0x5c   2024/08/21 16:18:58.948 <-- 0x5c matches the Adj in the previous command

LHRでは、宛先インデックスを検証して、マルチキャストパケットの転送先（マルチキャスト受信側）を確認できます。コマンド"show platform software fed switch active ip mfib vrf <VN Name> <GDA> <source>"を使用できます。

Edge-2#show platform software fed switch active ip mfib vrf blue_vn 239.1.1.1 10.47.7.2

Multicast (S,G) Information

VRF : 2

Source Address : 10.47.7.2

HTM Handler : 0x7f0efdad33a8

SI Handler : 0x7f0efdad2648

DI Handler : 0x7f0efdad7668

REP RI handler : 0x7f0efdad4858

Flags :

Packet count : 0

State : 4

RPF :

LISP0.4100 A

OIF :

Vlan1025 F NS

LISP0.4100 A

(Adj: 0xf8000171 )

DIハンドラを取得し、コマンド「show platform hardware fed switch active fwd-asic abstraction print-resource-handle <DI handle> 1」で使用します

Edge-2#show platform hardware fed switch active fwd-asic abstraction print-resource-handle 0x7f0efdad7668 1

Handle:0x7f0efdad7668 Res-Type:ASIC_RSC_DI Res-Switch-Num:255 Asic-Num:255 Feature-ID:AL_FID_L3_MULTICAST_IPV4 Lkp-ftr-id:LKP_FEAT_INVALID ref_count:1

priv_ri/priv_si Handle: (nil)Hardware Indices/Handles: index0:0x527c mtu_index/l3u_ri_index0:0x0 index1:0x527c mtu_index/l3u_ri_index1:0x0

Cookie length: 56

00 00 00 00 00 00 00 00 02 00 00 00 03 07 2f 0a fe ff ff ef 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00

Detailed Resource Information (ASIC_INSTANCE# 0)

----------------------------------------

Destination index = 0x527c

pmap = 0x00000000 0x00000010

pmap_intf : [GigabitEthernet1/0/4]

cmi = 0x0

rcp_pmap = 0x0

al_rsc_cmi

CPU Map Index (CMI) [0]

ctiLo0 = 0

ctiLo1 = 0

ctiLo2 = 0

cpuQNum0 = 0

cpuQNum1 = 0

cpuQNum2 = 0

npuIndex = 0

stripSeg = 0

copySeg = 0

Detailed Resource Information (ASIC_INSTANCE# 1)

----------------------------------------

Destination index = 0x527c

pmap = 0x00000000 0x00000000

cmi = 0x0

rcp_pmap = 0x0

al_rsc_cmi

CPU Map Index (CMI) [0]

ctiLo0 = 0

ctiLo1 = 0

ctiLo2 = 0

cpuQNum0 = 0

cpuQNum1 = 0

cpuQNum2 = 0

npuIndex = 0

stripSeg = 0

copySeg = 0

==============================================================