ネットワーク構成

pim-sm_autorp01.png
図 PIM-SM ネットワーク構成

初期設定

各ルータには、初期設定として以下の内容を設定済みです。

  • ホスト名
  • IPアドレス
  • ルーティングプロトコル
    OSPFエリア0
  • RECEIVER 239.1.1.1にJoin

設定と確認

Step1:PIM-SMの有効化

R1~R5でマルチキャストルーティングとインタフェースでPIM-SMを有効化します。また、239.1.1.1のラストホップルータであるR5ではスイッチオーバーしないようにSPT Thresholdをinfinityに設定します。

R1

----------------------------------------------------------------
ip multicast-routing
!
interface Loopback0
ip pim sparse-mode
!
interface Ethernet0/0
ip pim sparse-mode
!
interface Ethernet0/1
ip pim sparse-mode
!
interface Ethernet0/2
ip pim sparse-mode
----------------------------------------------------------------

R2

----------------------------------------------------------------
ip multicast-routing
!
interface Loopback0
ip pim sparse-mode
!
interface Ethernet0/0
ip pim sparse-mode
!
interface Ethernet0/1
ip pim sparse-mode
----------------------------------------------------------------

R3

----------------------------------------------------------------
ip multicast-routing
!
interface Loopback0
ip pim sparse-mode
!
interface Ethernet0/0
ip pim sparse-mode
!
interface Ethernet0/1
ip pim sparse-mode
----------------------------------------------------------------

R4

----------------------------------------------------------------
ip multicast-routing
!
interface Loopback0
ip pim sparse-mode
!
interface Ethernet0/0
ip pim sparse-mode
!
interface Ethernet0/1
ip pim sparse-mode
!
interface Ethernet0/2
ip pim sparse-mode
----------------------------------------------------------------

R5

----------------------------------------------------------------
ip multicast-routing
!
interface Loopback0
ip pim sparse-mode
!
interface Ethernet0/0
ip pim sparse-mode
!
interface Ethernet0/1
ip pim sparse-mode
!
ip pim spt-threshold infinity
----------------------------------------------------------------

Step2:MAの設定

R2、R3をAuto RPのMapping Agent(MA)として設定します。RP Discoveryメッセージの送信元IPアドレスは、Loopback0のIPアドレスを利用します。また、RP Discoverメッセージを3秒ごとに送信するようにします。

R2/R3

----------------------------------------------------------------
ip pim send-rp-discovery loopback 0 scope 16 interval 3
----------------------------------------------------------------

Step3:RP Candidateの設定

R2、R3のLoopback0のIPアドレスを239.1.1.1のRP Candidateとして設定します。RP Announceメッセージは3秒ごとに送信するようにします。

R2/R3

----------------------------------------------------------------
ip pim send-rp-announce Loopback0 scope 16 group-list 1 interval 3
!
access-list 1 permit 239.1.1.1
----------------------------------------------------------------

Step4:Auto RP Listenerの設定

Auto RPのRP AnnounceメッセージとRP DiscoveryメッセージをフラッディングできるようにAuto RP Listenerを有効化します。

R1~R5

----------------------------------------------------------------
ip pim autorp listener
----------------------------------------------------------------

次の図は、ここまでの設定をまとめたものです。

pim-sm_autorp02.png
図 Step1~Step4の設定

Step5:RPの確認

R1~R5の各ルータで239.1.1.1のRPを確認します。RPアドレスの確認には、show ip pim rp mappingコマンドを利用します。R1では、次のようなコマンド出力になります。

R1 show ip pim rp mapping

----------------------------------------------------------------
R1#show ip pim rp mapping
PIM Group-to-RP Mappings
Group(s) 239.1.1.1/32
RP 192.168.0.3 (?), v2v1
Info source: 192.168.0.2 (?), elected via Auto-RP
Uptime: 00:16:02, expires: 00:02:13
----------------------------------------------------------------

