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來完成組播源資訊的共享
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成長之路 ---梅利