CCNP OSPF协议详解

OSPFOpen Shortest Path Fitstospf)开放最短路径优先协议,是由Internet工程任务组开发的路由选择协议,公用协议,任何厂家的设备。
链路状态路由协议(也能够说OSPF)工做原理:
每台路由器经过使用Hello报文与它的邻居之间创建邻接关系
每台路由器向每一个邻居发送链路状态通告(LSA),有时叫链路状态报文(LSP). 每一个邻居在收到LSP以后要依次向它的邻居转发这些LSP(泛洪)
每台路由器要在数据库中保存一份它所收到的LSA的备份,全部路由器的数据库应该相同
依照拓扑数据库每台路由器使用Dijkstra 算法(SPF算法)计算出到每一个网络的最短路径,并将结果输出到路由选择表中
OSPF简化原理:Hello报文——创建邻接关系——造成链路状态数据库——SPF算法——造成路由表。
几个概念:
OSPF的特征:
1.快速适应网络变化
2.在网络发生变化时,发送触发更新
3.以较低的频率(30分钟)发送按期更新,这被称为链路状态刷新
4.支持不连续子网和CIDR
5.支持手动路由汇总
6.收敛时间短
7.采用Cost做为度量值
8.使用区域概念,这可有效的减小协议对路由器的CPU和内存的占用.
9.有路由验证功能,支持等价负载均衡
运行OSPF的路由器须要一个可以惟一标示本身的Router ID
OSPF
的网络类型:

广播型网络, 好比以太网,Token RingFDDI,这样的网络上会选举一个DRBDR,DR/BDR的发送的OSPF包的目标地址为224.0.0.5,运载这些OSPF包的帧的目标MAC地址为0100.5E00.0005;而除了DR/BDR之外的OSPF包的目标地址为224.0.0.6,这个地址叫AllDRouters
NBMA网络, 好比X.25,Frame Relay,ATM,不具有广播的能力,在这样的网络上要选举DRBDR,所以邻居要人工来指定
点到多点网络, NBMA网络的一个特殊配置,能够当作是点到点链路的集合. 在这样的网络上不选举DRBDR
点到点网络, 好比T1线路,是链接单独的一对路由器的网络,点到点网络上的有效邻居老是能够造成邻接关系的,在这种网络上,OSPF包的目标地址使用的是224.0.0.5,这个组播地址称为AllSPFRouters
虚连接它被认为是没有编号的点到点网络的一种特殊配置.OSPF报文以单播方式发送
OSPFDR(指定路由)与BDR(备份路由):
经过组播发送Hello报文
具备最高OSPF优先级的路由器会被选为DR255最高)
若是OSPF优先级相同具备最高路由器ID,路由器会被选为DR
DRBDR的选举过程?
1. 在和邻居创建双向通讯以后,检查邻居的Hello包中Priority,DRBDR字段,列出全部能够参与DR/BDR选举的邻居.全部的路由器声明它们本身就是DR/BDR(Hello包中DR字段的值就是它们本身的接口地址;BDR字段的值就是它们本身的接口地址)
2. 从这个有参与选举DR/BDR权的列表中,建立一组没有声明本身就是DR的路由器的子集(声明本身是DR的路由器将不会被选举为BDR)
3. 若是在这个子集里,无论有没有宣称本身就是BDR,只要在Hello包中BDR字段就等于本身接口的地址,优先级最高的就被选举为BDR;若是优先级都同样,RID最高的选举为BDR
4. 若是在Hello包中DR字段就等于本身接口的地址,优先级最高的就被选举为DR;若是优先级都同样,RID最高的选举为DR;若是没有路由器宣称本身就是DR,那么新选举的BDR就成为DR
5. 要注意的是,当网络中已经选举了DR/BDR,又出现了1台新的优先级更高的路由器,DR/BDR是不会从新选举的
6. DR/BDR选举完成后,其余Rother只和DR/BDR造成邻接关系.全部的路由器将组播Hello包到224.0.0.5,以便它们能跟踪其余邻居的信息.其余Rother只组播update packet224.0.0.6,只有DR/BDR监听这个地址 .一旦出问题,反过来,DR将使用224.0.0.5泛洪更新到其余路由器
OSPF路由器在彻底邻接以前,所通过的几个状态:
1.Down: 初始化状态
2.Attempt: 只适于NBMA网络,NBMA网络中邻居是手动指定的,在该状态下,路由器将使用HelloInterval取代PollInterval来发送Hello
3.Init: 代表在DeadInterval里收到了Hello,可是2-Way通讯仍然没有创建起来
4.two-way: 双向会话创建
5.ExStart: 信息交换初始状态,在这个状态下,本地路由器和邻居将创建Master/Slave关系,并肯定DD Sequence Number,接口等级高的的成为Master
6.Exchange: 信息交换状态,本地路由器向邻居发送数据库描述包,而且会发送LSR用于 请求新的LSA
7.Loading: 信息加载状态,本地路由器向邻居发送LSR用于请求新的LSA
8.Full: 彻底邻接状态,这种邻接出如今Router LSANetwork LSA
OSPF协议的环境下,区域(Area)是一组逻辑上的OSPF路由器和链路 ,区域是经过一个32位的区域ID(Area ID)来识别的
OSPF的区域:
在一个区域内的路由器将不须要了解它们所在区域外部的拓扑细节。在这种环境下:
路由器仅仅须要和它所在区域的其余路由器具备相同的链路状态数据库
链路状态数据库的减少也就意味着处理较少的LSA通告 
大量的LSA泛洪被限制在一个区域里面
对于和区域相关的通讯量定义了下面3种通讯量的类型:
域内通讯量(Intra-Area Traffic)
域间通讯量(Inter-Area Traffic)
外部通讯量(External Traffic) 
OSPF的路由器类型
内部路由器(Internal Router)
区域边界路由器(Area Border Routers,ABR)
骨干路由器(Back bone Router)
自主系统边界路由器(Autonomous System Boundary Router,ASBR)
分段区域(Partitioned Area)是指一个区域因为链路的失效而使这个区域的一个部分和其余部分隔离开来的情形。
虚链路(Virtual Link)是指一条经过一个非骨干区域链接到骨干区域的链路。
配置虚链路的时候,有几条相关的规则
虚链路必须配置在两台ABR路由器之间
配置了虚链路所通过的区域必须拥有所有的路由选择信息,这样的区域又被称为传送区域(Transit Area)  传送区域不能是一个末梢区
配置一个基本的OSPF的过程含有如下3个必要的步骤:
步骤1:肯定和每个路由器接口相连的区域;
步骤2:使用router ospf process-id命令来启动一个OSPF进程;
步骤3:使用network area命令来指定运行OSPF协议的接口和它们所在的区域。