Auto RPでは、MAでRPを選択します。IPアドレスが大きいルータが優先されるのでR3(192.168.0.3)がRPとして選択されていることがわかります。RECEIVERが239.1.1.1にJoinしているので、RPであるR3までの共有ツリーが作成されています。

R2 show ip mroute 239.1.1.1

----------------------------------------------------------------
R2#show ip mroute 239.1.1.1
Group 239.1.1.1 not found
----------------------------------------------------------------

R3 show ip mroute 239.1.1.1

----------------------------------------------------------------
R3#show ip mroute 239.1.1.1
IP Multicast Routing Table
~省略~
(*, 239.1.1.1), 00:15:12/00:03:03, RP 192.168.0.3, flags: S
Incoming interface: Null, RPF nbr 0.0.0.0
Outgoing interface list:
Ethernet0/1, Forward/Sparse, 00:15:12/00:03:03
----------------------------------------------------------------

R4 show ip mroute 239.1.1.1

----------------------------------------------------------------
R4#show ip mroute 239.1.1.1
IP Multicast Routing Table
~省略~
(*, 239.1.1.1), 00:15:41/00:02:34, RP 192.168.0.3, flags: S
Incoming interface: Ethernet0/1, RPF nbr 192.168.34.3
Outgoing interface list:
Ethernet0/2, Forward/Sparse, 00:15:41/00:02:34
----------------------------------------------------------------

R5 show ip mroute 239.1.1.1

----------------------------------------------------------------
R5#show ip mroute 239.1.1.1
IP Multicast Routing Table
~省略~
(*, 239.1.1.1), 00:28:51/00:02:18, RP 192.168.0.3, flags: SC
Incoming interface: Ethernet0/0, RPF nbr 192.168.45.4
Outgoing interface list:
Ethernet0/1, Forward/Sparse, 00:28:51/00:02:18
----------------------------------------------------------------

pim-sm_autorp03.png
図 239.1.1.1の共有ツリー

Step6:マルチキャストパケットの転送経路の確認

SOURCEから239.1.1.1あてのマルチキャストパケットを連続して送信します。その後、各ルータでディストリビューションツリーを確認します。

R1 show ip mroute 239.1.1.1

----------------------------------------------------------------
R1#show ip mroute 239.1.1.1
IP Multicast Routing Table
~省略~
(*, 239.1.1.1), 00:05:04/stopped, RP 192.168.0.3, flags: SPF
Incoming interface: Ethernet0/2, RPF nbr 192.168.13.3
Outgoing interface list: Null
(192.168.1.100, 239.1.1.1), 00:05:04/00:03:26, flags: FT
Incoming interface: Ethernet0/0, RPF nbr 0.0.0.0
Outgoing interface list:
Ethernet0/2, Forward/Sparse, 00:05:04/00:03:20
----------------------------------------------------------------

R3 show ip mroute 239.1.1.1

----------------------------------------------------------------
R3#show ip mroute 239.1.1.1
IP Multicast Routing Table
~省略~
(*, 239.1.1.1), 00:59:26/00:03:12, RP 192.168.0.3, flags: S
Incoming interface: Null, RPF nbr 0.0.0.0
Outgoing interface list:
Ethernet0/1, Forward/Sparse, 00:59:26/00:03:12
(192.168.1.100, 239.1.1.1), 00:05:44/00:03:28, flags: T
Incoming interface: Ethernet0/0, RPF nbr 192.168.13.1
Outgoing interface list:
Ethernet0/1, Forward/Sparse, 00:05:44/00:03:12
----------------------------------------------------------------

R4 show ip mroute 239.1.1.1

----------------------------------------------------------------
R4#show ip mroute 239.1.1.1
IP Multicast Routing Table
~省略~
(*, 239.1.1.1), 01:00:11/00:03:22, RP 192.168.0.3, flags: S
Incoming interface: Ethernet0/1, RPF nbr 192.168.34.3
Outgoing interface list:
Ethernet0/2, Forward/Sparse, 01:00:11/00:03:17
----------------------------------------------------------------

R5 show ip mroute 239.1.1.1

