您的位置:首页 > 其它

ospf 协议在企业中的应用

2012-08-01 12:05 323 查看
一、基本原理

1.简介

1 .1 ospf 是什么?

OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(autonomous system,AS)内决策路由。管理距离(AD)是110

1.2 特性

*使用了区域的概念

*完全无类路由选择协议

*支持不连续子网、VLSM

*支持无大小限制的、任意的度量值

*支持多条路径的负载平衡

*使用组播宣告路由信息

*支持更安全的路由选择认证

*使用可以跟踪外部路由的路由标记

1.3 链路状态与距离矢量的对比





1.4 ospf 自身独有的特性:

–链路状态路由器比距离矢量路由器包含更多关于本网络的信息

–每一台路由器都有本网络的完整拓扑表

–因此, 链路状态路由器能够做出更好的路由选择

链路状态数据结构:网络层次

这层次结构包括以下两种:

传输区域 (骨干区域或区域 0)

一般区域 (非骨干区域)

OSPF 区域特点:

使路由表中条目最少化

在区域内缩小查找拓扑变化的范围

LSA在区域边界处停止泛洪

需要层次化的网络设计

2.链路状态数据结构

–邻居表:

也称为毗邻数据库

包含了已知的邻居路由器

–拓扑表:

一般称为链路状态数据库(LSDB)

包含了在一个区域或网络中的所有路由器和他们所连接的链路

在同一个区域内的所有路由器都有相同的LSDB

–路由表:

也称为前转表

包含到达目的网络的最优路径

生成的示意图:





3.OSPF如何找到邻居?(毗邻关系)





1.路由器通过交换HELLO数据包来发现邻居

2.路由器在检查完HELLO数据包中的具体参数或选项之后宣告毗邻关系的建立

4.如何建立OSPF的毗邻关系?

点到点广域网(WAN)链路: 邻居双方为全毗邻关系

局域网(LAN)链路:

路由器只与DR或BDR建立全毗邻关系.

其他路由器(DROTHERs)之间维持在 two-way 的状态下

路由更新和拓扑信息仅仅在邻接路由器之间作交换

当路由器毗邻关系建立起来后, LSDBs 通过交换 LSAs来进行数据库的同步.

LSAs 可靠地泛洪在区域或网络里面

5.ospf中路由器用什么方法去寻找到达目标网络的最短路径呢?

Dijkstra最短路径优先算法

区域内的路由器有相同的链路状态数据库

在区域中的路由器都以自己为根建立最短路径树

到目标网络最优路径的计算方法是计算到该网络的最低开销(COST)

最优的路由被放进前转表中(即路由表中)

6.ospf包的类型有哪些?





数据包包头格式

建立双向通信?









7.OSPF的LSA类型





LSA Type 1: Router LSA

一个区域里的每一台路由器的 router LSA (type 1)

包括直接连接链路的列表

每一条链路是以该链路的IP地址前缀 和 该链路的链路类型作为确定的

以始发路由器的 router id 作为标识

只在本区域泛洪; 不跨越 ABR

LSA Type 2: Network LSA

在区域每个广播型网络或者NBMA网络中的 network (type 2) LSA

包括网络中连接的路由器

包含链路的子网掩码

2. 广播网络中的DR通告的

3. 仅仅在本区域泛洪; 不跨越

LSA Type 3: Summary LSA

Type 3 LSAs 被用作泛洪网络信息到其他区域

描述网络前缀和子网掩码.

由始发区域的ABR发送

在区域0中传递

缺省下, 不汇总路由, type 3 LSA 通告每一个子网.

LSA Type 4: Summary LSA

Summary (type 4) LSAs 被用来在其他区域中通告 ASBR

由始发区域的ABR发送.

Type 4 LSAs 包含ASBR的 router ID.

LSA Type 5: External LSA

External (type 5) LSAs 被用来通告从其他AS学习来的网络

Type 5 LSAs 由 ASBR通告.

Type 5 LSAs 在整个自治系统里通告.

在整个自治系统里通告者的 router ID (ASBR) 不做改变

需要用Type 4 LSA 去寻找ASBR.

缺省下, 路由不被汇总

示意图如下:

















8.ospf中的路由汇总:

好处及命令:

路由汇总提高CPU利用率 , 减少LSA泛洪, 和减少路由表条目.

area range 命令用在 ABR 上进行路由汇总. summary-address 命令用在 ASBR 上进行路由汇总.

