HCIE-day9-OSPF

OSPF(Open Shortest Path First)

ospf(开放式最短路径优先)协议是一种基于链路状态的内部网关协议。

  • 优点:收敛快、路由无环、可扩展、支持认证。
  • 基本特点:
    (1)基于SPF算法,以"累计链路开销"作为选路参考值。
    (2)采用组播形式收发部分协议报文。
    (3)支持区域划分。
    (4)支持对等价路由进行负载分担。
    (5)支持报文认证。
    OSPF支持的网络类型:P2P P2MP NBMA Broadcast
网络类型 常见链路层协议
Point-to-Point PPPl链路;LAPB链路;HDLC链路
Broadcast 以太网链路
NBMA 帧中继链路;ATM链路

路由计算过程

OSPF要求每台运行OSPF的路由器都了解整个网络的链路状态信息,这样才能计算出到达目的地的最优路径。OSPF的收敛过程由链路状态公告LSA(Link State Advertisement)泛洪开始 ,LSA中包含了路由器已知的接口IP地址、掩码、开销和网络类型等信息。收到LSA的路由器可以根据LSA提供的信息建立自己的链路状态数据库LSDB(Link State Datebase) ,并在LSDB的基础上使用SPF算法 进行运算,建立起到达每个网络的最短路径树。最后,通过最短路径树得出到达目的网络的最优路径,并将其加入到IP路由表中。

LSA泛洪:运行链路状态协议的路由器,彼此之间交互的不是路由信息。而是LSA(链路状态通告)。

共有三张表

  • LSDB:每台路由器都会产生LSA,路由器将网络中所泛洪的LSA搜集起来,放入自己的LSDB。
  • 邻居表:存放的是该路由器发现的直连链路上的OSPF邻居。只有直连路由器之间才能建立OSPF邻居表(通过HELLO报文发现直连邻居)。
  • 路由表:基于LSDB进行SPF计算得到的路由。

基本概念

AS(Autonomous System)

一个自治系统是一组路由器的集合(一个AS中可以有集中路由协议,OSPF、RIP、ISIS)。如图,所有的路由器都运行OSPF协议,所有运行OSPF的路由器属于同一个自治系统。

Router ID

Router ID是用于在自治系统中唯一表示一台运行OSPF的路由器的32位整数,Router ID的格式与IP地址的格式是一样的。

\~HUAWEI router id 1.1.1.1

\~HUAWEI commit

\~HUAWEI display router id

RouterID:1.1.1.1

在OSPF路由计算过程中,每台路由器都需要保存网络内多台路由器的链路状态信息。为了区别链路状态数据库(LSDB)中不同路由器的链路状态信息(LSA),网络内每个路由器都需要有一个唯一的标识,用于在LSDB中标识自己。

路由器的ID可以手工配置,如果没有通过命令指定ID号,系统会从当前接口的IP地址中自动选取一个作为路由器的ID号。顺序为:

1、优先从loopback地址中选择最大的IP地址作为路由器的ID号。

2、如果没有配置loopback接口,则从物理接口地址中选取最大的IP地址作为路由器额的ID号。

3、只有当被选举为Router ID的接口IP地址被删除后,才会进行Router ID的重新选举。

4、推荐使用loopback 0地址作为路由器的Router ID。

Cost

OSPF的开销值为一个16位无符号的整数,范围为1-65535。

  • 可以直接配置OSPF端口的开销值。
    \~HUAWEI-Ethernet0/0ospf cost 100
  • 配置带宽参考值时需要注意:必须保证该进程中所有路由器的带宽参考值一致。
    \~HUAWEIospf
    \~HUAWEI-ospf-1bandwidth-reference 1000

路由器角色

  • 区域边界路由器(ABR):是指连接到多个区域的路由器。ABR为每一个所连接的区域维护一个LSDB。
  • 骨干路由器(BR):是指至少有一个端口连接到骨干区域的路由器。包括所有的ABR和所有端口都在骨干区域的路由器。(Area 0为骨干区)
  • AS边界路由器(ASBR):是指和其他AS中的路由器交换路由信息的路由器,这种路由器向整个AS通告AS外部路由信息。AS边界路由器可以是内部路由器IR,或者是ABR,可以属于骨干区域也可以不属于骨干区域。

OSPF区域

  • Area 0为骨干区域,骨干区域负责在非骨干区域之间发布由区域边界路由器汇总的路由信息(并非详细的链路状态信息)。
  • 为了避免区域间路由环路,非骨干区域之间不允许直接相互发布区域间路由信息。因此,所有区域边界路由器都至少有一个接口属于Area 0即每个区域都必须连接到骨干区域。
  • 每个区域都有自己的LSDB,不同区域的LSDB是不同的。路由器会为每一个自己所连接到的区域维护一个单独的LSDB。由于详细链路状态信息不会被发布到区域以外,因此LSDB的规模大大缩小了。

OSPF路由计算

OSPF协议报文

  • 报文类型
报文名称 报文功能
Hello 发现和维护邻居关系
Date Description 发送链路状态数据库摘要
Link State Requst 请求特定的链路状态信息
Link State Update 发送详细的链路状态信息
Link State Ack 发送确认报文

定义:

1、Hello报文用于发现和维护邻居关系。

