OSPF总结-HCIP

OSPF:开放式最短路径优先协议

基本概念:无类别(携带掩码)链路状态(基于拓扑)型IGP(AS内部)协议
更新量大——>为了能在中大型网络中生存——进行结构化的部署——趋向于划分,地址规划
触发更新:每30min周期更新;组播更新——224.0.0.5——all ospf 224.0.06——DR\BDR
存在V1–V3 目前通用V2 V3时IPV6使用的;
跨层封装3层报头,协议好89;支持等开销、负载均衡

一、OSPF的数据包类型

下面是OSPF数据包的头部结构:

在这里插入图片描述
跨层封装到IP报头,协议时89,

存在5个类型的数据包
(1)、hello——组播周期发送,用于邻居、邻接关系的海岸、建立、周期保活;
在hello包中存在本地一职邻居的RID,用于保活这些邻居;
hello time 10s 或者 30s dead time 为 hello time的4倍

(2)、DBD——数据库描述包
(3)、LSR——链路状态请求
(4)、LSU——链路状态更新——携带具体的LSA信息
(5)、LSACK——链路状态确认

二、状态机

down——一旦接收到hello包,进入下一个状态机
init——初始化 接收到的hello包中,若存在本地的RID,进入下一个状态
2way——双向通讯 邻居关系建立的标志

注意——若以上条件匹配则再进行下面的状态!!!

exstart——预启动 使用不携带信息的DBD包进行主从关系选举,RID数值大的为主,优先进入下一个状态机
exchange——准交换 使用DBD进行数据库目录的共享,需要ACK确认
loading——加载 基于对端的数据库目录,对照本地,然后使用LSR来获取位置的LSA信息;对端使用LSU来共享LSA,需要ACK确认;
full——转发 邻接关系建立的标志

三、OSPF 的工作过程

启动配置完成后,邻居间组播收发hello包,建立邻居关系,然后生成邻居表
之后进行条件匹配匹配失败的邻居关系将保持为邻居关系,仅hello包周期性保活即可;
匹配成功的邻居关系,将进行邻接关系的建立;过程中先使用DBD进行目录交互
在使用LSR / LSU / LSACK来获取本地未知的LSA信息;最终完成邻接关系间的LSDB同步
生成数据库表
再然后,本地基于LSDB生成有向图——>树形结构——>最短选路 SPF算法
基于树形结构计算本地到达所有未知网段最短路径,然后将其加载到路由表中;
收敛完成,hello包周期保活;每30min邻居间再周期比对DBD包

结构突变:
(1)、新增网段——直连新增网段的设备,直接使用更新包告知本地的所有的邻接
(2)、断开网段——直连断开网段的设备,直接使用更新包告知本地的左右的邻接
(3)、无法沟通——dead time倒计时结束后,邻居间断开关系,删除信息

名词解释:
**LSA ——链路状态通告,再不不同环境下产生不同的拓扑或路由,一条信息为一个LSA **
LSDB——链路状态数据库 整个网络LSA的集合
LSDB同步——OSPF的收敛行为, 整个网络LSDB需要一致
LSA洪泛——OSPF的收敛性为, 需要整个网络接收到同一条LSA

四、OSPF的基础配置

