aopicoのブログ

aopicoのブログ

ブログの説明を入力します。
→しません。

Amebaでブログを始めよう!
AS間でマルチキャストルーティングを実現するには、それぞれのASにあるRP(Rendezvous Point)同士で、MSDP(Multicast Source Discovery Protocol)を動作させます


topologyは下図の通り

2014110301_topology

それぞれの機器の役割

R3 - AS1のRP
R4 - AS2のRP
R3、R4両機器ともAuto-RPを設定しています

R5 - AS1の境界ルータとしてBGPが動作
R6 - AS2の境界ルータとしてBGPが動作
R5とR6でBGPピアを張っています

R1 - ファーストホップルータ
R2 - ラストホップルータ

Windows7_1 - マルチキャストソースとなるホスト(AS1に所属)
CentOS5.7_1 - マルチキャストレシーバとなるホスト(AS2に所属)


MSDPの設定方法としてはRPとなるルータで下記コマンドを入力


(config)# ip msdp peer < 他ASのRPの送信元アドレス > connect-source < 送信元IF > remote-as < 接続先のAS No. >


ただ設定するだけなら以上となります


注意点としては、MSDPピアとなるRPへ到達性が確保されていること

この構成では、RPの送信元となるLoopbackインターフェース(のIPアドレス)をOSPFの動作対象とすることで、
ASの境界となるルータのルーティングテーブルに載り、EBGPで隣接ASの境界ルータへアドバタイズしています

なお、他ASのRPのアドレスを受信した隣接ASの境界ルータではBGPからOSPFへ再配送して、AS内のルータへ伝播させています


【設定】

マルチキャストアドレスは231.1.1.1を使用します

--------------------------------------------------------
!R6

ip multicast-routing

int lo0
ip add 10.1.1.6 255.255.255.255

int f2/1
ip add 10.4.6.2 255.255.255.252
ip pim sparse-mode
no shut

int g3/0
ip add 100.5.6.2 255.255.255.252
ip pim sparse-mode
no shut

router ospf 1
redistribute bgp 2 route-map bgp_to_ospf subnets
network 10.4.6.2 0.0.0.0 area 0

router bgp 2
network 10.1.1.4 mask 255.255.255.255
network 172.16.1.0 mask 255.255.255.0
neighbor 10.1.1.5 remote-as 1
neighbor 10.1.1.5 ebgp-multihop 2
neighbor 10.1.1.5 update-source lo0

ip route 10.1.1.5 255.255.255.255 100.5.6.1

access-list 1 permit host 10.1.1.3
access-list 1 permit 10.0.0.0 0.0.0.255

route-map bgp_to_ospf permit 10
match ip add 1



- R6のconfigについて -

lo0はBGPの送信元

router ospf 1
redistribute bgp 2 route-map bgp_to_ospf subnets
BGPで得たAS1のRPのアドレスと、マルチキャストソースのネットワークアドレスをOSPFへ再配送
マルチキャストソースへの到達性が無いとRPFチェックが失敗するので注意

network 10.1.1.4 mask 255.255.255.255
OSPFで得たAS2にあるRPのアドレスをAS1の境界ルータR5へアドバタイズ

network 172.16.1.0 mask 255.255.255.0
疎通確認用としてレシーバが所属するネットワークアドレスをAS1へアドバタイズ

access-list 1 permit host 10.1.1.3
AS1に所属するのRPのアドレス(再配送対象)

access-list 1 permit 10.0.0.0 0.0.0.255
AS1に所属するマルチキャストソースのネットワークアドレス(再配送対象)

--------------------------------------------------------
!R5

ip multicast-routing

int lo0
ip add 10.1.1.5 255.255.255.255

int f2/1
ip add 10.3.5.2 255.255.255.252
ip pim sparse-mode
no shut

int g3/0
ip add 100.5.6.1 255.255.255.252
ip pim sparse-mode
no shut

router ospf 1
redistribute bgp 1 route-map bgp_to_ospf subnets
network 10.3.5.2 0.0.0.0 area 0

