白手起家-①OSPF基础
一、简介
1、定义
OSPF–开放式最短路径优先,是IETF组织开发的一个基于链路状态的内部网关协议(IGP)。【基于链路状态的内部网关协议:链路状态路由协议、内部网关协议】,它是一个开放标准的协议,工作在IP层,IP协议号为89
2、目的
解决RIP(距离矢量路由协议)中所存在的问题(eg:收敛速度满、可扩展性差、路由环路等问题)
3、特点
①收敛速度快
②支持组播形式收发报文(224.0.0.5和224.0.0.6)
③支持无类型域间选路(CIDR)
④支持负载均衡
⑤支持报文加密(MD5、Keychain、HMAC-SHA256)
⑥支持OSPFv2- ipv4和OSPFv3- ipv6两种版本
⑦支持SPF算法
4、工作原理
LSA泛洪→LSDB表的建立→ SPF计算→路由表生成
① LSA(链路状态宣告)泛洪:
链路:指的是通告进ospf这个路由协议的接口
状态:描述接口与开启协议的邻居的关系
②LSDB(链路状态数据库)表的建立:
整个网络拓扑中,每台设备的LSDB表是一致的
③SPF算法(最短路径优先算法)计算:
计算出一条去往目的网段无环且最短最优的路径
④路由表生成
基于SPFf算法得到最优路由(沿途路径出接口开销)写入路由表
二、专业术语
1、Router-id(RID)
①必须存在,唯一标识一台网络设备,如修改RID需要重置OSPF进程
②比较原则:
(1)可以手动配置
(2)如果没有手动配置
则最大的回环口地址作为RID,如果还没有
则最大的接口地址作为RID
2、度量值
①作用:OSPF路由器中接口开销(cost)用于OSPF计算,选出最优路径,加入路由表中
②计算规则:从源IP地址到目的IP地址沿途所经过的所有路由器出接口开销总和最小(沿途路径出接口开销),默认开销为10
③修改度量值
3、3572
①3张表
3张表–路由表、邻居表、拓扑表/LSDB表
路由表
作用:存放OSPF中最优路由
-
思科-(do) show ip route
-
华为-display ip routing-table
-
华三-display ip routing-table
邻居表
作用:用来存放邻居信息
-
思科-(do) show ip ospf neighbor - 华为-display ospf peer
-
华三-display ospf peer
拓扑表
作用:用来存放LSA
-
思科-(do) show ip ospf database - 华为-display ospf lsdb
-
华三-display ospf lsdb
②5个报文
5个报文–hello、DD/DBD、LSR、LSU、LSAck
hello报文–发现、建立和维护邻居关系
DD报文(Database Description packet)–用来传输LSDB的摘要信息
LSR报文(Link State Request packet)–用来请求自己缺少的链路状态信息
LSU报文(Link State Update packet)–用来发送详细的链路状态信息
LSAck报文(Link State Acknowledgment packet)–对LSU的确认
③7个状态
7个状态–Down、Init、2-way、Exstart、Exchange、Loading、Full
-
Down–OSPF开启,还没有接收到对方的hello报文
-
Init–收到邻居的hello报文,但是hello报文字段里没有自己的RID
-
2-way–双方都收到了来自对方的hello报文,并且都存在自己的RID–这一步也表示邻居关系确立,接下来确立邻接关系
-
Exstart–开始发送DD报文(不包含LSDB表的摘要信息)
-
Echange–开始发送DD报文(包含LSDB表的摘要信息)
-
Loading–与邻居交互LSR/LSU/LSAck报文
-
Full–与邻居的LSDB表同步,邻接关系确立
I:当发送连续多个DD报文时,如果这是第一个DD报文,则置位1,否则置位0
M(More):当发送连续多个DD报文时,如果这是最后一个DD报文,则置位0,否则置位1,表示后面还有DD报文
MS(Master):用来确立主从关系,RID大的一方则会成为Master,当值为1时,表示发送方为Master
DD:表示DD报文的序列号
④2个关系
2个关系–邻居关系、邻接关系(要先建立邻居关系之后才能建立邻接关系)
- 邻居关系–建立前提:RID(唯一标识一台网络设备)不能一致、hello间隔(10s,hold时间为40s)一致、区域ID一致、认证一致、接口参数要一致
- 邻接关系–建立前提:邻居关系要能建立