[r1]ospf 1 router-id 1.1.1.1————启动时需要定义进程号,仅具有本地意义
建议配置RID——全网唯一——手工配置——本地环回接口最大数值——物理接口最大值
[r1-ospf-1]area 0 ——进入对应的区域进行宣告
[r1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0
[r1-ospf-1-area-0.0.0.0]network 12.1.1.1 0.0.0.0

OSPFD的区域划分规则:
(1)、星型拓扑——非骨干区域需要连接骨干区域
(2)、必须存在ABR——区域边界路由器——区域间必须存在以一个边界设备

启动配置后,邻居间收发hello包,建立邻居关系,生成邻居表

hello包携带的参数:
在这里插入图片描述
在这里插入图片描述
注意——邻居间在进行邻居关系建立时,hello包有几个参数必须完全一致,否则无法建立邻居关系:
Hello time和dead time 区域ID(ABR) 认证字段 末梢区域标记
华为设备还要求邻居间建立邻居的接口ip地址子网掩码必须一致

配置:
[r2]display ospf peer —— 查看邻居表
[r2]display ospf peer brief ——查看邻居表的简表
在这里插入图片描述
邻居关系建立后,进行条件的匹配匹配失败将保持为邻居关系,仅hello包周期保活
匹配成功将可以建立为邻接关系:
首先使用DBD进行主从关系选举,在使用DBD进行数据库目录的交互

关于DBD包的几个参数:
(1)、MTU——OSPF协议会在DBD包中携带与邻居直连接口MTU值要求邻居MTU值必须完全一致否则卡在exstart状态机;默认华为设备间****不检测这个MTU值;
r1]interface GigabitEthernet 0/0/1
[r1-GigabitEthernet0/0/1]ospf mtu-enable——在于邻居间直连的接口开启****MTU检测;若一端开启另一端也必须开启
(2)、隐形确认—— 一台设备使用另一台设备一样的序列号确认对端的数据 OSPF中从来对主进行隐性确认
(3)、描述字段 —— I1标识本地发出的第一个DBD M0本地发出的最后一个DBD MS1代表 S0代表

在使用DBD相互交互完数据库目录后,再使用LSR/LSU/LSack来获取未知的LSA信息

display ospf lsdb ——查看数据库表

数据库同步完成后,OSPF将基于本地的LSDB计算为有向图—>树型结构—>最短路径 加载于路由表

华为设备优先级默认10;
display ospf routing ——查看本地所有与OSPF相关路由,发出+接收的

度量为cost值=开销值=参考带宽接口带宽

OSPF选择整段路径cost值之和最小最短路径默认参考带宽100M

接口带宽大于参考带宽cost值为1;可能导致选路不佳

可以修改设备的参考带宽:
[r1]ospf 1
[r1-ospf-1]bandwidth-reference ?
INTEGER<1-2147483648> The reference bandwidth (Mbits/s)
[r1-ospf-1]bandwidth-reference 1000
切记:若进行修改,整个网络中所有设备需要修改为一致;

五、OSPF从邻居关系建立为邻接关系的条件、

关注网络类型:
(1)、点到点网络——邻居正常必然成为邻接关系
(2)、MA网络中——由于OSPF 不支持接口的水平分割若两两设备间均为邻接关系导致大量重复更新;因此必须进行DR/BDR选举,DR/BDR使用组播224.0.0.6;在该网段内非DR/BDR设备间只能建立为邻居关系;

选举规则——:先比较参选接口的优先级0-255 数值大优为0标识不参选 ;默认为1;若优先级相同,比较参选设备的RID值数值大优

修改接口优先级可以干涉选举:
[r1]interface GigabitEthernet 0/0/1
[r1-GigabitEthernet0/0/1]ospf dr-priority 2——参选接口修改优先级
DR选举非抢占行为;故修改优先级需要重启的OSPF进程
reset ospf process ——重启命令
Warning: The OSPF process will be reset. Continue? [Y/N]:y

六、OSPF的接口网络类型

OSPF的协议在不同网络类型的接口上,其工作方式不同
display ospf interface GigabitEthernet 0/0/1 ——查看OSPF协议在该接口的工作方式

网络类型 :**LoopBack **
ospf的工作方式:显示P-2-P,实际为环回专用工作方式 无hello包 32位主机路由传递

网络类型 :点到点(串线HDLC/PPP)
ospf的工作方式:P-2-P hello time10s 不选DR 自接建立邻居关系

网络类型 :**BMA(以太网) **
ospf的工作方式:Broadcast hello time 10s 选DR/BDR

