You are on page 1of 13

RP 的選舉:

如果一台設備同時使用靜態和動態的方式選舉 RP,優先順序的關係

如下:

Auto-rp >BSR >靜態 RP

為了保證 RP 的穩定性,一般使用 loopback 口作為 RP。

RP 的選舉方式:

手工靜態:

每一台組播路由器都需要配置靜態 RP

指定靜態 RP,RP 位址這個介面不需要啟用 PIM 協定?

優點:穩定

缺點:不能夠動態切換,配置麻煩

靜態 RP 配置

SPOTO(config)# ip pim rp-address 192.168.1.1 1

[ override ]

SPOTO(config)# access-list 1 permit 239.1.1.0 0.0.0.255

*192.168.1.1 是 RP 的地址

*1 表示 RP 只為該組播位址服務【可選參數】

*override 靜態 RP 優先於 Auto-RP 和 BSR 選舉的 RP【可選參數】

動態:
動態選舉 RP 的缺點:同一時間,只有一個 RP 在工作。工作效率

1)Auto-RP:思科私有協議

C-RP---候選 RP

映射代理—裁判

Auto-RP 工作原理:

1)先選舉出映射代理

2)映射代理通告組播的方式,告訴所有的組播路由器映射代理的資

訊(224.0.1.40)每隔 60s

3)C-RP 以組播的形式通告 C-RP 的資訊,組播位址是 224.0.1.39,

每隔 60

4)由映射代理來選舉 RP,(IP 地址越大,成為 RP),然後再告訴

所有的組播路由器

Auto-rp 的選舉:映射代理和 RP 的選舉,都是選擇 IP 位址大的。

動態選舉 RP 和映射代理時,參與選舉的介面需要啟用 PIM 協定。

連接 PIM 路由器的介面

第一跳路由器連接組播源的介面

最後一跳路由器連接接收者的介面

注:在 PIM-SM 中,使用 auto-rp 選舉,出現的問題:

在 PIM-SM 中,要發送組播流量,必須先知道 RP 吧

RP 還沒有選舉出來,就無法發送組播流量
Auto-rp 中,C-RP 和映射代理發送的消息都是使用組播來發送

解決辦法:

1) ip pim sparse-dense-mode

同時運行 SM 和 DM

沒有 RP 時,使用 DM 建立 SPT,選舉出 RP,

當 RP 選舉出以後,使用 SM 來發送組播流量

2) ip pim autorp listener

當還沒有建立組播分發樹時,收到組播資訊,將從所有啟用 PIM 協

定的介面發送出去

2)BSR:公有

C-RP---候選 RP

BSR----裁判

BSR 工作原理:

1)BSR 向全網啟用 PIM 協議之路由器發送關於自己是 BSR 的信息,

目的地址是 224.0.0.13。

2)C-RP 知道了 BSR 的信息,單播發送 C-RP 的通告。

3)BSR 收到這些 C-RP 的信息,發送給所有的組播路由器,讓組播路

由器自己去選舉 RP。

如果為了簡化部署,可以將 RP 和 BSR 部署在同一台路由器上。

BSR 選舉:
1 選擇優先級大

2 IP 位址大

RP 選舉:

1 選擇優先級小

2 選擇 Hash 值大

3 選擇 IP 位址大

缺點:

1. 雖然一開始可能不是最優路徑,但可以進行 RPT-SPT 切換

2. RP 同時只有一個,無法 Load Balance

Demo Auto-RP Case I


1. 刪除 All RP 靜態配置

(R4~)R1# no ip pim rp-address 3.3.3.3

2. 配置 Auto-RP

R3# int lo0 #ip pim sparse-mode

R3# ip pim send-rp-discovery loopback 0 scope 5

R3# ip pim send-rp-announce loopback 0 scope 5

R3# show ip pim rp

Group: 239.1.1.1, RP: 3.3.3.3,v2v1…


3. 查看其他設備是否學到 RP info

R1,R2,R4# show ip pim rp

Group: 239.1.1.1, RP:3.3.3.3

4. 如果沒有,再從 Source ping 239.1.1.1 幾次

R5# ping 239.1.1.1

Demo Auto-RP Case II

1. R3 不再是 RP mapping

R3# no ip pim send-rp-discovery loopback 0 scope 5


2. 配置 loopback 0 加入 ip pim sparse-mode

R2# int lo0 # ip add 2.2.2.2 255.255.255.255

# ip pim sparse-mode

R1# int lo0 # ip add 1.1.1.1 255.255.255.255

# ip pim sparse-mode

3. R1 成為 RP mapping,R2 成為 C-RP

R1# ip pim send-rp-discovery loopback 0 scope 5

R2# ip pim send-rp-announce loopback 0 scope 5

4. Clear ip pim rp-mapping[原本],等一會

(R4~)R1# clear ip pim rp-mapping

5. 一開始

R2# show ip pim rp

Group: 239.1.1.1, RP:0.0.0.0[還沒有]

6. 查看 Auto-RP election 狀況

R1# show ip pim rp mappings

PIM Group-to-RP Mapping

