一、OSPF概述
ospf及开放式最短路径优先是RIP的升级版、RIP最大跳数限制为15跳、有局限性的限制不适合应用于大型企业网络。而OSPF没有跳数的限制、是广泛使用的一种动态路由协议,它属于链路状态路由协议,具有路由变化收敛速度快、无路由环路、支持变长子网掩码(VLSM)和汇总、层次区域划分等优点.。
在OSPF网络环境下网络拓扑发生变化时,协议可以自动计算、更正路由,路由表将由OSPF协议自行计算和生成。减少了网络管理员人工配置及指定路径选择、而是由路自动协商出最短的路径作为主路径并更新路由表。
在OSPF中每个路由器负责发现、维护与邻居的关系,并将已知的邻居列表和链路费用用LSA通过可靠的泛洪与自治系统AS(Autonomous System)内的其他路由器周期性交互,学习到整个自治系统的网络拓扑结构;并通过自治系统边界的路由器注入其他AS的路由信息,从而得到整个Internet的路由信息。链路状态发生变化时就会重新生成LSA,路由器通过泛洪机制将新LSA通告出去,以便实现路由的实时更新。
二、路由更新实现过程
1、初始化端口信息、路由器在初始化或重新启动时相关路由器会产生链路状态广播数据包LSA、该数据包里包含路由器上所有相连链路信息。
2、路由器间通过泛洪(Flooding)机制交换链路状态信息、路由器将自身的LSA数据包传送给所有与其相邻的OSPF路由器,并接收其相邻的OSPF路由器传来的LSA数据包,实现更新自己的数据库。
3、形成稳定的区域网络拓扑结构数据库、OSPF路由协议通过泛洪法逐渐收敛,形成该区域拓扑结构的数据库,这时所有的路由器均保留了该数据库的拓扑结构图。
4、形成路由表:所有的路由器根据其区域拓扑结构数据、采用最短路径法计算形成各自的路由表。
三、路由表建立机制
1、通过Hello报文形成邻居关系
路由器运行OSPF协议后,会从所有使用OSPF协议的路由器接口上发送Hello报文。如果两台路由器共享一条公共链路,并且能够成功协商各自Hello报文中某些参数,就能形成邻居关系。
2、通过泛洪LSA通告链路状态信息
形成邻居关系的路由器之间可以交互LSA信息。LSA信息描述了路由器所有的链路、接口、邻居及链路状态等信息并通过交互、这些链路信息来了解整个网络的拓扑信息。
3、通过组建LSDB形成带权有向图
通过LSA的泛洪,路由器会把收到的LSA汇总记录在LSDB中。最终,所有路由器都会形成同样的LSDB。LSA是对路由器周围网络拓扑结构的描述,而LSDB则是对整个自治系统的网络拓扑结构的描述,LSDB是LSA的汇总。
4、通过SPF算法计算出最优路径路由
使用SPF算法来计算一个无环路的拓扑图来描述它所知道的、到达每一个目的地的最短路径。有了最短路径信息路由器就能计算出到达自治系统中各个节点的最优路径。
5、维护和更新路由表
每台路由器将计算得出的最短路径并加载到OSPF路由表中、形成数据转发的路由表项,并且实时更新。同时,邻居之间交互Hello报文保持交互用于,维持邻居关系或邻接关系,并且周期性地重传LSA。实现更新路由表的最新状态和最优路径选择。
四、ospf优点
1、OSPF适合在大范围的网络
没有跳数限制、只要是在组播的网络中,OSPF协议能够支持数十台路由器一起运作。
2、组播触发式更新
可以减少网络宽带的利用率也可以减小干扰,特别是在使用组播网络结构,对外发出信息时,它对其他设备不构成影响。
3、收敛速度快
如果网络结构出现改变,OSPF协议的系统会以最快的速度发出新的报文,从而使新的拓扑情况很快扩散到整个网络。实现更新整个路由表信息。
4、以开销作为度量值
OSPF协议是以开销值作为标准,而链路开销和链路带宽,正好形成了反比的关系,带宽越是高,开销就会越小,这样一来,OSPF选路主要基于带宽因素。
5、避免路由环路
五、配置案列
1、ospf单域网络拓扑图及实验要求
1、接口配置及回环路由配置
1、R1路由配置
interface GigabitEthernet0/0/0 配置接口IP地址
ip address 192.168.1.1 255.255.255.0
#
interface LoopBack0 配置本地回环地址
ip address 1.1.1.1 255.255.255.0
2、R2接口配置
interface GigabitEthernet0/0/0 接口配置
ip address 192.168.1.2 255.255.255.0
#
interface GigabitEthernet0/0/1 接口配置
ip address 192.168.2.1 255.255.255.0
#
interface LoopBack1
ip address 2.2.2.2 255.255.255.0 本地回环地址
R3接口配置
interface GigabitEthernet0/0/0
ip address 192.168.3.1 255.255.255.0
#
interface GigabitEthernet0/0/1
ip address 192.168.2.2 255.255.255.0
#
interface LoopBack3
ip address 3.3.3.3 255.255.255.0
R4接口配置
#
interface GigabitEthernet0/0/0
ip address 192.168.3.2 255.255.255.0
#
interface LoopBack4
ip address 4.4.4.4 255.255.255.0
3、通过命令查看端口配置信息
<ROUTE1>display ip interface brief 查看端口配置信息
*down: administratively down
^down: standby
(l): loopback
(s): spoofing
The number of interface that is UP in Physical is 3
The number of interface that is DOWN in Physical is 1
The number of interface that is UP in Protocol is 3
The number of interface that is DOWN in Protocol is 1
Interface IP Address/Mask Physical Protocol
GigabitEthernet0/0/0 192.168.1.1/24 up up
GigabitEthernet0/0/1 unassigned down down
LoopBack0 1.1.1.1/24 up up(s)
NULL0 unassigned up up(s)
<ROUTE1>
3、OSPF配置
R1配置
[ROUTE1]ospf 1 router-id 1.1.1.1 配置OSPF基本视图
[ROUTE1-ospf-1]area 0 配置ODPF区域为area 0区域
[ROUTE1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0 宣告该区域的路由信息
[ROUTE1-ospf-1-area-0.0.0.0]network 192.168.1.1 0.0.0.0
R2配置信息
[ROUTE2]ospf 1 router-id 2.2.2.2
[ROUTE2-ospf-1]area 0 OSPF区域为area0
[ROUTE2-ospf-1-area-0.0.0.0]network 2.2.2.2 0.0.0.0 ospf路由表宣告的路由信息
[ROUTE2-ospf-1-area-0.0.0.0]network 192.168.1.2 0.0.0.0
[ROUTE2-ospf-1-area-0.0.0.0]network 192.168.2.1 0.0.0.0
R3配置信息
[ROUTE3]ospf 1 router-id 3.3.3.3
[ROUTE3-ospf-1]area 0
[ROUTE3-ospf-1-area-0.0.0.1]network 3.3.3.3 0.0.0.0
[ROUTE3-ospf-1-area-0.0.0.1]network 192.168.2.2 0.0.0.0
[ROUTE3-ospf-1-area-0.0.0.1]network 192.168.3.1 0.0.0.0
R4配置信息
[ROUTE3]ospf 1 router-id 3.3.3.3
[ROUTE3-ospf-1]area 0
[ROUTE3-ospf-1-area-0.0.0.1]network 3.3.3.3 0.0.0.0
[ROUTE3-ospf-1-area-0.0.0.1]network 192.168.2.2 0.0.0.0
[ROUTE3-ospf-1-area-0.0.0.1]network 192.168.3.1 0.0.0.0
4、查看OSPF单区域自动路由汇总情况
<ROUTE1>dis ospf routing 在R1上查看到自动学习到的路由信息表
OSPF Process 1 with Router ID 1.1.1.1
Routing Tables
Routing for Network
Destination Cost Type NextHop AdvRouter Area
1.1.1.1/32 0 Stub 1.1.1.1 1.1.1.1 0.0.0.0
192.168.1.0/24 1 Transit 192.168.1.1 1.1.1.1 0.0.0.0
2.2.2.2/32 1 Stub 192.168.1.2 2.2.2.2 0.0.0.0
3.3.3.3/32 2 Stub 192.168.1.2 3.3.3.3 0.0.0.0
4.4.4.4/32 3 Stub 192.168.1.2 4.4.4.4 0.0.0.0
192.168.2.0/24 2 Transit 192.168.1.2 2.2.2.2 0.0.0.0
192.168.3.0/24 3 Transit 192.168.1.2 3.3.3.3 0.0.0.0
Total Nets: 7
Intra Area: 7 Inter Area: 0 ASE: 0 NSSA: 0
<ROUTE1>
查看邻居路由
<ROUTE1>display ospf peer 在R上可以查看到他的邻居路由是2.2.2.2
OSPF Process 1 with Router ID 1.1.1.1
Neighbors
Area 0.0.0.0 interface 192.168.1.1(GigabitEthernet0/0/0)'s neighbors
Router ID: 2.2.2.2 Address: 192.168.1.2
State: Full Mode:Nbr is Master Priority: 1
DR: 192.168.1.1 BDR: 192.168.1.2 MTU: 0
Dead timer due in 34 sec
Retrans timer interval: 5
Neighbor is up for 00:06:57
Authentication Sequence: [ 0 ]
<ROUTE1>
R2查看邻居路由表信息
<ROUTE2>display ospf peer
OSPF Process 1 with Router ID 2.2.2.2
Neighbors
Area 0.0.0.0 interface 192.168.1.2(GigabitEthernet0/0/0)'s neighbors
Router ID: 1.1.1.1 Address: 192.168.1.1
State: Full Mode:Nbr is Slave Priority: 1
DR: 192.168.1.1 BDR: 192.168.1.2 MTU: 0
Dead timer due in 36 sec
Retrans timer interval: 5
Neighbor is up for 00:08:27
Authentication Sequence: [ 0 ]
Neighbors
Area 0.0.0.0 interface 192.168.2.1(GigabitEthernet0/0/1)'s neighbors
Router ID: 3.3.3.3 Address: 192.168.2.2
State: Full Mode:Nbr is Master Priority: 1
DR: 192.168.2.1 BDR: 192.168.2.2 MTU: 0
Dead timer due in 34 sec
Retrans timer interval: 5
Neighbor is up for 00:07:19
Authentication Sequence: [ 0 ]
<ROUTE2>
ping通测试R1能够ping通R4(实验完成)
<ROUTE1>ping 4.4.4.4
PING 4.4.4.4: 56 data bytes, press CTRL_C to break
Reply from 4.4.4.4: bytes=56 Sequence=1 ttl=253 time=100 ms
Reply from 4.4.4.4: bytes=56 Sequence=2 ttl=253 time=30 ms
Reply from 4.4.4.4: bytes=56 Sequence=3 ttl=253 time=30 ms
Reply from 4.4.4.4: bytes=56 Sequence=4 ttl=253 time=40 ms
Reply from 4.4.4.4: bytes=56 Sequence=5 ttl=253 time=30 ms
--- 4.4.4.4 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 30/46/100 ms
<ROUTE1>