配置OSPF具体命令:
Router(config)#router ospf process-id
Router(config-router)#network address mask area area-id
好了咱们今天所讨论的就是,OSPF网络类型三种。经过实验来验证前面的理论拓扑以下,
基本配置,根据拓扑配置IP地址。




在路由器启动期间,路由器上全部的接口都是管理关闭(administratively shutdown)的,若是OSPF不能发现一个有效的IP地址做为它的路由器ID,那么OSPF将不会启动。
解决方法-使用一个loopback接口(环回接口)
Loopback接口是一个仅在软件上有意义的、虚拟的接口而且它老是有效(up)的,咱们来给路由器设置上loopback接口,




给路由器配置OSPF协议




起了路由器协议以后查看网络是否是相通?
咱们来进行查看Router1的网络类型
进入Router一、Router2的接口下进行更改,
router(config)#ip ospf network broadcast 广播
router(config)#ip ospf network non-broadcast 非广播
router(config)#ip ospf network point-to-point 点对点
router(config)#ip ospf network point-to-multipoint 点对多点
咱们要把它改为广播型网络

更改后再进行查看
前面咱们说了,在广播型网络中是选择DR与BDR的,并且是经过优先级选择的,在优先级相同的时候看路由ID。咱们的路由二的路由ID比Router1的高,因此应该是Router2为DR
那么我想把Router1变成DR有没有办法?能够改变优先级实现
在路由器选择好DR和BDR以后,在进入一个更高的路由器的时候是不从新选择DR与BDR的,因此咱们能够先保存,以后在重启或者是从新打开(模拟器存在BUG)
看看是否是见效了,使得Router2变成的是BDR


完成了第一个实验咱们再来进行把Router2和Router3之间变成NBMA网络
咱们以前把Router2的串行接口变成的广播
在Router3上进行更改
变成NBMA以前还得给路由器指定邻接邻居,由于在NBMA网络中是不具有广播能力,在这样的网络上选举DR与BDR的时候邻居需人工指定。

再来Router3上进行查看是否是达到咱们要的?
变为了NBMA网络了,
ping一下看是否是已经学到相连的邻居


接下来咱们进行第三个实验,把Router3和Router4变成点对多点以后还能够正常通信,在这样的网络中是不选举DR和BDR的
在Router3的串行线S1/1上是点对点网络
还和刚才的命令同样,在Router3和Router4上进行更改

更改以后查看结果


检查网络的相关性,看看是否是相通
网络很正常,你作了吗?
相关文章
相关标签/搜索