2、DD报文通过携带LSA头部信息描述链路状态数据库摘要信息(数据库的描述报文),描述本地LSDB摘要信息,用于两台设备进行数据库同步。

3、LSR报文用于向对方请求所需的LSA,设备只有在OSPF邻居双方成功交换DD报文后才会向对方发出LSR报文。

4、LSU报文用于向对方发送其所需的LSA.

5、LSACK用于对收到的LSA进行确认。

OSPF协议报文头验证

当两种验证方式都存在时,优先使用接口验证方式。

1、接口验证

\~RTA-Ethernet0/0 ospf authentication-mode simple plain huawei

2、区域验证

\~RTA-ospf-1-area-0.0.0.1 authentication-mode simple plain huawei

DR & BDR选举

waiting:路由器通过所接收到的hello报文检测网络中是否有DR BDR,此状态不参与选举。

DR:在同一网段内,与其他所有OSPF路由器(包括BDR)建立邻接关系,并交换LSA的路由器。

BDR:DR路由器的备份路由器。

DR和BDR由OSPF的hello 协议选举,选举根据router priority 进行。如果RP设置为0,那么该路由器不参与选举。 RP默认为1,范围为0-255。 RP越大越优先,如果RP相同,RID大的优先。 DR&BDR的选举基于接口。

如果没有RID,则会以环回接口为RID,如没有环回接口,则会选择最大IP的物理接口为RID。
DR没有抢占性。
如果修改了RP,需要重启OSPF才能进行抢占。
先选BDR再选DR。

7种状态机

  • Down 启用了OSPF功能的链路默认为down,并开始向外发送hello报文,发出之后,从down-init。
  • Init 已经收到hello报文,如果接收到的hello报文中有自己的router-id,表示对端已发现自己,变为2-way。
  • 2-way 双向通信建立,称为邻居关系。
  • exstart 向邻居开始发送DD报文,选举出主从。
  • exchange 相互发送包含链路状态信息摘要的DD报文,描述本地LSDB。
  • loading 相互发送LSR报文请求LSA,发送LSU通告LSA。
  • FULL 两台路由器的LSDB已经同步。
    LSA的刷新周期 180s
    LSA老化时间 30min
    LSA重传时间间隔 15s
    LSA老化机制是为了确保链路状态数据库是最新的,老化时间到达后,该LSA会被标记为过期,并从链路状态数据库中删除。

LSA

  • 1类LSA---Router-LSA
    每一个路由器都会生成。这种LSA描述某区域内路由器端口链路状态的集合。只在所描述的区域内泛洪。
  • 2类LSA---Network-LSA
    由DR生成。用于描述广播型网络和NBMA网络。这种LSA包含了该网络上所连接路由器的列表,只在该网络所属的区域内泛洪。每台路由器都会向外发送Router-LSA,只有DR向外发布Network-LSA。
  • 3类LSA---Network-Summary-LSA
    由区域边界路由器(ABR)产生。描述到AS内部本区域外部某一网段的路由信息,在该LSA所生成的区域内泛洪。描述的是精简的路由信息,而不是详细的链路状态信息。
  • 4类LSA---ASBR-Summary-LSA
    由区域边界路由器(ABR)产生。描述到某一自治系统边界路由器(ASBR)的路由信息,在该LSA所生成的区域内泛洪(AS内部产生),用于在区域间传播外部路由信息。除了ASBR所在区域外,用于通告ASBR位置。
  • 5类LSA---AS-External-LSA
    由ASBR产生。描述了外部路由的LSA,用于将外部路由信息引入到OSPF域内。只在引入该外部路由的区域以及与之相连的区域内泛洪。
  • 7类LSA------NSSA-LSA
    由ASBR产生 ,用于描述到达OSPF域外的路由。
    (1)NSSA LSA与AS外部LSA(type5)功能相似,但是泛洪范围不同。
    (2)NSSA LSA只能在始发的NSSA内泛洪,并不能直接进入Area 0。
    (3)NSSA的ABR会将7类LSA抓换成5类LSA注入到Area 0。
LS type 描述
1类 描述路由器的链路状态
2类 描述网络中所有路由器的链路状态
3类 描述区域间的路由信息
4类 描述到ASBR的路由信息
5类 描述AS外部的路由信息
相关推荐
网络研究院2 天前
2026年网络安全
网络·安全·法律·法规·趋势·发展
酣大智2 天前
ARP代理--工作原理
运维·网络·arp·arp代理
treesforest2 天前
AI安全系统如何识别异常访问?IP风险识别正在成为关键能力
网络·人工智能·tcp/ip·安全·web安全
shushangyun_2 天前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
2601_961845152 天前
粉笔行测题库|系统班|刷题
网络·百度·微信·微信公众平台·facebook·新浪微博
程序员mine2 天前
HTTPS-TLS加密与证书完全指南(中)
网络协议·https·ssl
程序猿阿伟2 天前
《Chrome离线扩展安装的底层逻辑与场景落地指南》
服务器·网络·chrome
之歆2 天前
现代 HTTP 客户端深度解析:Fetch 与 Axios
chrome·网络协议·http
InHand云飞小白2 天前
无人值守站点网络困境?工业级路由器IR315破解连接难题
网络·物联网·4g·工业路由器·4g路由器·iiot·蜂窝路由器
森G2 天前
75、服务器源码解析---------云视频服务项目
linux·服务器·网络·c++·qt