router bgp 1
network 10.1.1.3 mask 255.255.255.255
network 10.0.0.0 mask 255.255.255.0
neighbor 10.1.1.6 remote-as 2
neighbor 10.1.1.6 ebgp-multihop 2
neighbor 10.1.1.6 update-source lo0

ip route 10.1.1.6 255.255.255.255 100.5.6.2

access-list 1 permit host 10.1.1.4
access-list 1 permit 172.16.1.0 0.0.0.255

route-map bgp_to_ospf permit 10
match ip add 1



- R5のconfigについて -

・lo0はBGPの送信元

router ospf 1
redistribute bgp 1 route-map bgp_to_ospf subnets
BGPで得たAS2のRPのアドレスと、マルチキャストレシーバのネットワークアドレスをOSPFへ再配送
疎通確認用としてマルチキャストレシーバのネットワークアドレスも再配送

network 10.1.1.3 mask 255.255.255.255
OSPFで得たAS1にあるRPのアドレスをAS2の境界ルータR6へアドバタイズ

network 10.0.0.0 mask 255.255.255.0
マルチキャストソースが所属するネットワークアドレスをAS2へアドバタイズ
AS2からマルチキャストソースが所属するネットワークアドレスへの到達性が確保できていないとRPFチェックが失敗する

access-list 1 permit host 10.1.1.4(再配送対象)
AS2に所属するのRPのアドレス

--------------------------------------------------------
!R4

ip multicast-routing

int lo0
ip add 10.1.1.4 255.255.255.255
ip pim sparse-mode

int f2/0
ip add 10.4.6.1 255.255.255.252
ip pim sparse-mode
no shut

int f2/1
ip add 10.2.4.2 255.255.255.252
ip pim sparse-mode
no shut

router ospf 1
network 10.1.1.4 0.0.0.0 area 0
network 10.2.4.2 0.0.0.0 area 0
network 10.4.6.1 0.0.0.0 area 0

ip pim send-rp-announce lo0 scope 10 group-list 1 interval 5
ip pim send-rp-discovery lo0 scope 10

ip msdp peer 10.1.1.3 connect-source lo0 remote-as 2

access-list 1 permit host 231.1.1.1



- R4のconfigについて -

ip pim send-rp-announce lo0 scope 10 group-list 1 interval 5
RPとなるため送信元をlo0インターフェース、RP-Announceメッセージ(RP立候補)の届く範囲(TTL)を10ホップ、マルチキャストグループ231.1.1.1のRPになり、RP-Announceメッセージの送信間隔は5秒

ip pim send-rp-discovery lo0 scope 10
マッピングエージェント(MA)としてRP-Discoveryメッセージ(RPのアドレスを通知)の送信元をloインターフェース、メッセージの届く範囲(TTL)を10ホップ

ip msdp peer 10.1.1.3 connect-source lo0 remote-as 2
MSDPピアを10.1.1.3、メッセージの送信元をlo0、MSPDピアとなるRPが所属しているASを指定

RPに設定するマルチキャストグループのアドレス
access-list 1 permit host 231.1.1.1

--------------------------------------------------------
!R3

ip multicast-routing

int lo0
ip add 10.1.1.3 255.255.255.255
ip pim sparse-mode

int f2/0
ip add 10.3.5.1 255.255.255.252
ip pim sparse-mode
no shut

int f2/1
ip add 10.1.3.2 255.255.255.252
ip pim sparse-mode
no shut

router ospf 1
network 10.1.1.3 0.0.0.0 area 0
network 10.1.3.2 0.0.0.0 area 0
network 10.3.5.1 0.0.0.0 area 0

ip pim send-rp-announce lo0 scope 10 group-list 1 interval 5
ip pim send-rp-discovery lo0 scope 10

ip msdp peer 10.1.1.4 connect-source lo0 remote-as 2

access-list 1 permit host 231.1.1.1



- R3のコンフィグについて -
値が違うだけで、R4と設定内容は同じです

--------------------------------------------------------
!R2

ip multicast-routing

int lo0
ip add 10.1.1.2 255.255.255.255

int f2/0
ip add 10.2.4.1 255.255.255.252
ip pim sparse-mode
no shut