缺省路由能够防止到达目标网络的详细路由出现在路由表里.其优点为使路由表和 LSDB最小化.

OSPF 使用 default-information originate 命令去注入缺省路由.

9.虚拟链路(Virtual Links)







area area-id virtual-link router-id(cisco中的命令) 注意:router-id 为对端路由器的router-id

10.配置OSPF区域类型

末梢区域(stub area)和完全末梢区域(totally stub area)法则

一个区域成为末梢区域 或 完全末梢区域的条件:

只有一个ABR, 或者有超过一个的ABR, 但能够接受到 其他地区或外部自治系统的次优路由路径 。

在该区域中的所有路由器都要配为末梢路由器(stub router).

在该区域中没有 ASBR.

该区域不是区域 0.

没有虚拟链路(virtual link)穿越该区域.

末梢区域







完全末梢区域







使用 area area-id stub 命令去定义一个区域为末梢区域.

在ABR上使用 area area-id stub 命令加上no-summary 关键字去定义一个区域为完全末梢区域.

在末梢区域里, 外部路由不出现在路由表里面, 但是可以通过区域内的缺省路由到达

在完全末梢区域里, 区域间的和外部的路由都不在路由表里, 但是可以通过区域内的缺省路由到达

使用 show ip ospf, show ip ospf database, show ip route 命令去验证所有类型的末梢区域

11.ospf 开销的计算

OSPF 开销(cost)缺省值为

(100 Mbps) / (bandwidth in megabits per second). cost 值能基于每个接口来作改变,参考带宽(bandwidth)也能手工地作改变

二、ospf的应用

1.案例一:

1. 作业要求:能够利用路由重分发,实现不同协议之间的通信 2.拓扑图





3.设备描述:

交换机:HUAWEI QUIDWAY S3526E

路由器:HUAWEI R2621

4.设备配置如下:

交换机配置:

[Quidway]vlan 10 //新建vlan10

[Quidway-vlan10]description in //描述信息

[Quidway-vlan10]port e0/3 to e0/6 //把e0/3 到e0/6的端口划分到vlan10中,用于测试

Quidway-vlan10]int vlan 10 //进入vlan10接口

[Quidway-Vlan-interface10]ip add 192.168.4.1 255.255.255.0 // 配ip地址

[Quidway-Vlan-interface10]quit //退出

[Quidway]vlan 20

[Quidway-vlan20]description out

[Quidway-vlan20]port e0/1

[Quidway-vlan20]quit

[Quidway]int vlan 20

[Quidway-Vlan-interface20]ip add 192.168.2.2 255.255.255.0

[Quidway]rip //启用rip协议

[Quidway-rip]network 192.168.4.0 //宣告直连网络

[Quidway-rip]network 192.168.2.0

路由器R9的配置:

[Router]sysname R9 //改变路由器的名称

[R9]int e0 //进入e0接口

[R9-Ethernet0]ip add 192.168.101.9 255.255.255.0 //配IP

[R9]int e1

[R9-Ethernet1]ip add 192.168.2.1 255.255.255.0

[R9]int s1

[R9-Serial1]ip add 192.168.1.2 255.255.255.0

[R9-Serial1]quit

[R9]rip //启用rip协议

waiting...

RIP is running

[R9-rip]network 192.168.1.0 //宣告直连网络

[R9-rip]network 192.168.2.0

路由器R10的配置:

[R10]int s1

[R10-Serial1]ip add 192.168.1.1 255.255.255.0

[R10-Serial1]int s0

[R10-Serial0]ip add 192.168.3.1 255.255.255.0

[R10-Serial0]quit

[R10]rip

waiting...

RIP is running

[R10-rip]network 192.168.1.0

[R10]ospf enable //启用OSPF 协议

Start OSPF task...

OSPF enabled

[R10-ospf]quit //退出

[R10]int s0 //进入S0接口

[R10-Serial0]ospf enable area 0 //宣告区域 启用OSPF

[R10]rip

[R10-rip]import- route direct cost 1 //发布直连路由

[R10]ospf enable

already enabled

[R10-ospf]import-route direct //发布直连路由

[R10-ospf]import-route rip cost 1 //把rip学到的路由信息重分发到ospf中

[R5]int s0

[R5-Serial0]ip add 192.168.3.2 255.255.255.0

[R5]int e1

[R5-Ethernet1]ip add 192.168.5.1 255.255.255.0

[R5-Serial1]int s0

[R5-Serial0]ospf enable area 0

[R5-Serial0]int e1

