您的位置:首页 > 职场人生

ospf默认路由重分布

2010-02-24 16:51 776 查看
版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://frecolwang.blog.51cto.com/330699/136988
拓扑



让我们恢复使用之前的拓扑,并添加一条通向 ISP 的链路。就象在 RIP 和 EIGRP 中一样,连接到 Internet 的路由器用于向 OSPF 路由域内的其它路由器传播默认路由。此路由器有时也称为边缘路由器、入口路由器或网关路由器。然而,在 OSPF 术语中,位于 OSPF 路由域和非 OSPF 网络间的路由器称为自治系统边界路由器 (ASBR)。在本拓扑中,Loopback1 (Lo1) 代表一条通向非 OSPF 网络的链路。我们不会将网络 172.30.1.1/30 配置为 OSPF 路由过程的一部分。



如图所示,ASBR (R1) 配置有 Loopback1 IP 地址和静态默认路由,可向 ISP 路由器转发通信:
R1(config)#ip route 0.0.0.0 0.0.0.0 loopback 1
注:该静态默认路由使用环回接口作为送出接口,原因在于本拓扑中的 ISP 路由器实际上并不存在。我们可以通过使用环回接口来模拟与其它路由器的连接。
与 RIP 相似的一点是,OSPF 需要使用 default-information originate 命令来将 0.0.0.0/0 静态默认路由通告给区域内的其它路由器。如果未使用 default-information originate 命令,则不会将默认的“全零”路由传播给 OSPF 区域内的其它路由器。

命令语法为:
R1(config-router)#default-information originate







R1、R2 和 R3 的路由表中现在设置了 "gateway of last resort"。请注意,R2 和 R3 的默认路由的路由来源为 OSPF,但带有一个额外代码 E2。对于 R2,该路由为:
O*E2 0.0.0.0/0 [110/1] via 192.168.10.10, 00:05:34, Serial0/0/1
E2 表示此路由为一条 OSPF第 2 类外部路由。
OSPF 外部路由分为以下两类:第 1 类外部 (E1) 和第 2 类外部 (E2)。两种类型的差异在于路由的 OSPF 开销在每台路由器上的计算方式不同。当 E1 路由在整个 OSPF 区域内传播时,OSPF 会累计路由的开销。此过程与普通 OSPF 内部路由的计算过程相同。然而,E2 路由的开销却始终是外部开销,而与通向该路由的内部开销无关。在本拓扑中,因为路由器 R1 的默认路由的外部开销是 1,所以 R2 和 R3 默认 E2 路由显示的开销也是 1。对 OSPF 来说,E2 路由的默认开销为 1。

参考带宽
您应该记得,Cisco OSPF 开销使用累积带宽。每个接口的带宽值根据“100,000,000/带宽”算得。100,000,000(即 10 的 8 次幂)称为参考带宽。
因此,当将实际带宽转换为开销度量时,100,000,000 是默认的参考带宽。前面学过,现在出现了比快速以太网快得多的链路,例如千兆以太网和 10GigE(10 千兆以太网)。使用 100,000,000 作为参考带宽会导致带宽值等于或大于 100 Mbps 的接口具有相同的 OSPF 开销值 1。
为获得更准确的开销计算结果,可能需要调整参考带宽值。可使用 OSPF 命令 auto-cost reference-bandwidth修改参考带宽,以适应这些更快链路的要求。如果需要使用此命令,请同时用在所有路由器上,以使 OSPF 路由度量保持一致。



R1(config-router)#auto-cost reference-bandwidth ?
1-4294967 The reference bandwidth in terms of Mbits per second
请注意该值的单位为 Mbps。因此,默认值等于 100。要将其增大到 10GigE 的速率,需要将参考带宽更改为 10000。
R1(config-router)#auto-cost reference-bandwidth 10000

同样,请确保在 OSPF 路由域内的所有路由器上配置此命令。IOS 也会提醒您这一点,如图所示。





R1 的路由表显示出 OSPF 开销度量的改变。请注意,现在 OSPF 路由的开销值大得多了。例如,在R1 更改前中,到 10.10.10.0/24 的开销为 1172。配置新的参考带宽后,相同路由的开销为 65635。

修改ospf间隔





R1 上的 show ip ospf neighbor 命令确认 R1 与 R2 和 R3 相邻。请注意,在输出中,Dead 间隔从 40 秒开始倒计时。默认情况下,当 R1 收到邻居每隔 10 秒发来的 Hello 时,此值被重置。
可能需要更改 OSPF 计时器以使路由器更快地检测到网络故障。这样做会增加流量,但有时需要快速收敛,即使导致额外的流量也在所不惜。
可使用下列接口命令手动修改 OSPF Hello 间隔和 Dead 间隔:
Router(config-if)#ip ospf hello-intervalseconds
Router(config-if)#ip ospf dead-intervalseconds



如图所示,R1 的 Serial 0/0/0 接口上的 Hello 间隔和 Dead 间隔分别被修改为 5 秒和 20 秒。更改 Hello 间隔之后Cisco IOS 立即自动将 Dead 间隔修改为 Hello 间隔的四倍。然而,最好是明确修改该计时器,而不要依赖 IOS 的自动功能,因为手动修改可使修改情况记录在配置中。
20 秒之后,R1 上的 Dead 间隔到期。R1 和 R2 失去了相邻关系。我们仅在 R1 和 R2 之间串行链路的一端修改了间隔值。
%OSPF-5-ADJCHG:Process 1, Nbr 10.2.2.2 on Serial0/0/0 from FULL to DOWN, Neighbor Down:Dead timer expired



请记住,邻居的 OSPF Hello 间隔和 Dead 间隔必须相同。您可在 R1 上使用 show ip ospf neighbor 命令验证相邻关系已失去。请注意,邻居 10.2.2.2 已不再出现。但 10.3.3.3(即 R3)仍是邻居。Serial 0/0/0 接口上的计时器设置不影响与 R3 的相邻关系。



可在 R2 上使用 show ip ospf interface serial 0/0/0 命令验证 Hello 间隔和 Dead 间隔不匹配的情况。R2(路由器 ID 为 10.2.2.2)上的间隔值仍然设为:Hello 间隔为 10 秒,Dead 间隔为 40 秒。



要恢复 R1 和 R2 的相邻关系,请在 R2 的 Serial 0/0/0 接口修改 Hello 间隔和 Dead 间隔,使其与 R1 的 Serial 0/0/0 接口上的相应间隔值匹配。IOS 显示一条消息,表明已建立相邻关系,且状态变为 FULL。
14:22:27: %OSPF-5-ADJCHG:Process 1, Nbr 10.1.1.1 on Serial0/0 from LOADING to FULL, Loading Done



在 R1 上使用 show ip ospf neighbor 命令验证相邻关系已恢复。请注意,Serial 0/0/0 接口的 Dead 间隔现在低得多了,因为它现在从 20 秒钟而非默认的 40 秒钟开始倒计时。Serial 0/0/1 仍然使用默认计时器工作。
注:OSPF 要求两台路由器匹配 Hello 间隔和 Dead 间隔才能形成相邻关系。这与 EIGRP 不同,两台路由器的 Hello 计时器和抑制计时器无需匹配,即可形成 EIGRP 相邻关系。

注:本文出自 “www.51cto.com” 博客,请务必保留此出处http://frecolwang.blog.51cto.com/330699/136988本文出自 51CTO.COM技术博客
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  职场 ospf 路由