网络类型 :NBAM(MGRE)
ospf的工作方式:默认接口工作方式为p2p,该工作方式仅允许建立一个邻居关系; 导致在MGRE环境中无法建立所有的邻居关系;
NBAM(MGRE)可以通过修改接口的工作方式来解决:
[r1-Tunnel0/0/0]ospf network-type broadcast——修改接口的工作方式
切记:在MGRE环境下,若一个网段的部分接口修改为broadcast其他依然为点到点;由于建邻的条件匹配,故可以建立邻居关系;但broadcast需要DR点到点 不需要,所以最终不能正常收敛需要该网段所有节点均为broadcast

拓扑结构:
中心到站点(轴辐状-星型结构) ————DR必须定在中心站点,没有BDR
部分网状结构 ————————————基于实际环境关注是否固定DR;
全连网状结构 ————————————DR/BDR选举正常

七、OSPF的不规则区域

(1)、远离了骨干的非骨干区域
**(2)、不连续骨干区域——本地学习到来自 区域X 的路由后,不得共享到 X区域 **

解决方案:
1、普通GRE,tunnel 隧道
合法与非法ABR间使用tunnel建立一条新的逻辑链路;之后将该链路宣告到OSPF协议

缺点:
(1)、 周期的OSPF进行需要实际通过中间区域进行传递,大大增加中间区域的资源占用
(2)、 选路不佳-——ospf设备接收到两条去往同一网段的路由时,先关注两条路由获取的区域

2、OSPF的虚链路技术
由合法的ABR对非法ABR进行授权,之后非法ABR可以进行区域间路由共享
[r2]ospf 1
[r2-ospf-1]area 1 ——进入穿越区域
[r2-ospf-1-area-0.0.0.1]vlink-peer 4.4.4.4 —— 对端ABR的RID;

优点:没有建立新的通道,不存在选路不佳问题;
缺点:(1)、两台ABR设备间的周期信息,依然对中间照成影响—华为
(2)、两台ABR设备间不保活,无周期信息;即可不可靠—cisco

3、多进程双向重发布—最佳方案

重发布——多协议间利用ASBR(自治系统边界路由器、协议边界路由器)
多进程——在一台设备上若同时启动多个OSPF进程不同的进程将宣告不同的接口拥有各自的数据库, 且不共享;仅将计算所得路由加载于同一张路由表中;

非法ABR处,将不同区域的接口 宣告到不同进程中,形成独立的数据库;之后使用重发布技术来实现路由共享,全网可达;不担心选路问题,资源占用问题;
[r4]ospf 1
[r4-ospf-1]import-route ospf 2
[r4-ospf-1]q
[r4]ospf 2
[r4-ospf-2]import-route ospf 1

八、OSPF的数据库表

[r1]display ospf lsdb ————查看数据库目录

[r1]display ospf lsdb router 1.1.1.1 ————详细查看该条目的信息
类别名 link-id(页码)
OSPF Process 1 with Router ID 1.1.1.1
Area: 0.0.0.0
Link State Database
以下信息为所有条目均拥有信息
Type : Router 类别名
Ls id : 1.1.1.1 link-id(页码)
Adv rtr : 1.1.1.1 通告者的RID,来源
Ls age : 723 老化时间,1秒加1;1800s周期归0,触发当下归0,最大老化3609
Len : 48 长度
Options : E 标记位
seq# : 80000016 序列号
chksum : 0x6d96 校验盒码

OSPF协议在不同的环境下,使用不同类别的LSA来传输路由或拓扑信息;
类别 传播范围 通告者 携带信息
1 Router 单区域 该区域每台路由器 本地直连拓扑
2 Network 单区域 DR 单个MA网段的拓扑
3 summary 整个OSPF的域 ABR 域间路由(其他区域的路由)
4 asbr 除ASBR所在区域外 ABR ASBR的位置
整个OSPF的域
ASBR所在区域,通过1类告知位置;通告者为与ASBR在同一区域连接其他区域的ABR
5 External 整个OSPF的域 ASBR 域外路由(重发布进入的路由)

