OSPF概念 20210120

OSPF:开放式最短路径优先协议
无类别(携带掩码)链路状态(基于拓扑)型IGP(AS内部)协议
更新量大—》为了能在中大型网络生存—进行结构化的部署—区域划分、地址规划
触发更新,每30min周期更新;组播更新—224.0.0.5—all ospf 224.0.0.6—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]
[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

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

启动配置完成后,邻居间收发hello包,建立邻居关系,生成邻居表:
Hello包携带的参数:
邻居间在进行邻居关系建立时,hello包有几个参数必须完全一致,否则无法建立邻居关系:
Hello time和dead time 区域ID(ABR) 认证字段 末梢区域标记
华为设备还要求邻居间建立邻居的接口ip地址子网掩码必须一致
[r2]display ospf peer 查看邻居表
[r2]display ospf peer brief 查看邻居表的简表
OSPF Process 1 with Router ID 2.2.2.2
Peer Statistic Information

Area Id Interface Neighbor id State
0.0.0.0 GigabitEthernet0/0/0 1.1.1.1 Full
0.0.0.1 GigabitEthernet0/0/1 3.3.3.3 Full

邻居关系建立后,进行条件的匹配;匹配失败将保持为邻居关系,仅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、 描述字段 I为1标识本地发出的第一个DBD M为0本地发出的最后一个DBD MS 为1代表主 S为0代表从

在使用DBD相互交互完数据库目录后,再使用LSR/LSU/LSack来获取未知的LSA信息;
最终实现所有设备的LSDB一致;生成数据库表:
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协议在该接口的工作方式
网络类型 ospf的工作方式
LoopBack 显示P-2-P,实际为环回专用工作方式 无hello包 32位主机路由传递
点到点(串线HDLC/PPP) P-2-P hello time10s 不选DR 自接建立邻居关系
BMA(以太网) Broadcast hello time 10s 选DR/BDR
NBAM(MGRE) 默认接口工作方式为p2p,该工作方式仅允许建立一个邻居关系;
导致在MGRE环境中无法建立所有的邻居关系;
可以通过修改接口的工作方式来解决:
修改所有接口的工作访问broadcast
[r1-Tunnel0/0/0]ospf network-type broadcast
切记:在MGRE环境下,若一个网段的部分接口修改为broadcast,其他依然为点到点;由于建邻的条件匹配,故可以建立邻居关系;但broadcast需要DR,点到点不需要,所以最终不能正常收敛;需要该网段所有节点均为broadcast;

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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值