int f2/1
ip add 172.16.1.254 255.255.255.0
ip pim sparse-mode
no shut

router ospf 1
redistribute connected subnets
network 10.2.4.1 0.0.0.0 area 0

--------------------------------------------------------
!R1

ip multicast-routing

int lo0
ip add 10.1.1.1 255.255.255.255

int f2/0
ip add 10.1.3.1 255.255.255.252
ip pim sparse-mode
no shut

int f2/1
ip add 10.0.0.254 255.255.255.0
ip pim sparse-mode
no shut

router ospf 1
redistribute connected subnets
network 10.1.3.1 0.0.0.0 area 0

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




【確認】

マルチキャストが流れている間、レシーバが所属しているASのRPとなるルータ、ラストホップルータで確認したlogは下記のとおりです

--------------------------------------------------------
ASにRPとなるR4のlog

R4#show ip msdp sa-cache
MSDP Source-Active Cache - 1 entries
(10.0.0.1, 231.1.1.1), RP 10.1.1.3, AS ?,00:00:24/00:05:35, Peer 10.1.1.3


R4#show ip msdp summary
MSDP Peer Status Summary
Peer Address AS State Uptime/ Reset SA Peer Name
Downtime Count Count
10.1.1.3 2 Up 00:04:46 0 1 ?


R2#show ip pim rp
Group: 231.1.1.1, RP: 10.1.1.4, v2, v1, uptime 00:09:20, expires 00:02:31

--------------------------------------------------------
R2のlog

R2#show ip rpf 10.0.0.0
RPF information for ? (10.0.0.0)
RPF interface: FastEthernet2/0
RPF neighbor: ? (10.2.4.2)
RPF route/mask: 10.0.0.0/24
RPF type: unicast (ospf 1)
Doing distance-preferred lookups across tables
RPF topology: ipv4 multicast base, originated from ipv4 unicast base


R2#show ip mroute 231.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,
V - RD & Vector, v - Vector
Outgoing interface flags: H - Hardware switched, A - Assert winner
Timers: Uptime/Expires
Interface state: Interface, Next-Hop or VCD, State/Mode

(*, 231.1.1.1), 00:04:55/stopped, RP 10.1.1.4, flags: SJC
Incoming interface: FastEthernet2/0, RPF nbr 10.2.4.2
Outgoing interface list:
FastEthernet2/1, Forward/Sparse, 00:04:55/00:02:04

(10.0.0.1, 231.1.1.1), 00:03:51/00:02:50, flags: JT
Incoming interface: FastEthernet2/0, RPF nbr 10.2.4.2
Outgoing interface list:
FastEthernet2/1, Forward/Sparse, 00:03:51/00:02:04


マルチキャスト受信前

R2#show ip multicast int
FastEthernet2/0 is up, line protocol is up
Internet address is 10.2.4.1/30
Multicast routing: enabled
Multicast switching: fast
Multicast packets in/out: 118/0
Multicast TTL threshold: 0
Multicast Tagswitching: disabled
FastEthernet2/1 is up, line protocol is up
Internet address is 172.16.1.254/24
Multicast routing: enabled
Multicast switching: fast
Multicast packets in/out: 12/0
Multicast TTL threshold: 0
Multicast Tagswitching: disabled


マルチキャスト受信後

R2#show ip multicast int
FastEthernet2/0 is up, line protocol is up
Internet address is 10.2.4.1/30
Multicast routing: enabled
Multicast switching: fast
Multicast packets in/out: 724/0
Multicast TTL threshold: 0
Multicast Tagswitching: disabled
FastEthernet2/1 is up, line protocol is up
Internet address is 172.16.1.254/24
Multicast routing: enabled
Multicast switching: fast
Multicast packets in/out: 12/593
Multicast TTL threshold: 0
Multicast Tagswitching: disabled

R2のマルチキャストパケット受信インターフェースはf2/0、レシーバに送信(出力)するインターフェースはf2/1
受信前、受信後のshow ip multicast intの出力結果で「Multicast packets in/out: 」項目のin/outの値が増えていることが分かります



以上となります