實驗拓撲
網(wǎng)絡拓撲及IP編址如圖所示;
設備的互聯(lián)地址為192.168.xy.0/24。其中x、y為設備編號。例如R1-R3之間互聯(lián)的鏈路網(wǎng)段為192.168.13.0/24,并且R1的接口地址為192.168.13.1,R3的接口地址為192.168.13.3,也就是說IP地址的最后一位的值為本設備的編號。
實驗需求
R1、R2及R3運行OSPF;R2、R3、R4運行RIPv2;
R1創(chuàng)建一個Loopback0接口,配置IP地址1.1.1.1/32,并且將這個接口的直連路由重發(fā)布到OSPF;
在R2及R3上均執(zhí)行雙向的路由重發(fā)布,也就是將OSPF路由注入到RIP,將RIP路由注入到OSPF,本路由域內的網(wǎng)段需通過該路由協(xié)議的路由到達,不能出現(xiàn)次優(yōu)路徑。
實驗步驟及配置
1.所有的路由器完成基本配置
R1的配置如下:
[R1]?interface?GigabitEthernet?0/0/0 [R1-GigabitEthernet0/0/0]?ip?address?192.168.12.1?24 [R1]?interface?GigabitEthernet?0/0/1 [R1-GigabitEthernet0/0/1]?ip?address?192.168.13.1?24 [R1]?interface?loopback0 [R1-LoopBack0]?ip?address?1.1.1.1?32 [R1]?ospf?1?router-id?1.1.1.1 [R1-ospf-1]?import-route?direct [R1-ospf-1]?area?0 [R1-ospf-1-area-0.0.0.0]?network?192.168.12.0?0.0.0.255 [R1-ospf-1-area-0.0.0.0]?network?192.168.13.0?0.0.0.255
R2的配置如下:
[R2]?interface?GigabitEthernet?0/0/0 [R2-GigabitEthernet0/0/0]?ip?address?192.168.12.2?24 [R2]?interface?GigabitEthernet?0/0/1 [R2-GigabitEthernet0/0/1]?ip?address?192.168.24.2?24 [R2]?ospf?1?router-id?2.2.2.2 [R2-ospf-1]?area?0 [R2-ospf-1-area-0.0.0.0]?network?192.168.12.0?0.0.0.255 [R2-ospf-1-area-0.0.0.0]?quit [R2]?rip [R2-rip-1]?version?2 [R2-rip-1]?undo?summary [R2-rip-1]?network?192.168.24.0
R3的配置如下:
[R3]?interface?GigabitEthernet?0/0/0 [R3-GigabitEthernet0/0/0]?ip?address?192.168.13.3?24 [R3]?interface?GigabitEthernet?0/0/1 [R3-GigabitEthernet0/0/1]?ip?address?192.168.34.3?24 [R3]?ospf?1?router-id?3.3.3.3 [R3-ospf-1]?area?0 [R3-ospf-1-area-0.0.0.0]?network?192.168.13.0?0.0.0.255 [R3-ospf-1-area-0.0.0.0]?quit [R3]?rip [R3-rip-1]?version?2 [R3-rip-1]?undo?summary [R3-rip-1]?network?192.168.34.0
R4的配置如下:
[R4]?interface?GigabitEthernet?0/0/0 [R4-GigabitEthernet0/0/0]?ip?address?192.168.24.4?24 [R4]?interface?GigabitEthernet?0/0/1 [R4-GigabitEthernet0/0/1]?ip?address?192.168.34.4?24 [R4]?rip [R4-rip-1]?version?2 [R4-rip-1]?undo?summary [R4-rip-1]?network?192.168.24.0 [R4-rip-1]?network?192.168.34.0
2.在R2及R3上執(zhí)行雙向路由重發(fā)布
R2的配置如下:
[R2]?ospf?1 [R2-ospf-1]?import-route?rip [R2]?rip [R2-rip-1]?import-route?ospf?1
R3的配置如下:
[R3]?ospf?1 [R3-ospf-1]?import-route?rip [R3]?rip [R3-rip-1]?import-route?ospf?1
完成上述配置后,我們來看看各臺設備的路由表:
?display?ip?routing-table?protocol?ospf Destination/Mask?Proto?Pre?Cost?Flags?NextHop?Interface 192.168.24.0/24?O_ASE?150?1?D?192.168.12.2?GigabitEthernet0/0/0 O_ASE?150?1?D?192.168.13.3?GigabitEthernet0/0/1 192.168.34.0/24?O_ASE?150?1?D?192.168.12.2?GigabitEthernet0/0/0 O_ASE?150?1?D?192.168.13.3?GigabitEthernet0/0/1
在R1的路由表中,192.168.24.0/24及192.168.23.0/24這兩條RIP域內的路由都是在R2及R3上等價負載分擔,這是很合理的,因為R2和R3都執(zhí)行了RIP到OSPF的路由重發(fā)布,而且注入進來的路由Cost是相等的(缺省都是1)。
?display?ip?routing-table?protocol?rip Destination/Mask?Proto?Pre?Cost?Flags?NextHop?Interface 1.1.1.1/32?RIP?100?1?D?192.168.24.2?GigabitEthernet0/0/0 192.168.12.0/24?RIP?100?1?D?192.168.24.2?GigabitEthernet0/0/0 RIP?100?1?D?192.168.34.3?GigabitEthernet0/0/1 192.168.13.0/24?RIP?100?1?D?192.168.24.2?GigabitEthernet0/0/0 RIP?100?1?D?192.168.34.3?GigabitEthernet0/0/1
查看R4的路由表時我們發(fā)現(xiàn)一個奇怪的現(xiàn)象。對于OSPF域內的路由192.168.12.0/24及192.168.13.0/24,在R4上的確是出現(xiàn)了等價負載分擔,這很好理解,但是1.1.1.1/32這條路由卻沒有出現(xiàn)該有的現(xiàn)象,這條路由下一跳指向R2,那么R3呢?我們到R3上再觀察一下路由表:
display?ip?routing-table Destination/Mask?Proto?Pre?Cost?Flags?NextHop?Interface ??1.1.1.1/32?RIP?100?2?D?192.168.34.4?GigabitEthernet0/0/1 192.168.12.0/24?OSPF?10?2?D?192.168.13.1?GigabitEthernet0/0/0 192.168.24.0/24?RIP?100?1?D?192.168.34.4?GigabitEthernet0/0/1
[ 此處省略部分輸出 ]
R3的路由表中,1.1.1.1/32這條路由竟然是來源于RIP,這顯然是有問題的,因為這條路由是OSPF域內的路由,R3去往這個目標網(wǎng)絡,應該是走OSPF路由,下一跳是R1,然而此時R3的路由表中該條路由卻是來源于RIP,下一跳為R4,這就出現(xiàn)了次優(yōu)路徑,R3訪問1.1.1.1/32的路徑為R4>R2>R1。
為什么會發(fā)生這樣的現(xiàn)象?為什么只有1.1.1.1/32這條OSPF外部路由會發(fā)生這樣的現(xiàn)象?
首先回憶一下,RIP路由協(xié)議的優(yōu)先級是100,而OSPF則有兩個優(yōu)先級,內部路由優(yōu)先級為10,外部路由則為150。好,接下來我們分析分析這個實驗,首先看RIP路由注入OSPF的過程,R2和R3都能學習到RIP域內的路由并加載進路由表,這些路由的優(yōu)先級為100。當RIP路由被R2注入OSPF后,這些路由也會通過OSPF被傳遞到R3上,反之亦然。以R3為例,192.168.24.0/24這條路由,一方面會從RIP學習到,另一方面又會從OSPF學到,此時它會比較OSPF和RIP這兩個協(xié)議的優(yōu)先級,由于這條路由是以5類LSA的形式在OSPF中泛洪,也就是外部路由,OSPF外部路由的優(yōu)先級為150,而RIP的優(yōu)先級為100,顯然RIP路由的優(yōu)先級值更小,也就是優(yōu)先級更優(yōu)。因此這條路由最終R3會優(yōu)選RIP,這是正確的。所以在R2及R3上將RIP路由注入OSPF似乎沒有問題。
再來分析分析從OSPF到RIP的注入過程。還是以R3作為參考點,首先分析一下OSPF域內的路由例如192.168.12.0/24,這條路由首先R3會從OSPF學習到并加載進路由表,OSPF的內部路由優(yōu)先級為10。同時由于在R2上部署了OSPF到RIP的路由重發(fā)布,因此R3又會從RIP學習到這條路有,還是會比較兩種路由的優(yōu)先級:OSPF內部路由優(yōu)先級為10,而RIP路由優(yōu)先級為100,顯然,OSPF路由被優(yōu)選。因此OSPF域內路由不會發(fā)生次優(yōu)路徑的問題。但是再來看看域外路由:1.1.1.1/32,這條路由是R1以重發(fā)布的方式注入到OSPF域的,因此是域外路由,R3能夠通過OSPF學習到該條路由并加載進路由表,OSPF域外路由的優(yōu)先級為150。另一方面,R3又會從RIP學習到該條路由,優(yōu)先級為100,這就出問題了,因為RIP路由的優(yōu)先級要優(yōu)于OSPF外部路由,因此最終關于這條路由,R3會優(yōu)選RIP,次優(yōu)路徑也就出現(xiàn)了。
3.解決次優(yōu)路徑問題
雙點雙向路由重發(fā)布是一個經(jīng)典的課題,這種類型的組網(wǎng)很容易出現(xiàn)路由環(huán)路或者次優(yōu)路徑的問題。解決的方法也是多種多樣的,我們這里先演示一種:修改路由優(yōu)先級。在R2及R3上,創(chuàng)建一個前綴列表1用于抓取1.1.1.1/32這條OSPF外部路由,然后在route-policy ase中調用該條ACL,并將匹配這條ACL的路由的優(yōu)先級值設置為99(比RIP路由的優(yōu)先級100更?。?,然后在OSPF的視圖下使用preference命令調用這個route-policy。OSPF視圖下的Preferencease這條命令用于修改外部路由(ase)的優(yōu)先級。
R2的配置如下:
[R2]?ip?ip-prefix?1?permit?1.1.1.1?32 [R2]?route-policy?ase_policy?permit?node?10 [R2-route-policy]?if-match?ip-prefix?1 [R2-route-policy]?apply?preference?99 [R2]?ospf?1 [R2-ospf-1]?preference?ase?route-policy?ase_policy
R3的配置如下:
[R3]?ip?ip-prefix?1?permit?1.1.1.1?32 [R3]?route-policy?ase_policy?permit?node?10 [R3-route-policy]?if-match?ip-prefix?1 [R3-route-policy]?apply?preference?99 [R3]?ospf?1 [R3-ospf-1]?preference?ase?route-policy?ase_policy
完成上述配置后,再來看一看R2及R3的路由表:
[R2]?display?ip?routing-table Destination/Mask?Proto?Pre?Cost?Flags?NextHop?Interface 1.1.1.1/32?O_ASE?99?1?D?192.168.12.1?GigabitEthernet0/0/0 192.168.13.0/24?OSPF?10?2?D?192.168.12.1?GigabitEthernet0/0/0 192.168.34.0/24?RIP?100?1?D?192.168.24.4?GigabitEthernet0/0/1 [R3]display?ip?routing-table Destination/Mask?Proto?Pre?Cost?Flags?NextHop?Interface 1.1.1.1/32?O_ASE?99?1?D?192.168.13.1?GigabitEthernet0/0/0 192.168.12.0/24?OSPF?10?2?D?192.168.13.1?GigabitEthernet0/0/0 192.168.24.0/24?RIP?100?1?D?192.168.34.4?GigabitEthernet0/0/1
R2及R3的路由表這回正常了。
編輯:黃飛
?
評論