Group(s) 224.0.0.0/4

RP 3.3.3.3(?) , v2v1

Info source: 3.3.3.3(?), elected via Auto-RP

Uptime:00:00:34, expires: 00:02:24

RP 2.2.2.2(?) , v2v1
Info source: 2.2.2.2(?), elected via Auto-RP

Uptime:00:00:17, expires: 00:02:43

R1# show ip pim rp

Group: 239.1.1.1, RP:3.3.3.3, v2 v1

 Issues ?
R5# ping 239.1.1.1

…不通

R4 要收到 RP 信息,才能生成共享樹

Auto-RP 發送 discovery 消息的時候發送的是組播

i.e. 發送 RP 需要共享樹,但

RP 都沒有學到,怎麼有共享樹

1. 配置 pim-sparse-mode,當沒建立共享樹,無法發送 RP 的信

先使用 Dense mode 生成 SPT,把 RP 信息發送給 All 組播路由

器,組播路由器收到 RP 信息,生成共享樹,後續組播數據包

根據 RPT 來發送

2. 配置 ip pim autorp listener

(R4~)R1# ip pim autorp listener

7. 查看 R4 收到 RP 信息?

R4# show ip pim rp mapping


Group(s) 224.0.0.0/4

RP 3.3.3.3(?) , v2v1

Info source: 1.1.1.1(?), elected via Auto-RP

Uptime:00:00:00, expires: 00:02:55

8. R5 ping 通

R5# ping 239.1.1.1

Reply to request 0 from 46.1.1.6, 1288ms

Demo BSR
(R3~)R1# no ip pim send-rp-announce loopback 0 scope 5

(R3~)R1# no ip pim autorp listener

(R3~)R2# ip pim rp-candidate loopback 0

R1# ip pim bsr-candidate loopback 0

(R3~)R2# ip pim rp-candidate loopback 0 priority 10(30)

R1# show ip pim bsr-router


PIMv2 Bootstrap information
This system is the Bootstrap Router (BSR)
  BSR address: 1.1.1.1 (?)
  Uptime:      00:00:36, BSR Priority: 0, Hash mask length: 0
  Next bootstrap message in 00:01:31

R2# show ip pim bsr-router


PIMv2 Bootstrap information
This system is the Bootstrap Router (BSR)
  BSR address: 1.1.1.1 (?)
  Uptime:      00:00:51, BSR Priority: 0, Hash mask length: 0
  Next bootstrap message in 00:01:18
Candidate RP: 2.2.2.2(Loopback 0)

R4# show ip pim bsr-router


PIMv2 Bootstrap information
This system is the Bootstrap Router (BSR)
  BSR address: 1.1.1.1 (?)

R4# show ip pim rp mapping in-use


PIM Group-to-RP Mappings
Group(s) 224.0.0.0/4
  RP 3.3.3.3 (?), v2
    Info source: 1.1.1.1 (?), via bootstrap, priority 30, holdtime
150
         Uptime: 00:07:03, expires: 00:02:23
Dynamic(Auto RP or BSR) RPs in cache that are in use:
Group(s) 224.0.0.0/4,RP 3.3.3.3, expires: 00:00:58

R4# show ip pim rp //BSR 需要一跳一跳的傳播,RP (優先級小)

尚未選舉完成
Group: 239.1.1.1, RP: 3.3.3.3, v2, uptime 00:05:08, expires 00:02:21

R1# show ip pim rp mapping in-use


PIM Group-to-RP Mappings
This system is the Bootstrap Router (v2)

Group(s) 224.0.0.0/4
  RP 2.2.2.2 (?), v2
    Info source: 12.1.1.2 (?), via bootstrap, priority 10, holdtime
150
         Uptime: 00:07:08, expires: 00:02:19
  RP 3.3.3.3 (?), v2
    Info source: 13.1.1.3 (?), via bootstrap, priority 30, holdtime
150
         Uptime: 00:07:03, expires: 00:02:23

R4# show ip pim rp


Group: 239.1.1.1, RP: 2.2.2.2, v2, uptime 00:05:08, expires 00:02:21

R4# show ip pim rp mapping in-use


PIM Group-to-RP Mappings
This system is the Bootstrap Router (v2)

Group(s) 224.0.0.0/4
  RP 2.2.2.2 (?), v2
    Info source: 1.1.1.1 (?), via bootstrap, priority 10, holdtime
150
         Uptime: 00:07:08, expires: 00:02:19
  RP 3.3.3.3 (?), v2
    Info source: 1.1.1.1 (?), via bootstrap, priority 30, holdtime
150
         Uptime: 00:07:03, expires: 00:02:23
Dynamic(Auto RP or BSR) RPs in cache that are in use:
Group(s) 224.0.0.0/4,RP 2.2.2.2, expires: 00:00:58

R5# ping 239.1.1.1 !!!!!


Anycast RP

1)靜態組播路由條目

ip mroute 15.1.1.1 255.255.255.255 12.1.1.1

BGP 組播地址族學到的路由條目

單播路由表學到的路由條目

You might also like