类别 link-id 通告者
1 Router 通告者的RID 该区域的每台路由器
2 network DR的接口ip地址 该网段的DR
3 summary 域间路由网络号 ABR,经过下一台ABR时,修改为新的ABR
4 ASBR ASBR的RID ABR,经过下一台ABR时,修改为新的ABR
5 External 域外路由网络号 ASBR(不变化)

命令:
[r4]ospf
[r4-ospf-1]import-route rip ——将rip重发布到OSPF的进程1

九、减少OSPF的LSA更新量

主要分为:
①、汇总——主要用于间骨干区域的LSA数量
②、特殊区域——针对非骨干区域的优化

①、汇总——主要用于间骨干区域的LSA数量——OSPF单区域内部传递拓扑信息,不得进行汇总——1.2LSA不能汇总
(1)、域间路由汇总——在ABR上操作————汇总3类LSA
[r4]ospf 1
[r4-ospf-1]area 2 来源区域(一定是ABR通过该区域的1/2类计算所得路由)
[r4-ospf-1-area-0.0.0.2]abr-summary 5.5.4.0 255.255.254.0
(2)、域外路由汇总——在ASBR上配置
[r1]ospf 1
[r1-ospf-1]import-route rip ——重发布
[r1-ospf-1]asbr-summary 99.1.0.0 255.255.252.0

②、特殊区域

不能是骨干区域,不能存在ospf虚链路
1、不饿能存在ASBR

(1)末梢区域—— 该区域拒绝4、5的LSA;由该区域同时连接骨干区域的ABR,向该区域发布一条3类的缺省
[r5]ospf 1
[r5-ospf-1]area 2
[r5-ospf-1-area-0.0.0.2]stub
注意:该区域所有设备均需配置,否则无法建立邻居关系

(2)完全末梢区域——在末梢区域的基础上,进一步拒绝3类的LSA ;仅保留一条3类的缺省;
先将该区域配置为末梢区域,然后仅在ABR上进行完全配置即可。
[r4]ospf 1
[r4-ospf-1]area 2
[r4-ospf-1-area-0.0.0.2]stub no-summary

不能是骨干区域,不能存在ospf虚链路
2、存在ASBR

(1)、NSSA——非完全末梢区域—— 拒绝4、5的LSA;主要用于拒绝网络中,该区域以外的区域产生的4/5类LSA,进入该NSSA区域;原属于该区域的5类LSA,以7类的名义发向骨干区域;在进入骨干时由ABR兼职ASBR,进行7转5;
在华为设备中,由该NSSA区域连接骨干的ABR向内发布一条7类的缺省;
在cisco设备中,不发布,需要管理员手工发布;
[r2]ospf 1
[r2-ospf-1]area 1
[r2-ospf-1-area-0.0.0.1]nssa ——该区域每台设备均需配置

(2)、完全NSSA——在NSSA的基础上,近一步拒绝3类的LSA;再由该区域连接骨干的ABR,向内部发送一条3类的缺省;
先将该区域配置为NSSA区域,然后仅在ABR上配置完全即可;
[r2]ospf 1
[r2-ospf-1]area 1
[r2-ospf-1-area-0.0.0.1]nssa no-summary

类别 传播范围 link-id 携带信息 通告者
7类LSA 单个NSSA区域 域外路由网络号 域外路由 ASBR

切记:在使用NSSA或完全NSSA时,一定要关注该网络连接ISP的接口所在位置;小心环路的出现;

十、OSPF扩展配置

1、认证
接口认证—在和邻居连接的接口进行配置即可
[r1-GigabitEthernet0/0/1]ospf authentication-mode md5 1 cipher 123456

区域认证
[r2]ospf 1
[r2-ospf-1]area 0
[r2-ospf-1-area-0.0.0.0]authentication-mode md5 1 cipher 123456
配置完成后,该设备所有属于区域0的接口全部基于该秘钥认证