[R5-Ethernet1]ospf enable area 0

5.路由表信息如下:

[R10]display ip routing

Routing Tables:

Destination/Mask Proto Pref Metric Nexthop Interface

127.0.0.0/8 Direct 0 0 127.0.0.1 LoopBack0

127.0.0.1/32 Direct 0 0 127.0.0.1 LoopBack0

192.168.1.0/24 Direct 0 0 192.168.1.2 Serial1

192.168.1.1/32 Direct 0 0 127.0.0.1 LoopBack0

192.168.1.2/32 Direct 0 0 192.168.1.2 Serial1

192.168.2.0/24 RIP 100 1 192.168.1.2 Serial1

192.168.3.0/24 Direct 0 0 192.168.3.2 Serial0

192.168.3.1/32 Direct 0 0 127.0.0.1 LoopBack0

192.168.3.2/32 Direct 0 0 192.168.3.2 Serial0

192.168.4.0/24 RIP 100 2 192.168.1.2 Serial1

192.168.5.0/24 OSPF 10 1572 192.168.3.2 Serial0

[R9]display ip routing

Routing Tables:

Destination/Mask Proto Pref Metric Nexthop Interface

127.0.0.0/8 Direct 0 0 127.0.0.1 LoopBack0

127.0.0.1/32 Direct 0 0 127.0.0.1 LoopBack0

192.168.1.0/24 Direct 0 0 192.168.1.1 Serial1

192.168.1.1/32 Direct 0 0 192.168.1.1 Serial1

192.168.1.2/32 Direct 0 0 127.0.0.1 LoopBack0

192.168.2.0/24 Direct 0 0 192.168.2.1 Ethernet1

192.168.2.1/32 Direct 0 0 127.0.0.1 LoopBack0

192.168.3.0/24 RIP 100 1 192.168.1.1 Serial1

192.168.4.0/24 RIP 100 1 192.168.2.2 Ethernet1

192.168.5.0/24 RIP 100 1 192.168.1.1 Serial1

[R5]dis ip routing

Routing Tables:

Destination/Mask Proto Pref Metric Nexthop Interface

127.0.0.0/8 Direct 0 0 127.0.0.1 LoopBack0

127.0.0.1/32 Direct 0 0 127.0.0.1 LoopBack0

192.168.1.0/24 O_ASE 150 1 192.168.3.1 Serial0

192.168.1.2/32 O_ASE 150 1 192.168.3.1 Serial0

192.168.2.0/24 O_ASE 150 1 192.168.3.1 Serial0

192.168.3.0/24 Direct 0 0 192.168.3.1 Serial0

192.168.3.1/32 Direct 0 0 192.168.3.1 Serial0

192.168.3.2/32 Direct 0 0 127.0.0.1 LoopBack0

192.168.4.0/24 O_ASE 150 1 192.168.3.1 Serial0

192.168.5.0/24 Direct 0 0 192.168.5.1 Ethernet1

192.168.5.1/32 Direct 0 0 127.0.0.1 LoopBack0

6.测试:

在交换机所连网段:192.168.4.0 ,测试如下:

C:\Users\Administrator>ping 192.168.1.1

正在 Ping 192.168.1.1 具有 32 字节的数据:

来自 192.168.1.1 的回复: 字节=32 时间=21ms TTL=253

来自 192.168.1.1 的回复: 字节=32 时间=18ms TTL=253

来自 192.168.1.1 的回复: 字节=32 时间=18ms TTL=253

来自 192.168.1.1 的回复: 字节=32 时间=18ms TTL=253

192.168.1.1 的 Ping 统计信息:

数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),

往返行程的估计时间(以毫秒为单位):

最短 = 18ms,最长 = 21ms,平均 = 18ms

C:\Users\Administrator>ping 192.168.5.10

正在 Ping 192.168.5.10 具有 32 字节的数据:

来自 192.168.5.10 的回复: 字节=32 时间=37ms TTL=60

来自 192.168.5.10 的回复: 字节=32 时间=38ms TTL=60

来自 192.168.5.10 的回复: 字节=32 时间=37ms TTL=60

来自 192.168.5.10 的回复: 字节=32 时间=37ms TTL=60

192.168.5.10 的 Ping 统计信息:

数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),

往返行程的估计时间(以毫秒为单位):

最短 = 37ms,最长 = 38ms,平均 = 37ms

增加接口如下:(由于主机不够,该测试成功,接口DOWN ,所以以下路由表未显示)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息