1. 程式人生 > 實用技巧 >multicast-10 Anycast RP

multicast-10 Anycast RP

Anycast RP

任意播RP

同樣離不開MSDP協議,

定義

1 Anycast 最初由RPF1546提出並定義,用於IP網路上通過一個IP地址標識一組特定的服務的主機,同時服務訪問並不關心提供服務的具體是哪一臺主機,(比如我們常用的8.8.8.8)訪問該地址的資料包將被路由器提供的 路由表到最近的一臺主機上,因此anycast 指的是找到任意的一個離本地最近的主機

2 anycast RP指的是在同一AS 內設定出多個地址完全一樣的RP,形成多個物理RP,一個邏輯RP,當組播路由器使用RP時,將被組播路由器按照單播路由表將其引導到離自己最近的RP上,

3 多個物理RP之間需要 通過MSDP來完成組播源資訊的共享

,因為第一跳路由器也只能使用離自己最近的RP

4 多個RP之間可以實現相互的分攤和備份

5 RP選擇的方法可以是三種 RP-selection 中的任意一種 static bsr autorp

之所以說可以分攤

實際上就是大家都線上,沒有主備之分,幹不同的活,有人負責加組,有人負註冊

例項走一波

這次我們使用BSR

R3上輸入

Ip pim bsr-candidate lo 1
Ip pim rp-candidate lo 0

R2上輸入

Ip pim rp-candidate lo 0

PS:RP的指定要使用相同的IP地址,而BSR最好不要使用這個地址,因為到時候根本就不知道是誰發的了。

這樣一來確認了角色,R3是BSR 又是CRP

而R2只是一臺CRP

可以看到其它三臺裝置上的RP mapping 表,資訊源都是R3,information source 3.3.3.3

為什麼呢?如果你沒有記住的話,請往回看看。

但是R2上啥都沒有,因為R3現在自己是RP,不會再向上發了,所以R2上是空的,

那要怎麼辦呢?

配置MSDP,

讓組播資料到達R1後,去請求R2,而R2收到這個register訊息之後會將其轉發下去,使用SA訊息

注意這時在建立 MSDP時,就不可以使用100.1.1.1這個地址了,

為什麼呢?因為兩個地址是一樣的,系統也會報錯的

所以需要我們使用另外一個Lo 介面的地址來做

如各自的LO 1 介面

R2(config)#ip msdp peer 3.3.3.3 connect-source lo 1

如果要是使用100.1.1.1 這個介面做為源和目的呢?行不行?

肯定不行,因為兩側的地址是一樣的,咋建啊?

R3(config)#ip msdp peer 2.2.2.2 connect-source lo 1

這樣一來,就可以完成一些訊息的傳遞了

R1—R2 的register 訊息

R2-R3傳送的SA 訊息

R3-R4的組播流量,走*,G表項

R3上看到了源,形成了S,G表項

並順著s,g的In口向上傳送S,Gjoin 訊息

以此類推就到了R1,形成了S,G的表項。

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

CCIE成長之路 ---梅利