----------------------------------------------------------------
R5#show ip mroute 239.1.1.1
IP Multicast Routing Table
~省略~
(*, 239.1.1.1), 01:13:25/00:02:56, RP 192.168.0.3, flags: SC
Incoming interface: Ethernet0/0, RPF nbr 192.168.45.4
Outgoing interface list:
Ethernet0/1, Forward/Sparse, 01:13:25/00:02:48
----------------------------------------------------------------

239.1.1.1に関するディストリビューションツリーとマルチキャストパケットの転送経路は、次の図のようになっていることがわかります。

pim-sm_autorp04.png
図 ディストリビューションツリーとマルチキャストパケットの転送経路

SOURCEから送信された239.1.1.1あてのマルチキャストパケットはRPであるR3を経由してルーティングされています。

Step7:RPの切り替え

239.1.1.1のRPをR3からR2へ切り替えます。そのために、R3 E0/0、E0/1をシャットダウンします。

R3

----------------------------------------------------------------
interface Ethernet0/0
shutdown
!
interface Ethernet0/1
shutdown
----------------------------------------------------------------

RP Announce/RP Discoverメッセージの送信間隔を3秒にしているので、R3のダウンを9秒程度で認識します。R2は新しい239.1.1.1としてR2を選び、RP Discoverメッセージで他のルータへアドバタイズします。

Step8:マルチキャストパケットの転送経路の確認(RP切り替え後)

各ルータでディストリビューションツリーを確認して、RPがR2へ切り替わったこととマルチキャストパケットの転送経路を確認します。

R1 show ip mroute 239.1.1.1

----------------------------------------------------------------
R1#show ip mroute 239.1.1.1
IP Multicast Routing Table
~省略~
(*, 239.1.1.1), 00:31:29/stopped, RP 192.168.0.2, flags: SPF
Incoming interface: Ethernet0/1, RPF nbr 192.168.12.2
Outgoing interface list: Null
(192.168.1.100, 239.1.1.1), 00:15:55/00:03:21, flags: FT
Incoming interface: Ethernet0/0, RPF nbr 0.0.0.0
Outgoing interface list:
Ethernet0/1, Forward/Sparse, 00:07:00/00:03:23
----------------------------------------------------------------

R2 show ip mroute 239.1.1.1

----------------------------------------------------------------
R1#show ip mroute 239.1.1.1
IP Multicast Routing Table
~省略~
(*, 239.1.1.1), 00:07:42/00:03:20, RP 192.168.0.2, flags: S
Incoming interface: Null, RPF nbr 0.0.0.0
Outgoing interface list:
Ethernet0/1, Forward/Sparse, 00:07:42/00:03:20
(192.168.1.100, 239.1.1.1), 00:07:42/00:03:26, flags: T
Incoming interface: Ethernet0/0, RPF nbr 192.168.12.1
Outgoing interface list:
Ethernet0/1, Forward/Sparse, 00:07:42/00:03:20
----------------------------------------------------------------

R4 show ip mroute 239.1.1.1

----------------------------------------------------------------
R1#show ip mroute 239.1.1.1
IP Multicast Routing Table
~省略~
(*, 239.1.1.1), 01:28:29/00:03:25, RP 192.168.0.2, flags: S
Incoming interface: Ethernet0/0, RPF nbr 192.168.24.2
Outgoing interface list:
Ethernet0/2, Forward/Sparse, 01:28:29/00:02:37
----------------------------------------------------------------

R5 show ip mroute 239.1.1.1

----------------------------------------------------------------
R1#show ip mroute 239.1.1.1
IP Multicast Routing Table
~省略~
(*, 239.1.1.1), 01:41:47/00:02:55, RP 192.168.0.2, flags: SC
Incoming interface: Ethernet0/0, RPF nbr 192.168.45.4
Outgoing interface list:
Ethernet0/1, Forward/Sparse, 01:41:47/00:02:22
----------------------------------------------------------------

pim-sm_autorp05.png
図 ディストリビューションツリーとマルチキャストパケットの転送経路(RP切り替え後)