目录
一.ospf路由器类型
二. ospf支持的网络
四.建立ospf邻居关系的条件
五. ospf基本工作原理——链路状态信息
六.ospf的常见的几类LSA(lsa的类型)
(1)1类LSA:Router LSA
(2)2类LSA: Network LSA
(3)3类LSA: Network Summary LSA
(5)5类LSA:AS-External-LSA
(4)4类LSA: ASBR-Summary-LSA
(7)7类LSA: NSSA-LSA
七.ospf特殊区域
(1)为什么要搞特殊区域
(2) ospf特殊区域(四种特殊区域)
(3) STUB区域
八. OSPF其他特性
(1)OSPF路由汇总
(2)区域认证
两种认证方式:
(3)OSPF默认路由种类
一.ospf路由器类型
(1)区域内路由器IR(internal Router):路由器的所有接口都在同一个区域内
(2)区域边界路由器ABR(Area Border Router):这个路由器同时属于两个区域及以上,但其中一个必须是在骨干区域。
(3)骨干路由器(Backbone Route):这种设备至少有一个接口属于骨干区域,所以所有的ABR和位于Area0区域的设备都是骨干路由器BR。
(4)自治系统边界路由器ASBR(AS Boundary Router):与其他AS交换路由信息的设备称为ASBR。ASBR不一定就是AS区域的边界,他可能是区域内的设备,也可能是ABR,只要其中一台路由器引入外部路由信息,他就是ASBR路由器。
二. ospf支持的网络
BMA广播类型(Broadcast):当链路层协议是Ethrenet,FDDI时,缺省情况下,OSPF认为数包时Broadcast。
通常以组播形式发送Hello报文,LSU报文,Lsack报文。224.0.0.5的组播地址,224.0.0.6是DR和BDR之间的组播报文
以单播形式发送DBD和LSR报。
选举DR和BDR
NBMA类型(Non-Broadcast Multi-Acess):当链路层协议是帧中继、X.25时,缺省情况下,OSPF认为网路类型为NBMA。
以单播形式发送协议报文(Hello,DBD,LSR,LSU,LSAck报文)
选举DR和BDR
不支持广播,组播、广播都不能发送。
在 NBMA 网络中,虽然它不支持广播,但 OSPF 仍然会进行 DR 和 BDR 的选举。选举过程与在广播网络中的方式类似,但由于 NBMA 的特点,必须使用 点对点 连接或者 静态配置 来确保路由器能够与其他路由器通信。
点到多点P2MP(Ponit-to-Multipoint):没有一种数据层链路会被缺省的认为是Ponit-to-Multipoint类型。点到多点必须是由其他的网络类型强制更改。常用做法是将非全联通的NBMA改为点到多点的网络。
以组播形式(224.0.0.5)发送hello报文。
以单播形式发送其他协议报文(LSR,LSU,LSAck,DBD)
不需要选举DR和BDR
点到点P2P类型(point-to-point):当数据链路层是PPP,HDLC和LAPB时,缺省情况下,ospf认为网络类型是P2P。
以组播(224.0.0.5)发送协议报文(Hello报文,DBD,LSU,LSR,LSAck报文)
(1)不选举DR和BDR的,(2)出口处的metric:48(度量值P-2-P),
三. ospf支持的网络的具体实验现象。
(1)没有进行DR和BDR的选举
(2)度量值/开销值改变,在以太网下面默认是1,但在p2p下面默认是48
(3)广播——p2p时候,两种网路类型相连,会建立邻居关系,有lsa交互,但是不能计算出路由信息。这里默认情况是广播类型。
当p2mp——p2p时候,无法建立邻居关系的。
进入接口改变路由接口的网络类型
我们发现AR4的g0/0/0口改为p2p口,而AR5的g0/0/0是broadcast。他们任然建立了邻居关系,但是没有lsa链路数据库的交互所以后面也就ping不同。
注意:将AR5的G0/0/0口改为p2p口,理论上来说这里应该是48+48=96,那为什么还是48+1=49。、
因为其实是看网线的类型
四.建立ospf邻居关系的条件
- 区域ID一致
- hello时间(10秒)和Dead(40秒,四倍关系)时间一致
- 认证类型和密码要一直
- 特殊区域标签一致
- MTU值一致(华为默认不检测)
- 有时候不同设备之间的接口协商不成功(比如说一个百兆库和千兆口)
五. ospf基本工作原理——链路状态信息
(1)链路状态信息
链路的类型
接口IP地址及掩码
链路上所连接的邻居路由器
链路的宽带(开销值)
(2)LSA头部
- LS age : 老化时间【1800秒(30分钟)~~~3600秒(一小时)】,其中1800是周期的LSA刷新时间,3600是LSA的最大老化时间
- Options : 可选项 DN O DC L NP MC E MT
- LS Type : 说的是数据部分是几类的LSA
- Link State ID : 链路状态ID,是一个变量,根据不同的LSA类型,这个地方的数值也不一样
- Advertising Router : 通告路由, 这个LSA是谁产生的,就把这个路由器的RID写在这里
- LS Seq Number : LSA的序列号,利用这个序列号确定谁的LSA是最新的,LSA每更新一次,序列号+1,看是否重复
- Checksum :奇偶校验和,用于验证数据传输的完整性
- Length : 包含了头部信息和数据部分的总长度
- Number of Links : 我这台路由器有几个接口启用了OSPF
六.ospf的常见的几类LSA(lsa的类型)
我们主要学习前六种
(1)Router-LSA(Type1):每个设备都会产生,设备的链路状态和开销,100/实际带宽
(2)Network-LSA(Type2) : 由DR产生,描述本网段的链路状态,在所属的区域内传播。通过spf算法
(3)Network-summary-LSA(Type3):由ABR产生,描述区域内某个网段的路由,并且通 告给发布或接收此LSA的非Totlly STUB或NSSA区域。ABR到目的的网段的开销
(4)ASBR-summary-LSA(Type4):由ARB产生,描述到ASBR的路由,通告给除ASBR所在区域的其他相关区域。ABR到ASBR的开销
(5)AS-external-LSA(Type5):由ASBR产生,描述AS外部的路由,通告到说有区域(除了STUB区域和NSAA区域)。ASBR到目的网段的开销
(6)NSSA LSA (Type7):由ASBR产生,描述到AS外部的路由,仅在NSSA区域内传播,ASBR到目的网段的开销
(1)1类LSA:Router LSA
传播范围:只在当前区域内传递
通告路由器:本路由器的RID(谁发送的这个),意思就是所有运行OSPF的路由器都会生成。
链路状态ID:本路由器的RID
包含的内容:本路由器直连的邻居,直连接口的信息
以下面例子为例
(1)第一个点就是,只能在区域内传播第一类lsa
(2)第二个点,p2p类型和广播类型的网络类型发现,p2p类型的第一类lsa是由网段信息的,而广播链路类型的第一类lsa是没有网段信息的。
那在广播域类型里没有网段,那是怎么把网段传的嘞?
是通过二类lsa,也就是下面图上Network这个传
(1.1)Type1: Router-LSA描述P2P网络
(1.2)Type1: Router-LSA描述MA网络
(1.3)Router-LSA中重要的字段
(2)2类LSA: Network LSA
传播范围:本区域内传递,不穿越ABR(边界路由器)
通告路由器:DR的RID(DR产生)
链路状态ID:DR的接口的IP
包含内容:MA网中的路由器、本网的掩码信息、DR路由器本身的RID
这个a 2区域的DR接口IP是30.1.1.6,DR的RID是6.6.6.6
这里我们可以看到第二类lsa的linkState ID是DR的接口ip,ADvRouter是DR的RID
(2.1)Type2: Network-LSA描述MA网络
(2.2)OSPF区域内LSDB
(2.3)区域划分:
- 缺省情况下,OSPF区域被定义为普通区域。普通区域包括标准区域和骨干区域。
- 标准区域是最通用的区域,非O。
- 骨干区域是连接所有其他OSPF区域的中央区域。骨干区域通常用Area 0表示。
(2.4)区域间路由传递
- ABR将一个区域内的链路状态信息转化成路由信息,然后发布到邻居区域。
- 链路状态信息转换成路由信息其实就是将一类和二类LSA转化成三类LSA的过程。
- 注意,区域间的路由信息在ABR上是双向传递的。
我们也知道ospf分区域。
由于1类lsa和二类lsa只能在区域内传播,那怎么才能让不同区域的网段相互学习嘞?有了我们三类lsa,将我们区域内的1类,二类lsa进行融合汇众,转化为我们的三类,发送给区域0.然后区域0,又将收到的三类lsa进行ABR的转发,以此让个个区域之间进行学习。双向传递。
(3)3类LSA: Network Summary LSA
传播范围:除本区域外的其他区域
通告路由器:ABR的RID,经过一个区域就更改一次链路状态ID:网络号
包含的内容:本区域的路由信息,包括网络号和掩码
这里可以发现是三类lsa是不会在自己区域类传播的,r6是30.1.1.0这个网段的的,然后sum-Net中没有30.1.1.0这个网段,
(3.1)外部路由引入
这里我先介绍5类lsa,因为4类lsa是为5类服务的。
(5)5类LSA:AS-External-LSA
传播范围:整个AS
通告路由器:ASBR的RID链路状态:网络号
包含内容:域外路由信息,一个LSA即一条路由信息
作用:描述AS外部路由信息
默认优先级为150,默认开销值为1
可以改开销值
第一种就是改类型type
Type1就是正常引入计算cost。
第二种就是直接改cost
(4)4类LSA: ASBR-Summary-LSA
传播范围:整个AS
通告路由器:ABR的RID,经过一个区域改变一次
链路状态ID:ASBR的RID
包含内容:ABR到JASBR的开销信息
在外部路由引入的情况下,并且有type为1的情况下是由四类lsa的
(7)7类LSA: NSSA-LSA
由ASBR路由器产生。
与五类lsa通告几乎一样,只不过说是因为特殊区域NSSA,产生的。
在传入其他非特殊区域的时候,会转换为五类lsa,因为非特殊区域无法识别七类lsa。
下面是为什么会有七类lsa产生的原因
七.ospf特殊区域
(1)为什么要搞特殊区域
特殊区域都是在末端区域,那末端区域的路由器性能可能就不行,可能不能正常通讯。所以产生了特殊区域
(2) ospf特殊区域(四种特殊区域)
区域类型 | 作用 |
STUB区域 | 不允许发布自治系统外部路由,只允许发布区域内路由和区域间的路由。(这里就是为什么只有NSSA区域会产生七类lsa的原因,因为STUB区域不能引入外部路由) 在STUB区域中,路由器的路由表规模和路由信息传递的数量都会大大减少。 为了保证到自治系统外的路由可达,由该区域的ABR发布Type3缺省路由传播到区域内,所有到自治系统外部的路由都必须通过ABR才能发布。 缺点:不能自身引入外部路由(与NSSA区域的区别) |
Totally STUB区域 | 不允许发布自治系统外部路由和区域间的路由,只允许发布区域内路由。 在Totally STUB区域中,路由器的路由表规模和路由信息传递的数量都会大大减少。 为了保证到自治系统外的路由可达,由该区域的ABR发布Type3缺省路由传播到区域内,所有到自治系统外部的路由都必须通过ABR才能发布。 |
NSSA区域 | NSSA区域允许引入自治系统外部路由,(把外部路由的Type5变成Type7)由ASBR发布Type7 LSA通告给本区域,这些Type7LSA在ABR上转换成Type5 LSA,并且泛洪到整个OSPF域中。 NSSA区域同时保留自治系统内的STUB区域的特征。 该区域的ABR发布Type3缺省路由传播到区域内,所有域间路由都必须通过ABR才能发布。 |
Totally NSSA区域 | Totally NSSA区域允许引入自治系统外部路由,由ASBR发布Type7LSA通告给本区域,这些Type7 LSA在ABR上转换成Type5 LSA,并且泛洪到整个OSPF域中。 Totally NSSA区域同时保留自治系统内的Totally STUB Area区域的特征。 该区域的ABR发布Type3缺省路由传播到区域内,所有域间路由都必须通过ABR才能发布。 |
(3) STUB区域
在30.1.1.0这个网段配置STUB区域
会在a 2区域内产生一个默认 0.0.0.0的lsa
在其他区域是没有这条默认路由。
所以这个stub这个默认0.0.0.0三类lsa只会在自己区域内传播。
这个默认0.0.0.0完全可以干掉全部的三类lsa的。
可以通过配置完全末端STUB区域来完成这个操作
配置完在这个三个stub
通过在ABR这个路由器上配置
Stub no-summary完成完全末端stub配置
我们可以发现已经干掉其他的三类,四类,五类lsa
外部路由引入的路由器上面会有一条默认路由
完全末端stub区域不能引入外部路由。因为他把四类五类lsa都给干掉了,所以为了能在特殊区域引进外部路由,创造了NSSA区域。
(4) NSSA区域
配置与stub区域一样,只不过stub换成nssa就行
完全nssa
八. OSPF其他特性
(1)OSPF路由汇总
在大规模部署OSPF网络时,可能会出现由于OSPF路由表规模过大而降低路由查找速度的现象,为了解决这个问题,可以配置路由汇总,减小路由表的规模。
(1)ABR汇总
先在R6上面net通告进去
这是r2的路由表
可以看到很多172的网段
汇众失败了,失败原因是我们这里是import的外部路由引入造成。
删除外部路由引入,由于上面以及用命令通告了,所以不用在通告
重新查看r2
总结:
是通过通告进去,为了减少路由条目数量进行汇总。
命令
命令:ospf 进入ospf
命令:a 1 进入区域内配置
命令:abr-summary 汇总的网段 汇总的掩码
(2)区域认证
这里有个隐患
两种认证方式:
区域认证方式
接口认证方式
都支持null(不认证)、simple(明文)、MD5以及HMAC-MD5。
当两种认证方式都存在的时候,优先使用接口认证方式。
配置认证后,只有通过认证的ospf路由器才能正常建立邻居关系,交互信息。
接口认证
[r2]int g0/0/0进入接口
[r2-GigabitEthernet0/0/0]ospf authentication-mode simple 12345进行ospf认证
由于只配置了一遍的ospf安全认证,另外一边没有配置安全认证,所以出现建立不起邻居的现象。
在另外一边配置接口认证
[r3]int g0/0/0
[r3-GigabitEthernet0/0/0]ospf a
[r3-GigabitEthernet0/0/0]ospf authentication-mode sim
[r3-GigabitEthernet0/0/0]ospf authentication-mode simple 12345
建立成功了
区域认证相差不大,这里没有书写
(3)OSPF默认路由种类
这个
[r5-ospf-1]default-route-advertise always 表示自动给你产生一条默认的五类lsa
[r5-ospf-1]default-route-advertise他不会给你自己产生一条默认的lsa,需要自己手动配置一条默认。
[r5-ospf-1]default-route-advertise always
一般配置在网关处,意思是向其他区域下发一条默认路由,我这里可以上外网。
在r2上面配置
在r6上面查看到默认路由,其他路由器也有一条默认路由。