OSPF----开放最短路径优先协议

0x00 OSPF简介

OSPF是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(autonomous system,AS)内决策路由。是对链路状态路由协议的一种实现,隶属内部网关协议(IGP),故运作于自治系统内部。著名的迪克斯加算法被用来计算最短路径树。与RIP相比,OSPF是链路状态协议,而RIP是距离矢量协议。不同厂商管理距离不同,思科OSPF的协议管理距离(AD)是110。


0x01 OSPF数据包类型

1.Hello — Hello 数据包用于与其它 OSPF 路由器建立和维持相邻关系。Hello 协议将在下一主题中详细讨论。 

2.DBD — DBD(数据库说明) 数据包包含发送方路由器的链路状态数据库的简略列表,接收方路由器使用本数据包与其本地链路状态数据库对比。

3.LSR — 随后,接收方路由器可以通过发送链路状态请求 (LSR) 数据包来请求 DBD 中任何条目的有关详细信息。 

4.LSU — 链路状态更新 (LSU) 数据包用于回复 LSR 和通告新信息。LSU 包含七种类型的链路状态通告 (LSA)。LSU 和 LSA 将在下一主题中简略讨论。5. LSAck - 路由器收到 LSU 后,会发送一个链路状态确认 (LSAck) 数据包来确认接收到了 LSU。


0x02 OSPF路由器ID

OSPF 路由器 ID 用于唯一标识 OSPF 路由域内的每台路由器。一个路由器 ID 其实就是一个 IP 地址。

Cisco 路由器按下列顺序根据下列三个条件确定路由器 ID: 

1.使用通过 OSPF router-id 命令配置的 IP 地址。 

2.如果未配置 router-id,则路由器会选择其所有环回接口的最高 IP 地址。 

3.如果未配置环回接口,则路由器会选择其所有物理接口的最高活动 IP 地址。


0x03 DR与BDR的选举

在多路访问网络中,OSPF 会选举出一个指定路由器 (DR) 负责收集和分发 LSA。还会选举出一个备用指定路由器 (BDR),以防指定路由器发生故障。其它所有路由器变为 DROther(这就表示该路由器既不是 DR 也不是 BDR)。

DR 和 BDR 是如何选出的呢?选举过程遵循以下条件: 

1.DR:具有最高 OSPF 接口优先级的路由器 

2.BDR:具有第二高 OSPF 接口优先级的路由器 

3.如果 OSPF 接口优先级相等,则取路由器 ID 最高者。


0x04 OSPF配置

拓扑图如下拓扑图.png

各个端口地址分配如图中所示,按照图中配置好各个端口的地址。

配置OSPF协议


在R1上做以下配置

R1(config)#router ospf 1

R1(config-router)#network 10.0.0.2 0.0.0.0 area 0

R1(config-router)#network 192.168.1.0 0.0.0.255 area 0

R1(config-router)#network 192.168.3.0 0.0.0.255 area 0


在R2上做以下配置

R2(config)#router ospf 1

R2(config-router)#network 10.0.0.1 0.0.0.0 area 0

R2(config-router)#network 192.168.1.0 0.0.0.255 area 0

R2(config-router)#network 192.168.2.0 0.0.0.255 area 0

R2(config-router)#network 192.168.3.0 0.0.0.255 area 0


在R3上做以下配置

R3(config)#router ospf 1

R3(config-router)#network 10.0.0.3 0.0.0.0 area 0

R3(config-router)#network 192.168.2.0 0.0.0.255 area 0

R3(config-router)#network 192.168.1.0 0.0.0.255 area 0


R1路由器的路由表

R1路由表.png


R2路由器的路由表

R2路由表.png


R3路由器的路由表

R3路由表.png

0x05 其他配置命令

show ip ospf neighbor    //检查路由器的邻接状态

show ip protocols         //查看运行的路由协议及协议相关的信息

show ip ospf               //查看OSPF协议信息及各种计时器

show ip ospf interface  //查看OSPF的接口相关配置信息

标签: none

添加新评论