PIM Sparse modeはRPと呼ばれる待ち合わせ場所が存在します。RPとは共有ツリーと送信元ツリーがぶつかる場所です。ここでは、送信元, RP間の通信経路である送信元ツリーについて考察します。
概要
source tree 概要
以下の構成を例に挙げて、souce tree形成の概要を説明します。Host 1がマルチキャストレソースで、R3がRPです。
RP +--------+ +--------+ +--------+ +--------+ | Host 1 +----------+ R1 +----------+ R2 +----------+ R3 | +--------+ +--------+ +--------+ +--------+ ---------> ------------------------------> multicast packet register message
この時点でsource treeは存在しないため、source treeに基づく転送はできません。そこで、ファーストホップルータ(R1)は受信したパケットを宛先アドレスをRP(R3)とするユニキャストでカプセル化して転送します。このカプセル化されたパケットは、PIM register messageと呼ばれRPにマルチキャストソースが現れた旨を伝える役割もあります。
PIM register messageをキャプチャした結果は以下の通りです。カプセル外側の宛先アドレスがユニキャストで、カプセル内側の宛先アドレスがマルチキャストである事が分かります。
Ethernet II, Src: cc:01:0c:70:00:01 (cc:01:0c:70:00:01), Dst: cc:03:14:9c:00:01 (cc:03:14:9c:00:01) Internet Protocol Version 4, Src: 192.168.13.1 (192.168.13.1), Dst: 10.5.5.5 (10.5.5.5) Protocol Independent Multicast 0010 .... = Version: 2 .... 0001 = Type: Register (1) Reserved byte(s): 00 Checksum: 0xdeff [correct] PIM options Flags: 0x00000000 0... .... .... .... .... .... .... .... = Not border .0.. .... .... .... .... .... .... .... = Not Null-Register Internet Protocol Version 4, Src: 192.168.12.112 (192.168.12.112), Dst: 239.1.1.1 (239.1.1.1) Internet Control Message Protocol
RP +--------+ +--------+ +--------+ +--------+ | Host 1 +----------+ R1 +----------+ R2 +----------+ R3 | +--------+ +--------+ +--------+ +--------+ <--------- <--------- (S, G) join (S, G) join
RPであるR3はマルチキャストソースに向けてPIM (S, G) joinを転送します。このメッセージによってsource treeが形成されます。
PIM (S, G) joinをキャプチャした結果は以下の通りです。マルチキャストソースとマルチキャストグループのそれぞれのアドレスが含まれている事が読み取れます。
Ethernet II, Src: cc:04:14:9c:00:01 (cc:04:14:9c:00:01), Dst: IPv4mcast_00:00:0d (01:00:5e:00:00:0d) Internet Protocol Version 4, Src: 192.168.24.4 (192.168.24.4), Dst: 224.0.0.13 (224.0.0.13) Protocol Independent Multicast 0010 .... = Version: 2 .... 0011 = Type: Join/Prune (3) Reserved byte(s): 00 Checksum: 0x3f25 [correct] PIM options Upstream-neighbor: 192.168.24.2 Reserved byte(s): 00 Num Groups: 1 Holdtime: 210s Group 0: 239.1.1.1/32 Num Joins: 1 IP address: 192.168.12.112/32 (S) Num Prunes: 0
RP +--------+ +--------+ +--------+ +--------+ | Host 1 +----------+ R1 +----------+ R2 +----------+ R3 | +--------+ +--------+ +--------+ +--------+ <------------------------------ register stop
source treeが完成すると、mulicast packetはsource treeに基づいて転送されます。従って、もはやregiter messageによるカプセル化は不要になります。RP(R3)はファーストホップルータ(R1)にregiter stopを送り、カプセル化が不要である旨を伝えます。
register stopをキャプチャした結果は以下の通りです。RPからファーストホップルータまでユニキャストで転送されます。
Ethernet II, Src: cc:03:14:9c:00:01 (cc:03:14:9c:00:01), Dst: cc:01:0c:70:00:01 (cc:01:0c:70:00:01) Internet Protocol Version 4, Src: 10.5.5.5 (10.5.5.5), Dst: 192.168.13.1 (192.168.13.1) Protocol Independent Multicast 0010 .... = Version: 2 .... 0010 = Type: Register-stop (2) Reserved byte(s): 00 Checksum: 0x1ec4 [correct] PIM options Group: 239.1.1.1/32 Source: 192.168.12.112
souce tree
基本設定
OSPFと同様に、PIM neighborにはDRという概念があります。DRには以下の役割がありますが、register messageを送信する役割はsource treeを理解するために非常に重要です。
- IGMPv1における、Membership Queryの送信
(IGMPv2はquerierの概念がありますので、DRがqueryを送信するとは限りません) - PIM sparse modeにおける、register messageの送信
DRとしての優先度は以下のコマンドで定義できます。OSPFと同様にpriorityが大きいルータがDRとして選出され、一方、priorityを0にしたルータはDRとして絶対に選ばれないようになります。
Router(config-if)# ip pim dr-priority <value>
動作確認
以下の構成で、R5をRPとして設定します。PIMは全てのI/Fで有効にするシンプルな構成ですが、OSPF, EIGRPの複数のルーティングドメインが存在する事に注意して下さい(再配送設定なし)。
[ip address] 192.168.13.0/24 192.168.35.0/24 e0/0 e0/1 e0/1 e0/2 .1+--------+.1 .3+--------+.3 e0/2 e0/0 ┌----+ R1 +----------+ R3 +----------┐.5 +--------+.112│ +--------+ +--------+ +---+----+ | Host12 +----┤ | R5 | +--------+ │ +--------+ +--------+ +---+----+ └----+ R2 +----------+ R4 +----------┘.5 .2+--------+.2 .4+--------+.4 e0/3 e0/0 e0/1 e0/1 e0/3 192.168.12.0/24 192.168.24.0/24 192.168.45.0/24 R1 Loopback0 R3 Loopback0 10.1.1.1/32 10.3.3.3/32 R5 Loopback0 R2 Loopback0 R4 Loopback0 10.5.5.5/32 10.2.2.2/32 10.4.4.4/32 [multicast domain] 192.168.13.0/24 192.168.35.0/24 e0/0 e0/1 e0/1 e0/2 .1+--------+.1 .3+--------+.3 e0/2 ┌----+ R1 +----------+ R3 +----------┐.5 │ +--------+ +--------+ +---+----+ --┤ | R5 | │ +--------+ +--------+ +---+----+ └----+ R2 +----------+ R4 +----------┘.5 .2+--------+.2 .4+--------+.4 e0/3 e0/0 e0/1 e0/1 e0/3 192.168.12.0/24 192.168.24.0/24 192.168.45.0/24 [ospf domain] 192.168.12.0/24 192.168.13.0/24 192.168.35.0/24 e0/0 e0/1 e0/1 e0/2 .1+--------+.1 .3+--------+.3 e0/2 ----+ R1 +----------+ R3 +----------┐.5 +--------+ +--------+ +---+----+ | R5 | +--------+ [eigrp domain] +--------+ | R5 | +--------+ +--------+ +---+----+ ----+ R2 +----------+ R4 +----------┘.5 .2+--------+.2 .4+--------+.4 e0/3 e0/0 e0/1 e0/1 e0/3 192.168.12.0/24 192.168.24.0/24 192.168.45.0/24
[R5] interface Loopback0 ip pim sparse-mode ip igmp join-group 239.1.1.1 ip igmp join-group 239.2.2.2 ! ip pim bsr-candidate Loopback0 0 ip pim rp-candidate Loopback0
設定全文は下記ファイルです。ルーティングなどの詳細設定は下記を参照ください。
DR 確認
DRはregister messageを送信する役割を担っています。この構成図の場合、Host12からのマルチキャストパケットはR1, R2の両方が受信しますが、register messageを送信するのはDRであるルータのみです。
DRは以下のコマンドで確認する事ができます。DRの欄に192.168.12.2と記載されている事から、R2がDRとして選ばれた事が分かります。
R1#show ip pim interface Address Interface Ver/ Nbr Query DR DR Mode Count Intvl Prior 10.1.1.1 Loopback0 v2/S 0 30 1 10.1.1.1 192.168.12.1 Ethernet0/0 v2/S 1 30 1 192.168.12.2 192.168.13.1 Ethernet0/1 v2/S 1 30 1 192.168.13.3 R1#
R1に以下のコマンドを入力し、DRが変更できる事を確認します。
[R1] interface Ethernet0/0 ip pim dr-priority 10 R1#show ip pim interface Address Interface Ver/ Nbr Query DR DR Mode Count Intvl Prior 10.1.1.1 Loopback0 v2/S 0 30 1 10.1.1.1 192.168.12.1 Ethernet0/0 v2/S 1 30 10 192.168.12.1 192.168.13.1 Ethernet0/1 v2/S 1 30 1 192.168.13.3 R1#
source treeの形成
Host12からR5へのpingを送信し、source treeを作成します。なお、2発目のpingに対して二重の応答があるのは、register messageによるカプセル化されたパケットと、source treeに基づく転送が行われたパケットが2重で届いてしまったためです。
Host12#ping 239.1.1.1 repeat 3 Type escape sequence to abort. Sending 3, 100-byte ICMP Echos to 239.1.1.1, timeout is 2 seconds: Reply to request 0 from 192.168.35.5, 132 ms Reply to request 1 from 192.168.35.5, 56 ms Reply to request 1 from 192.168.45.5, 56 ms Reply to request 2 from 192.168.45.5, 56 ms Host12#
source tree形成の流れについて確認しましょう。Host12からのマルチキャストパケットは、R1, R2が受け取ります。R1, R2のうち、DRであるR1はRPに向かってregister messageを送信します。
register messageは以下デバッグコマンドにより確認可能です。
R1#debug ip pim PIM debugging is on R1# *Mar 1 00:42:05.503: PIM(0): Check RP 10.5.5.5 into the (*, 239.1.1.1) entry *Mar 1 00:42:05.511: PIM(0): Send v2 Register to 10.5.5.5 for 192.168.12.112, group 239.1.1.1 *Mar 1 00:42:08.575: PIM(0): Send v2 Null Register to 10.5.5.5 *Mar 1 00:42:08.623: PIM(0): Received v2 Register-Stop on Ethernet0/1 from 10.5.5.5 *Mar 1 00:42:08.627: PIM(0): for source 0.0.0.0, group 0.0.0.0 *Mar 1 00:42:16.511: PIM(0): Send v2 Register to 10.5.5.5 for 192.168.12.112, group 239.1.1.1 *Mar 1 00:42:16.579: PIM(0): Received v2 Register-Stop on Ethernet0/1 from 10.5.5.5 *Mar 1 00:42:16.579: PIM(0): for source 192.168.12.112, group 239.1.1.1 *Mar 1 00:42:16.583: PIM(0): Clear Registering flag to 10.5.5.5 for (192.168.12.112/32, 239.1.1.1) *Mar 1 00:42:20.383: PIM(0): Received v2 Bootstrap on Ethernet0/1 from 192.168.13.3 *Mar 1 00:42:20.387: PIM(0): Update (224.0.0.0/4, RP:10.5.5.5), PIMv2 *Mar 1 00:42:20.399: PIM(0): Received v2 Bootstrap on Loopback0 from 10.1.1.1 *Mar 1 00:42:20.423: PIM(0): Received v2 Bootstrap on Ethernet0/0 from 192.168.12.2 R1#
register message ------------------------------------> +--------+ +--------+ ┌----+ R1 +----------+ R3 +----------┐ +--------+ │ +--------+ +--------+ +---+----+ | Host12 +----┤ | R5 | +--------+ │ +--------+ +--------+ +---+----+ └----+ R2 +----------+ R4 +----------┘ +--------+ +--------+
register messageによって、マルチキャストソースの存在を知ったRPは、PIM (S, G) join を送信し、source treeの形成を試みます。この時、PIM (S, G) joinはルーティングテーブルに基づいて、上流(RP)から下流(マルチキャストソース)へ転送されます。
この構成の場合、OSPFよりもEIGRPの方が優先されるので、R5, R4, R2というルートで(S, G) joinが転送されます。
(S, G) joinは以下デバッグコマンドにより確認可能です。
R4#debug ip pim PIM debugging is on R4# *Mar 1 00:41:59.439: PIM(0): Received v2 Join/Prune on Ethernet0/3 from 192.168.45.5, to us *Mar 1 00:41:59.443: PIM(0): Join-list: (192.168.12.112/32, 239.1.1.1), S-bit set *Mar 1 00:41:59.451: PIM(0): Check RP 10.5.5.5 into the (*, 239.1.1.1) entry *Mar 1 00:41:59.455: PIM(0): Add Ethernet0/3/192.168.45.5 to (192.168.12.112, 239.1.1.1), Forward state, by PIM SG Join *Mar 1 00:41:59.459: PIM(0): Insert (192.168.12.112,239.1.1.1) join in nbr 192.168.24.2's queue *Mar 1 00:41:59.463: PIM(0): Building Join/Prune packet for nbr 192.168.24.2 *Mar 1 00:41:59.467: PIM(0): Adding v2 (192.168.12.112/32, 239.1.1.1), S-bit Join *Mar 1 00:41:59.471: PIM(0): Send v2 join/prune to 192.168.24.2 (Ethernet0/1) *Mar 1 00:42:14.147: PIM(0): Received v2 Bootstrap on Ethernet0/3 from 192.168.45.5 *Mar 1 00:42:14.151: PIM(0): Update (224.0.0.0/4, RP:10.5.5.5), PIMv2 *Mar 1 00:42:14.163: PIM(0): Received v2 Bootstrap on Loopback0 from 10.4.4.4 *Mar 1 00:42:58.475: PIM(0): Insert (192.168.12.112,239.1.1.1) join in nbr 192.168.24.2's queue *Mar 1 00:42:58.479: PIM(0): Building Periodic (*,G) Join / (S,G,RP-bit) Prune message for 239.1.1.1 *Mar 1 00:42:58.483: PIM(0): Building Join/Prune packet for nbr 192.168.24.2 *Mar 1 00:42:58.487: PIM(0): Adding v2 (192.168.12.112/32, 239.1.1.1), S-bit Join *Mar 1 00:42:58.491: PIM(0): Send v2 join/prune to 192.168.24.2 (Ethernet0/1) *Mar 1 00:42:58.731: PIM(0): Received v2 Join/Prune on Ethernet0/3 from 192.168.45.5, to us *Mar 1 00:42:58.731: PIM(0): Join-list: (192.168.12.112/32, 239.1.1.1), S-bit set *Mar 1 00:42:58.731: PIM(0): Update Ethernet0/3/192.168.45.5 to (192.168.12.112, 239.1.1.1), Forward state, by PIM SG Join R4#
+--------+ +--------+ ┌----+ R1 +----------+ R3 +----------┐ +--------+ │ +--------+ +--------+ +---+----+ | Host12 +----┤ | R5 | +--------+ │ +--------+ +--------+ +---+----+ └----+ R2 +----------+ R4 +----------┘ +--------+ +--------+ <---------------- <---------------- (S, G) join (S, G) join
source treeが形成されると、register messageによるカプセル化が不要である旨を伝えるために、register stop messageがR5からR1へ転送されます。
register stop messageは以下デバッグコマンドにより確認可能です。
R1#debug ip pim PIM debugging is on R1# *Mar 1 00:42:05.503: PIM(0): Check RP 10.5.5.5 into the (*, 239.1.1.1) entry *Mar 1 00:42:05.511: PIM(0): Send v2 Register to 10.5.5.5 for 192.168.12.112, group 239.1.1.1 *Mar 1 00:42:08.575: PIM(0): Send v2 Null Register to 10.5.5.5 *Mar 1 00:42:08.623: PIM(0): Received v2 Register-Stop on Ethernet0/1 from 10.5.5.5 *Mar 1 00:42:08.627: PIM(0): for source 0.0.0.0, group 0.0.0.0 *Mar 1 00:42:16.511: PIM(0): Send v2 Register to 10.5.5.5 for 192.168.12.112, group 239.1.1.1 *Mar 1 00:42:16.579: PIM(0): Received v2 Register-Stop on Ethernet0/1 from 10.5.5.5 *Mar 1 00:42:16.579: PIM(0): for source 192.168.12.112, group 239.1.1.1 *Mar 1 00:42:16.583: PIM(0): Clear Registering flag to 10.5.5.5 for (192.168.12.112/32, 239.1.1.1) *Mar 1 00:42:20.383: PIM(0): Received v2 Bootstrap on Ethernet0/1 from 192.168.13.3 *Mar 1 00:42:20.387: PIM(0): Update (224.0.0.0/4, RP:10.5.5.5), PIMv2 *Mar 1 00:42:20.399: PIM(0): Received v2 Bootstrap on Loopback0 from 10.1.1.1 *Mar 1 00:42:20.423: PIM(0): Received v2 Bootstrap on Ethernet0/0 from 192.168.12.2 R1#
register stop message <----------------------------------- +--------+ +--------+ ┌----+ R1 +----------+ R3 +----------┐ +--------+ │ +--------+ +--------+ +---+----+ | Host12 +----┤ | R5 | +--------+ │ +--------+ +--------+ +---+----+ └----+ R2 +----------+ R4 +----------┘ +--------+ +--------+
ルーティングテーブルの確認
OSPF domain(R1, R3)のルーティングテーブルを確認します。EIGRPの方が優先されるので、これらのルータはパケットを転送しない事が読み取れます。(R1について(192.168.12.112, 239.1.1.1)エントリは存在するもののOutgoing Interface list: Nullと表示されていることからパケットを転送しない事が読み取れます)
[R1] R1#show ip mroute 192.168.12.112 239.1.1.1 <omitted> (192.168.12.112, 239.1.1.1), 00:00:21/00:02:51, flags: PFT Incoming interface: Ethernet0/0, RPF nbr 0.0.0.0, Registering Outgoing interface list: Null R1# [R3] R3#show ip mroute 192.168.12.112 239.1.1.1 Group 239.1.1.1 not found R3#
EIGRP domain(R2, R4, R5)のルーティングテーブルを確認します。source treeに基づいてパケットが転送される事を確認します。
[R2] R2#show ip mroute 192.168.12.112 239.1.1.1 <omitted> (192.168.12.112, 239.1.1.1), 00:00:24/00:03:20, flags: T Incoming interface: Ethernet0/0, RPF nbr 0.0.0.0 Outgoing interface list: Ethernet0/1, Forward/Sparse, 00:00:23/00:03:06 R2# [R4] R4#show ip mroute 192.168.12.112 239.1.1.1 <omitted> (192.168.12.112, 239.1.1.1), 00:00:33/00:03:29, flags: T Incoming interface: Ethernet0/1, RPF nbr 192.168.24.2 Outgoing interface list: Ethernet0/3, Forward/Sparse, 00:00:33/00:03:07 R4# [R5] R5#show ip mroute 192.168.12.112 239.1.1.1 <omitted> (192.168.12.112, 239.1.1.1), 00:00:35/00:02:55, flags: T Incoming interface: Ethernet0/3, RPF nbr 192.168.45.4 Outgoing interface list: Loopback0, Forward/Sparse, 00:00:35/00:02:24 R5#
Accept Register
基本設定
source treeにはAccept Registerという機能が存在します。Accept Registerとは、RPが受け入れるregister messageを制限する機能のことです。
以下のコマンドで、register messageを制限する事ができます。拡張ACLまたはroute-mapを用いて定義しますが、送信元アドレスがマルチキャストソースに、宛先アドレスがマルチキャストグループに対応する事を留意して下さい。
Router(config)# ip pim accept-register { list <ext_acl> | route-map <map> }
グループアドレスに基づく制限
239.2.2.2に対するsource tree形成を拒否するように設定します。
[R5] ip access-list extended ACL_DENY_REGISTER 10 deny ip any host 239.2.2.2 99 permit ip any any ! ip pim accept-register list ACL_DENY_REGISTER
Host12から239.2.2.2に対するping応答がない事を確認します。
[Host12] Host12#ping 239.1.1.1 repeat 3 Type escape sequence to abort. Sending 3, 100-byte ICMP Echos to 239.1.1.1, timeout is 2 seconds: Reply to request 0 from 192.168.45.5, 132 ms Reply to request 1 from 192.168.45.5, 56 ms Reply to request 2 from 192.168.45.5, 64 ms Host12# Host12# Host12#ping 239.2.2.2 repeat 3 Type escape sequence to abort. Sending 3, 100-byte ICMP Echos to 239.2.2.2, timeout is 2 seconds: ... Host12#
なお、Accept Registerによってregister messageを拒否した場合は、コンソール上に以下のようなメッセージが出力されます。
[R5] R5# *Mar 1 00:04:13.739: %PIM-4-INVALID_SRC_REG: Received Register from 192.168.24.2 for (192.168.12.112, 239.2.2.2), not willing to be RP R5#
マルチキャストソースに基づく制限
Host12(192.168.12.112)に対するsource tree作成を制限します。
[R5] no ip access-list extended ACL_DENY_REGISTER ip access-list extended ACL_DENY_REGISTER 10 deny ip any host 239.2.2.2 20 deny ip host 192.168.12.112 any 99 permit ip any any ! no ip pim accept-register list ACL_DENY_REGISTER ip pim accept-register list ACL_DENY_REGISTER
動作確認のため、一度、source treeを削除します。
[R1, R2, R3, R4, R5] clear ip mroute *
Host12からのpingは届きませんが、他のホストからはpingが可能である事を確認します。
[Host12] Host12#ping 239.1.1.1 repeat 3 Type escape sequence to abort. Sending 3, 100-byte ICMP Echos to 239.1.1.1, timeout is 2 seconds: ... Host12# [R1] R1#ping 239.1.1.1 source Ethernet 0/0 repeat 3 Type escape sequence to abort. Sending 3, 100-byte ICMP Echos to 239.1.1.1, timeout is 2 seconds: Packet sent with a source address of 192.168.12.1 Reply to request 0 from 192.168.45.5, 112 ms Reply to request 1 from 192.168.45.5, 84 ms Reply to request 2 from 192.168.45.5, 96 ms R1# [R5] R5# *Mar 1 00:08:38.227: %PIM-4-INVALID_SRC_REG: Received Register from 192.168.24.2 for (192.168.12.112, 239.1.1.1), not willing to be RP R5#
Multicast Boundary
基本設定
Multicast BoundaryはPIM join messageやAuto RP messageを制限する事によってマルチキャストに境界を設ける技術です。
(*, G) join messageを制限するには、以下のコマンドを指定します。
Router(config-if) ip multicast boundary <std_acl>
(S, G) join messageを制限するには、以下のコマンドを指定します。なお、in, outはPIM messageが流れる方向ではなく、マルチキャストのデータパケットが流れる方向を指定します。
Router(config-if) ip multicast boundary <ext_acl> { in | out }
Auto RP messageを制限するには、以下のコマンドを指定します。<std_acl>にはグループアドレスを指定してます。なお、announce, discoveryの両方を制限する事が可能ですが、誤って、224.0.1.39, 224.0.1.40まで制限しないよう注意して下さい。
Router(config-if) ip multicast boundary <std_acl> filter-autorp
(S, G)に基づく制限
R5からR4への(192.168.12.112, 239.1.1.1) join messageを拒否します。R4においてjoinの受信を禁止する設定を投入するので、outキーワードを指定したくなりますがinキーワードを指定して下さい。ここでのin, outはデータパケットが流れる方向を指定して下さい。
[R4] ip access-list extended BOUNDARY deny ip host 192.168.12.112 host 239.1.1.1 permit ip any any ! interface Ethernet0/1 ip multicast boundary BOUNDARY in
239.1.1.1, 239.2.2.2に対するsource treeを作成するため、Host12からpingを送信します。(239.1.1.1に対するsource treeは作成されないにも関わらずping応答があるのは、register messageによって転送されるためです。)
[Host12] Host12#ping 239.1.1.1 repeat 2 Type escape sequence to abort. Sending 2, 100-byte ICMP Echos to 239.1.1.1, timeout is 2 seconds: Reply to request 0 from 192.168.35.5, 96 ms Reply to request 1 from 192.168.35.5, 88 ms Host12# Host12# Host12# Host12#ping 239.2.2.2 repeat 2 Type escape sequence to abort. Sending 2, 100-byte ICMP Echos to 239.2.2.2, timeout is 2 seconds: Reply to request 0 from 192.168.35.5, 156 ms Reply to request 1 from 192.168.45.5, 68 ms Host12#
239.1.1.1に対するsource treeは作成されていないようですが、238.1.1.1に対するsource treeは作成されている事が読み取れます。また、念のためACLによって拒否されている事を確認するためにも、ACLのカウンタも見ておきましょう。
[R2] R2#show ip mroute 192.168.12.112 239.1.1.1 <omitted> (192.168.12.112, 239.1.1.1), 00:00:59/00:02:16, flags: PT Incoming interface: Ethernet0/0, RPF nbr 0.0.0.0 Outgoing interface list: Null R2#show ip mroute 192.168.12.112 239.2.2.2 <omitted> (192.168.12.112, 239.2.2.2), 00:00:29/00:03:18, flags: T Incoming interface: Ethernet0/0, RPF nbr 0.0.0.0 Outgoing interface list: Ethernet0/1, Forward/Sparse, 00:00:29/00:03:00 R2# [R4] R4#show ip mroute 192.168.12.112 239.1.1.1 Group 239.1.1.1 not found R4# R4#show ip mroute 192.168.12.112 239.2.2.2 <omitted> (192.168.12.112, 239.2.2.2), 00:00:48/00:02:58, flags: T Incoming interface: Ethernet0/1, RPF nbr 192.168.24.2 Outgoing interface list: Ethernet0/3, Forward/Sparse, 00:00:48/00:02:41 R4# R4# R4#show access-lists Extended IP access list BOUNDARY 10 deny ip host 192.168.12.112 host 239.1.1.1 (7 matches) 99 permit ip any any (13 matches) R4#
register message
話が横道にそれますが、239.1.1.1に対するping応答があるのはregister messageによる転送のお陰です。multicast boundaryを設定する事によってsource treeが作成されないため、RPはregister stop messageを送信しない動作になります。この様子は、以下デバッグ出力にregister stopがない事から読み取れます。
R1#debug ip pim PIM debugging is on R1# *Mar 1 00:40:11.743: PIM(0): Check RP 10.5.5.5 into the (*, 239.1.1.1) entry *Mar 1 00:40:11.751: PIM(0): Send v2 Register to 10.5.5.5 for 192.168.12.112, group 239.1.1.1 *Mar 1 00:40:20.267: PIM(0): Received v2 Bootstrap on Ethernet0/1 from 192.168.13.3 *Mar 1 00:40:20.271: PIM(0): Update (224.0.0.0/4, RP:10.5.5.5), PIMv2 *Mar 1 00:40:20.283: PIM(0): Received v2 Bootstrap on Loopback0 from 10.1.1.1 *Mar 1 00:40:20.323: PIM(0): Received v2 Bootstrap on Ethernet0/0 from 192.168.12.2 *Mar 1 00:40:22.767: PIM(0): Send v2 Register to 10.5.5.5 for 192.168.12.112, group 239.1.1.1 *Mar 1 00:40:36.847: PIM(0): Send v2 Register to 10.5.5.5 for 192.168.12.112, group 239.1.1.1 R1#