华为IP(8)(OSPF开放最短路径优先)

发布于:2025-06-09 ⋅ 阅读:(18) ⋅ 点赞:(0)

前言

  1. 路由器根据路由表转发数据包,路由表项可通过手动配置和动态路由协议生成
  2. 静态路由比动态路由使用更少的带宽,并且不占用CPU资源来计算和分析路由更新。当网络结合比较简单时,只需要配置静态路由就可以使网络正常工作。但是当网络发生故障或者拓扑发生变化后,静态路由不会自动更新,必须手动重新配置
  3. 相比于静态路由,动态路由协议具有更强的可扩展性,具备更强的应变能力
  4. OSPF(Open Shortest Path First,开放最短路径优先)具有扩展性强,收敛速度快等特点,作为优秀的内部网关协议被广泛使用。

动态路由协议的分类

按工作区域分类:

IGP(Interior Gateway Protocols,内部网关协议)

EGP(Exterior Gateway Protocols,外部网关协议)

按工作机制及算法分类:

RIP(Distance Vector Routing Protocols,距离矢量路由协议)

OSPF、IS-IS (Link-State Routing Protocols,链路状态路由协议)

距离矢量路由协议
  1. 运行距离矢量路由协议的路由器周期性地泛洪自己的路由表。通过路由是交互,每台路由器都从相邻的路由器学习到路由,并且加载进自己的路由表中,然后再通告给其他相邻路由器。
  2. 相对网络中的所有路由器而言,路由器并不清楚网络的拓扑,只是简单的知道要去往某个目的网段方向在哪里,开销有多大。
链路状态路由协议-LSA泛洪
  1. 链路状态路由协议通告的是链路状态而不是路由信息
  2. 运行链路状态路由协议的路由器之间首先会建立邻居关系,然后彼此之间开始交互LSA(Link State Advertisement,链路状态通告)

OSPF概述

OSPF是IETF定义的一种基于链路状态的内部网关路由协议。目前针对IPv4协议使用的是OSPF Version 2;针对IPv6协议使用OSPF Version 3。

OSPF的优点:

  1. 基于SPF算法,以“累计链路开销”作为选路参考值
  2. 采用组播形式收发部分协议报文
  3. 支持区域划分
  4. 支持对等价路由进行负载分担
  5. 支持报文认证

OSPF应用场景

大型企业网络中通常部署OSPF实现各个楼宇的网络之间的路由可达。

核心和汇聚层部署在OSPF骨干区域

接入和汇聚层部署在OSPF非骨干区域

骨干区域是area 0,其余的都是非骨干区域。所有的非骨干区域直接和骨干区域相连接,而非骨干区域之间是不可以相连的)

Router ID

Router ID用于在自治系统中唯一标识一台运行OSPF的路由器,它是一个32位的无符号整数。

Router ID选举规则如下:
  1. 手动配置OSPF路由器的Router ID(建议手动配置)
  2. 如果没有手动配置Router ID,则路由器使用Loopback接口中最大的IP地址作为Router ID
  3. 如果没有配置Loopback接口,则路由器使用物理接口中最大的IP地址作为Router ID

区域

  1. OSPF Area用于标识一个OSPF的区域
  2. 区域是从逻辑上将设备划分为不同的组,每个组用区域号(Area ID)来标识
  3. OSPF的区域ID是一个32bit的非负整数,按点分十进制的形式呈现,例如Area 0.0.0.1.但是为了简便起见,我们也会采用十进制的形式来表示。

度量值

  1. OSPF使用Cost(开销)作为路由的度量值,每一个激活了OSPF的接口都会维护一个接口Cost值,缺省的接口Cost=(100Mbit/s)/接口带宽。其中100Mbit/s为OSPF指定的缺省参考值,该值是可配置的(修改的时候需要全网的路由器都修改成一样的)
  2. OSPF以“累计cost”为开销值,也就是流量从源网络到目的网络所经过所有路由器的出接口的cost总和。

(路由器默认的Cost值为1)

邻居表

邻居表对于OSPF来说是非常重要的

  1. OSPF在传递链路状态信息之前,需先建立OSPF邻居关系
  2. OSPF的邻居关系通过交互Hello报文建立
  3. OSPF邻居表显示了OSPF路由器之间是邻居状态,使用display ospf peer查看

OSPF报文格式和类型

1.OSPF一共定义了5种报文,不同类型的OSPF报文有相同的头部格式

2.OSPF报文一直采用IP封装,在报文的IP头部中,协议号为89

OSPF工作过程

建立邻居关系

建立邻接关系

(先建立邻居关系再建立邻接关系)

建立邻居关系

1.OSPF使用Hello报文发现和建立邻居关系

2.在以太网链路上,缺省时,OSPF采用组播的形式发送Hello报文(目的地址224.0.0.5)

3.OSPF Hello报文中包含了路由器的Router ID、邻居列表等信息

在建立邻居关系的时候路由器的邻居状态:
Down——>Init——>2way

Down:这是邻居的初始状态,表示没有从邻居收到任何信息

Init:在此状态下,路由器已经从邻居收到了Hello报文,但是自己的Router ID不在所收到的Hello报文的邻居列表中

2way:在此状态下,路由器发现自己的Router ID存在于收到的Hello报文的邻居列表中

DR与BDR

作用

在MA(多点接入)网络中存在一个这样的问题:

在存在多个路由器中的网络中,需要每个路由器都要与其他的路由器之间建立邻接关系,此时在网络中需要建立n*(n-1)/2个邻接关系,管理复杂,并且重复的LSA泛洪,造成资源浪费。

解决上述问题的方法是在MA(多点接入)网络中选举出DR

DR(Designated Router,指定路由器)负责在MA网络建立和维护邻接关系并负责LSA的同步。

DR与其他所有路由器形成邻接关系并交换链路状态信息,其他路由器之间不直接交换链路状态信息

(当DR建立和维护邻接关系后,会发送一个组播地址224.0.0.5,把建立的邻接关系的一个数据库发出来,此时其他的所有路由器都可以收到)

为了规避单点故障风险,通过选举BDR(Backup Designated Router,备份指定路由器),在DR失效时快速接管DR的工作。

(在一个网络中不管有几个节点,都会选DR和BDR)

选举规则
  1. DR、BDR的选举是非抢占式的(只要这个路由器是DR了后,就算其他的路由器后面把优先级变的比这个路由器大时,这个路由器依然还是DR。除非这个路由器失效,才会改变,BDR变为DR)
  2. DR、BDR的选举是基于接口的(接口的DR优先级越打越优先。 接口的DR优先级相等时,Router ID越大越优先)