虚链路认证—在虚链路建立后,进行配置即可
[r2-ospf-1-area-0.0.0.1]vlink-peer 2.2.2.2 md5 1 cipher 123456

2、被动接口——沉默接口 用于连接PC终端的接口,仅接收不发送路由协议信息;
切记不能配置于连接邻居的接口,否则无法建立邻居关系;

[r1]ospf 1
[r1-ospf-1]silent-interface GigabitEthernet 0/0/2

3、加快收敛
修改计时器 ——hello time 10s3*0s dead timehello time4倍
修改本端hello time本端的dead time自动4倍关系匹配;要求和对端hello timedead time 必须完全一致否则无法建立邻居关系修改时 不宜修改的过小
[r1-GigabitEthernet0/0/1]ospf timer hello 10

4、缺省路由
(1)、3类缺省——配置特殊区域产生;将一个非骨干区域配置为末梢、完全末梢、完全NSSA区域后;该区域连接到骨干区域的ABR将向该区域发送

(2)、5类缺省
边界路由器上,先静态或通过其他动态产生缺省路由;之后该设备的路由表中已经拥有缺省才能向内部发布缺省路由
[r5-ospf-1]default-route-advertise ——将本地路由表中通过其他方式产生的缺省路由重发布到OSPF的协议中;

若本地没有缺省路由,但还想向内网发布缺省;可以让设备强制发送一条
[r5-ospf-1]default-route-advertise always

默认所有的5类LSA基于类型2传递;
类型1 ——现在总cost值
类型2 ——仅显示起始cost值

(3)、7类缺省
普通的NSSA区域,该区域连接骨干区域的ABR,将向该区域发布7类缺省
[r5-ospf-1-area-0.0.0.1]nssa default-route-advertise ——手工在NSSA区域发布缺省路由;
默认也为类型2

**注:若同一台设备,同时接收到多条不同类型的缺省时;
内部优于外部 类型1优于类型2 **

十一、OSPF的扩展知识点

1、附录E——link–id相同的问题
若一台ABR两条3类LSA导入其他区域;同时这两条LSAlink-id会相同
假设:短掩码网段先进入,link-id正常显示长掩码进入时link-id加反掩码
20.1.0.0/16–link-id 20.1.0.0
20.1.0.0/24–link-id 20.1.0.255
长掩码先进入,再短掩码进入时,长掩码的信息被刷新为反掩码

2、OSPF选路规则

(1)、AD(管理距离)无关的一种情况:
r2(config)#router ospf 1
r2(config-router)#distance 109 1.1.1.1 0.0.0.0
本地从RID为1.1.1.1的设备处学习到路由条目管理距离修改109
一台路由器两个OSPF邻居处学习到了两条相同的路由时,仅比较度量值不关注管理距离;因为仅针对一台邻居进行管理距离修改的结果要么两台都被改要么修改失败;-关注IOS版本有时修改RID大路由器管理距离生效,有时需要修改RID小的设备;

(2)、AD(管理举例)无关的第二种情况OIA 3类
O IAO IA路由相遇,到达相同目标的两条3类路由,这两条路由均通过非骨干传递仅关注cost值不关注管理距离;
一条通过骨干区域传递,另一条同过非骨干区域传递--非骨干传递的路由无效
OSPF的区域水平分割: 区域标号为A的3类LSA,不能回到区域A;
先比类型-——》区域——》cost

(3)、OE与OE E为5类 N 为7类 默认所有重发布进入路由条目均为类型2,类型2在路由表中cost值不会显示沿途的累加,仅显示起始度量;

两条均为OE2或者均为N2起始度量相同; 关注沿途的累加度量 (OE2路由在表中度量默认不显示内部度量,仅显示起始度量)
两条均为OE2或者均为N2,起始度量不同;优先起始度量小的路径
注:以上设计是便于管理员快速干涉选路;

OE1路由仅比较总度量起始度量+沿途累加),仅修改起始度量 不一定能干涉选路,必须在修改后使得总度量产生区别才能干涉选路

