3.1.6 网络类型
1、广播型多路访问类型(BMA)
OSPF在网络类型为BMA的接口上采用组播的形式发送Hello报文、LSU报文、LSAck报文,以单播的形式发送LSR报文。进行DR/BDR选举,当需要给DR或BDR发送OSPF报文时,IP地址为240.0.0.6,当需要给所有OSPF路由器发送OSPF报文时,IP地址为240.0.0.5。Hello报文间隔10s。

2、非广播型多路访问类型(NBMA)
在NBMA网络中,OSPF路由器会采用单播等形式发送OSPF报文,也会进行DR/BDR选举,Hello报文间隔30s。

3、点对点网络(P2P)
OSPF在网络类型为P2P的接口上同样采用组播的形式发送协议报文,不进行DR/BDR选举,Hello报文间隔10s。

4、点对多点类型(P2MP)
P2MP类似于将多条P2P链路的一端进行捆绑得到的网络,无需选举DR/BDR,以组播的形式发送Hello报文,以单播的形式发送其他报文,Hello报文间隔30s。

3.1.7 DR及BDR的概念
在MA网络中,如果不进行DR/BDR的选举,路由器会进行两两建邻,这就意味着网络中共有n(n-1)/2个邻接关系,这不仅消耗了大量的设备资源,也增加了网络中LSA的洪泛数量,所以需要选举DR(指定路由器)和BDR(备用指定路由器)。

在MA网络中,OSPF服务器有三种身份,DR、BDR、DROther。其中DR和BDR建立邻接关系,DR和DROther建立邻接关系,BDR和DROther之间建立邻接关系,DROther之间只停留在2-way状态。DR和BDR是一个接口级别的概念,所以严格的说,应该是某台路由器的某个接口在一个MA网络中是DR或者BDR。

DR、BDR的选举是通过Hello报文来实现的,选举过程中,路由器会将自己的接口的DR优先权加载到Hello报文的“DR优先级”字段中,(优先级范围为0~255,优先级缺省为1,优先级为0时不参选)。

当接口激活OSPF后,会先检查是否有DR存在,如果存在则接受现在的DR。如果不存在则进行竞选,优先级最大的为DR,优先级相同时,Route-ID最大为DR。BDR相似。

DR需要让所有本区域的OSPF路由器的LSDB保持同步,DR使用组播地址为224.0.0.5发送LSU报文,所有的OSPF路由器都会侦听这个组播IP地址,并与DR同步自己的LSDB。当DROther感知到拓扑变化时,使用224.0.0.6发送LSU报文,DR和BDR会侦听这个IP地址。

3.1.8 区域的概念及多区域部署
1、连续的OSPF路由器组成的网络叫做OSPF域。

2、为了使OSPF网络更加高效、减轻路由器负担,会将一个OSPF域分成若干个区域,每个区域都有自己的区域号,Area0.0.0.255等同于Area255,Area0.0.1.0等同于Area256。

3、LSA洪泛将局限在一个OSPF区域内,每个区域维护同一个LSDB,独立进行SPF计算。

4、连接多个区域的路由器会为每个区域分别维护一套LSDB。

5、在一个OSPF域中必须要有一个骨干区域,其区域号为Area0.0.0.0。并且非骨干区域必须要与骨干区域相连,非骨干区域之间不允许发布域间路由。

6、ABR只能将自己直连区域的区域内部路由通告给Area0。

3.1.9 OSPF路由器的角色
1、内部路由器(IR):所有接口均接入同一个OSPF区域的路由器。

2、骨干路由器(BR):接入Area0的路由器。

3、区域边界路由器(ABR):接入多个OSPF区域的路由器。

4、AS边界路由器(ASBR):工作在OSPF自治系统边界的路由器。

3.2 LSA及特殊区域

3.2.1 LSA概述及常见的LSA类

3.2.2 LSAqa头部

ospf的dd ospf的dd报文发送间隔_ospf的dd


3.2.3 LSA详解

1、Type-1 LSA

每台OSPF路由器都会发出Type-1 LSA,用来描述自己“家门口的状况”,如接口状况和接口Cost值。另外还会包含一些特殊的比特位,用来指示该路由器的特殊角色。

2、Type-2 LSA
Type-2 LSA存在于MA网络中,由进行DR洪泛,Type-2 LSA中列举了此MA网络中所有路由器的Router-ID(包括自身)、网络掩码。

3、Type-3 LSA
Type-3 LSA是由ABR发出的,用来向其他直连区域洪泛本区域的内部路由。

4、Type-4 LSA。
Type-4 LSA由ABR产生,用来描述到达ASBR的主机路由。

5、Type-5 LSA
当OSPF域外的路由被引入时,会产生Type-5 LSA,用来描述这些外部路由。Type-5 LSA会在OSPF域中进行洪泛(除了一些特殊区域)

6、Type-7 LSA
OSPF出了一些常规区域外,还定义了一些特殊区域。NSSA(非完全末梢区域)就是OSPF的一种特殊区域。
NSSA区域禁止来自Arae0的Type-5 LSA进入,为了让NSSA区域内的路由器能够访问到被禁止的Typr-5 LSA中的路由,ABR向NSSA中发布一条默认路由(使用Type-7 LSA描述)。
NSSA允许本区域内的路由器引入少量外部路由,并用Type-7 LSA描述,但只能在NSSA本区域内传播。NSSA会将Type-7 LSA转换为Type-5 LSA,使得这些外部路由可以再OSPF域内传播。

3.2.4 区域类型
1、骨干区域
骨干区域是Area0,是整个OSPF域的中心枢纽。一个OSPF域有且只能拥有一个Area0,所有的区域间路由都必须通过Area0中转。

2、常规区域
所有OSPF区域缺省情况下都是常规区域,所有的常规区域都必须与Area0直连。

3、末梢区域(Stub)
当OSPF路由区域中只有一个出口,例如只有一个ABR或不需要特定的外部路由来选择离开区域的出口时,这个区域就可以被配置为末梢区域。
末梢区域不允许区域内的路由器引入外部路由,接入区域的ABR会阻挡Type-4 LSA和Type-5 LSA,并自动的使用Type-3 LSA向区域内发布一条默认路由。这样可以减少区域内路由器路由表规模。

4、完全末梢区域(Totally-Stub)
在Stub区域的基础上,还阻挡了Type-3 LSA进入。此配置只需要在本区域的ABR上实现即可。

5、非完全末梢区域(NSSA)
NSSA其实是末梢区域的变种,NSSA允许本区域内的路由器引入少量外部路由,并用Type-7 LSA描述,但只能在NSSA本区域内传播。NSSA会将Type-7 LSA转换为Type-5 LSA,使得这些外部路由可以再OSPF域内传播。

6、完全非完全末梢区域(Totally-NSSA)
在NSSA的基础上,还阻挡了Type-3 LSA进入。此配置只需要在本区域的ABR上实现即可。