路由重分發通常在那些負責從一個AS學習路由,然後向另一個AS廣播的路由器上進行配置,例如,一臺路由器即運行OSPF又運行RIP,如果OSPF進程被配置爲通告由RIP學習到的路由到OSPF AS中,那麼這種做法就可以成爲“重分發RIP”。
一個單一的IP路由器協議是管理網絡中IP路由的首選方案,無論是從配置管理的角度還是從容錯管理的角度,每臺路由器都被期望運行單種路由協議而不是多種路由協議。然而,現實網絡的情況是存在多種路由協議的,並且這些網絡要互聯互通,那就必須至少有一臺路由器運行多種路由協議來實現不同網絡之間的通信,因而,路由重分發的問題不可避免(文章末尾會有配置路由重分發的相關命令,若沒耐心,可直接翻閱至文章末尾)
進行路由重分發時,不管是有類路由協議(如:RIP v2)還是無類路由協議(如:RIP v1),都需要考慮每種路由協議的能力及特性,最常需要考慮的兩個因素是度量值和管理距離。
度量值
一些常用的度量值有跳數、成本、帶寬、時延、負載、可靠性、最大傳輸單元(MTU)等。
OSPF路由協議的度量值爲成本,而RIP路由協議的度量值爲跳數。
管理距離
管理距離是指 一種路由協議的路由可信度。每一種路由協議按可靠性從高到低依次分配一個信任等級,這個信任等級就是管理距離,對於兩種不同路由協議到一個目的地的路由信息,路由器首先根據管理距離決定相信哪一個協議。Cisco IOS使用的默認管理距離如下所示:
OSPF重分發路由的路徑類型
重分發到OSPF AS中路由的路徑類型分爲兩種:類型1(E1)的外部路徑和類型2(E2)的外部路徑。兩種類型的區別是,計算開銷值的方法不一樣,前者計算開銷值是這條路由的外部開銷(ASBR指定)加上路由器到達ASBR路由器的路徑開銷之和。而後者的計算方法是值需要考慮外部路由在OSPF外部的開銷,而忽略到達ASBR路由器的內部開銷。示意圖如下:
配置路由器重分發
在進行路由重分發之前,必須注意以下幾個方面:
- 決定在哪裏添加新的協議;
- 確定ASBR(自治系統邊界路由器);
- 決定哪個協議在覈心,哪個協議在邊界;
- 決定進行路由重分發的方向。
下面配置命令是在RIP和OSPF之間進行重分發命令的實例:
Router(config)#router rip
Router(config-router)#redistribute ospf 1 metric 10
Router(config)#router ospf 1
Router(config-router)#redistribute rip subnets
在上面的配置命令中,由OSPF派生的路由被重分發到RIP路由中,並且度量值跳數爲10(可以省略不指定)。由RIP派生的路由被重分發到OSPF之中,沒有指定metric,則保持默認20。 “ subnets ”的意思爲重分發時攜帶子網掩碼信息。
重分發靜態路由時,只需要在OSPF協議中發佈即可,配置如下:
Router(config)#router ospf 1
Router(config-router)#redistribute static metric 100 subnets metric-type 2
在上面的配置中,靜態路由被重分發到OSPF中,作爲類型2的外部路由,並給定一個OSPF開銷100。指定重分發路由的類型爲2,其中“metric ”和“metric-type”字段一般省略不寫,默認的重分發路由類型就是2。即可簡寫爲:Router(config-router)#redistribute static subnets
。
若重分發直連網段,只需將上述命令中的static
更改爲connected
即可
重分發默認路由時,需要使用default-information originate
命令,此命令也可以在命令字後面跟着指定被重分發的默認路由的度量值,也可以設定OSPF外部路由類型1或2。命令格式如下:
Router(config)#router ospf 1
Router(config-router)#default-information originate
這樣默認路由就被重分發到OSPF中了,但並沒有指定外部路由的類型和度量值。
路由重分發實例:
上述環境中需要重分發靜態路由、默認路由、直連路由、RIP、OSPF,涉及到的比較全面,配置命令如下(省略配置接口IP的命令):
R1路由器的路由配置信息如下:
R1(config)#ip route 0.0.0.0 0.0.0.0 30.0.0.1
R1(config)#router ospf 1
R1(config-router)#net 20.0.0.0 0.255.255.255 area 1
R1(config-router)#net 40.0.0.0 0.255.255.255 area 0
R1(config-router)#net 1.1.1.1 0.0.0.0 area 0
R1(config-router)#default-information originate
R2路由器的路由配置信息如下:
R2(config)#router ospf 1
R2(config-router)#net 40.0.0.0 0.255.255.255 area 0
R2(config-router)#net 2.2.2.2 0.0.0.0 area 0
R2(config-router)#redistribute rip subnets
R2(config)#router rip
R2(config-router)#net 50.0.0.0
R2(config-router)#redistribute ospf 1 metric 10
R3路由器的路由配置信息如下:
R3(config)#ip route 4.4.4.4 255.255.255.255 10.0.0.1
R3(config)#router ospf 1
R3(config-router)#net 3.3.3.3 0.0.0.0 area 1
R3(config-router)#net 20.0.0.0 0.255.255.255 area 1
R3(config-router)#redistribute static subnets
R3(config-router)#redistribute connected subnets
R4路由器的路由配置信息如下:R4(config)#ip route 0.0.0.0 0.0.0.0 10.0.0.2
R5路由器的路由配置信息如下:
R5(config)#router rip
R5(config-router)#net 5.5.5.5
R5(config-router)#net 50.0.0.0
R6路由器的路由配置信息如下:R6(config)#ip route 0.0.0.0 0.0.0.0 30.0.0.2
至此,即可驗證網絡通信是否正常。(需要配置路由重分發的路由器必定是運行着多種路由協議,只要牢記這句話,再大的網絡環境也不會配置出錯,另外,聲明網段信息時,務必謹記,不要漏掉任何一個網段)
查看運行RIP協議的R5路由器上的路由表(已經學習到了全部的路由信息)
R5#show ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route
Gateway of last resort is 50.0.0.1 to network 0.0.0.0
R 1.0.0.0/8 [120/10] via 50.0.0.1, 00:00:26, FastEthernet1/0
C 50.0.0.0/8 is directly connected, FastEthernet1/0
R 2.0.0.0/8 [120/10] via 50.0.0.1, 00:00:26, FastEthernet1/0
R 3.0.0.0/8 [120/10] via 50.0.0.1, 00:00:26, FastEthernet1/0
R 4.0.0.0/8 [120/10] via 50.0.0.1, 00:00:26, FastEthernet1/0
R 20.0.0.0/8 [120/10] via 50.0.0.1, 00:00:26, FastEthernet1/0
5.0.0.0/32 is subnetted, 1 subnets
C 5.5.5.5 is directly connected, Loopback0
R 40.0.0.0/8 [120/10] via 50.0.0.1, 00:00:00, FastEthernet1/0
R 10.0.0.0/8 [120/10] via 50.0.0.1, 00:00:00, FastEthernet1/0
R* 0.0.0.0/0 [120/1] via 50.0.0.1, 00:00:00, FastEthernet1/0
R1作爲骨幹區域的路由表如下:
R1#show ip route
Codes: C - connected, S - static, R - RIP, M - mobile, B - BGP
D - EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF inter area
N1 - OSPF NSSA external type 1, N2 - OSPF NSSA external type 2
E1 - OSPF external type 1, E2 - OSPF external type 2
i - IS-IS, su - IS-IS summary, L1 - IS-IS level-1, L2 - IS-IS level-2
ia - IS-IS inter area, * - candidate default, U - per-user static route
o - ODR, P - periodic downloaded static route
Gateway of last resort is 30.0.0.1 to network 0.0.0.0
1.0.0.0/32 is subnetted, 1 subnets
C 1.1.1.1 is directly connected, Loopback0
O E2 50.0.0.0/8 [110/20] via 40.0.0.1, 00:25:25, FastEthernet3/0
2.0.0.0/32 is subnetted, 1 subnets
O 2.2.2.2 [110/2] via 40.0.0.1, 00:25:53, FastEthernet3/0
3.0.0.0/32 is subnetted, 1 subnets
O 3.3.3.3 [110/2] via 20.0.0.1, 00:23:28, FastEthernet1/0
4.0.0.0/32 is subnetted, 1 subnets
O E2 4.4.4.4 [110/20] via 20.0.0.1, 00:10:48, FastEthernet1/0
C 20.0.0.0/8 is directly connected, FastEthernet1/0
O E2 5.0.0.0/8 [110/20] via 40.0.0.1, 00:08:22, FastEthernet3/0
C 40.0.0.0/8 is directly connected, FastEthernet3/0
O E2 10.0.0.0/8 [110/20] via 20.0.0.1, 00:23:00, FastEthernet1/0
C 30.0.0.0/8 is directly connected, FastEthernet2/0
S* 0.0.0.0/0 [1/0] via 30.0.0.1