(4)、拓扑由于路由 1、2LSA计算所得路由优于3、4、5、7类所有所得
**内部优于外部 3类优于4/5/7类
类型1优于类型2 E1优于E2,N1优于N2,E1优于N2,N1优于E2;
E1与N1相遇,或E2与N2相遇,先比总度量(起始+沿途)小优;度量一致5类优于7类
**

4、FA——转发地址
正常OSPF区域收到的5类LSA不存在FA值;

产生FA的条件:
(1)、**5类LSA ---- 假设R2为ASBR,g0/0口工作的OSPF中,g0/1口工作在非ospf协议或不同ospf进程中;若g0/1也同时宣告在和g0/0相同的OSPF进程中**,同时该接口的工作方式为广播型;
将在5类LSA中出现FA地址,地址为R2连接R3网段中R3的接口ip;

**(2)、**7类LSA—必然出现FA地址
假设R9为ASBR,S0/0口工作的OSPF中,S0/1口工作在非ospf协议或不同进程中;
S0/1未运行OSPF–FA地址为R9上最后宣告的环回地址(个别IOS也可能是最大环回接口ip地址),若R9没有环回接口;FA地址为R9上最后宣告的物理接口地址(个别IOS也可能是最大的物理接口ip地址)

9的S0/1也工作OSPF协议中,S0/1接口工作方式为广播,那么FA地址为R10接口ip;
S0/1的工作方式为点到点,那么FA地址为R9的s0/1口ip
切记:在FA地址出现后,4类LSA无效;人为过滤掉4类LSA,依然可达域外;
当4类LSA存在,却人为过滤了到达FA地址的路由,那么将无法访问域外;
一旦出现FA地址,所有的选路计算均基于FA地址进行;
1、针对存在FA的5/7类路由,4类LSA无意义,仅递归到FA地址;若FA地址被策略过滤导致不可达;
2、路由表中的度量是到FA地址的度量,不是到ASBR的度量;
在这里插入图片描述
5NP位+E位 P位被加密,故抓包时看不见P位;
正常NSSA区域内的1类LSA中,N=1 E=0 标识该区域转发7类LSA,不转发5类
非NSSA区域E=1 N=0 标识可以转发5类,不能转发7类
P位为1,标识该区域将执行7类转5类; P为0,不能7转5;

区域0连接到两个非骨干区域,这两个非骨干假设为区域1和区域2;区域1/2同时连接同一个外部协议,且同时进行了重发布配置;区域1为NSSA区域,区域2为非NSSA区域;那么此时的区域1,P位=0不能进行7转5;故骨干区域只能收到从区域2来的外部路由;
若NSSA和非NSSA均将同一条域外路由向内部传递,仅非NSSA区域可以实现;
若区域1和区域2均为NSSA区域,那么ABR的RID大区域进行7转5,另一个区域不转,
故同一条域外路由,骨干区域只能收到从一个区域传递的外部路由;若以上条件中,两个区域均为非NSSA区域,那么P位无效,故两个区域的路由均回进入骨干区域;

6、SFP算法 –OSPF防环机制
1、在同一个区域每台路由具有一致的LSDB
2、每台路由器以自己为根计算到达每个目标的最短路径(最小cost值)
3、必须区域划分–
优势-
1)域间汇总减少路由条目数量
2)汇总路由是在所有明细路由均消失后才删除,网络更稳定
3)区域划分后不同类别的LSA传播范围不同,控制更新量
总结:观看OSPF防环文档
过程–基于本地LSDB(1/2类LSA)生成–生成有向图–基于有向图来进行最短路径树生成
最短路径树,关注本地LINK-ID的LSA开始–》基于该LSA内提及到点到点或传输网络信息再查看link-id递归到下一条信息;基于所有点到点和传输网络信息生成最短路径树主干;
然后用树中每台设备的末梢网络信息补充路由表,完成收敛;

猜你喜欢

转载自blog.csdn.net/zrz1028/article/details/112999360