多区域OSPF路由协议

前言

        之前也有过关于OSPF路由协议的博客,但都不是很满意,不是很完整。现在也是听老师讲解完OSPF路由协议,感触良多,所以这里重新整理一遍。这次应该是会满意的

一些相关概念

链路状态

        链路指路由器上的一个接口,链路状态用来描述路由器接口及其与邻居路由器的关系等信息,这些信息包括接口的互联网协议IP地址和子网掩码、网络类型及链路的开销等。而所有的链路状态信息则构成了LSDB

区域

        以接口为单位划分区域,同一个区域内的路由器具有相同的LSDB

AS

        采用同一种路由协议交换路由信息的路由器及其网络构成的系统

链路状态公告LSA

        用来描述路由器和链路的状态,OSPF协议中对于链路状态信息的描述都是通过LSA发布出去。AS内每台运行OSPF协议的路由器,根据路由器的类型不同,会产生一种或多种LSA,路由器本身产生和收到的LSA的集合就形成了LSDB

SPF算法

        OSPF协议的基础,SPF算法将每一台路由器作为根,独立地计算其到每一个目的网络地最佳路径

路由器ID

        运行OSPF的路由器的唯一标识,长度为32bit,格式和IP地址相同。路由器ID也可以手动设置,也可以自动生成。其中,手动配置的路由器ID优先级最高。没有手动配置路由器ID,路由器会从当前接口的IP地址中自动选择一个作为路由器ID,选择顺序是优先从LoopBack接口-->接口最大的IP地址。注意路由器ID一旦确定,为了维持LSDB的稳定,除非清除OSPF协议和重新启动路由器,否则路由器ID不会改变

泛洪

        运行OSPF协议的路由器会把自己产生或者收到的LSA向其它所有邻居或路由器通告,这个过程就是泛洪

OSPF路由协议的特点

(1)收敛速度快,适用于规模较大的网络,尤其是企业网络

(2)具有五类别特征,支持不连续子网、可变长子网掩码VLSM、无类别域间路由CIDR选择及手动路由聚合

(3)采用组播形式(224.0.0.5或224.0.0.6)或单播形式发送报文,支持等价负载均衡

(4)支持区域划分、构成结构化网络提供路由分级化管理

(5)支持接口验证方式和区域验证方式

(6)采用触发更新,可以使用路由标记(Tag)对外部路由进行跟踪

(7)默认情况下,OSPF的路由优先级为10,OSPF AS外部区域的路由优先级为150

(8)为了维持邻居表和LSDB表,会每隔30min进行一次链路状态更新

OSPF协议的报文类型

         OSPF是IP报文直接封装协议报文,协议号为89。如果OSPF协议组播地址被封装到以太网帧内,则以太网的MAC地址(01-00-5E-00-00-05或01-00-5E-00-00-06)也是组播地址。

通用头部字段(OSPF Packet Headers)

  • Version:描述OSPF协议版本,通常被设置为2(支持IPv4)或3(支持IPv6)。
  • Type:描述OSPF报文类型,值1:Hello、值2:DBD、值3:LSR、值4:LSU、值5:LSAck。
  • Packet Length:OSPF报文总长度,包括报文头部,单位是字节。
  • Router ID:生成此报文的路由器的唯一标识符。
  • Area ID:此报文需要被通告到的OSPF区域的标识符。
  • Checksum:对整个数据包(包括包头)的标准IP校验和。
  • Auth Type/Authentication Type:验证此报文所应当使用的验证方法,如空(0)、明文(1)或MD5(2)等。
  • Authentication Data:验证此报文时所需要的密码等信息。

OSPF分为5种报文Hello报文DBD报文LSR报文LSU报文LSAck报文

Hello报文:

        主要用于发现和维持OSPF邻居关系。周期性以组播的形式发送Hello报文,以维护OSPF的邻居关系。使用的组播地址为224.0.0.5(所有OSPF路由器)224.0.0.6(所有OSPF DR路由器)。报文内容包括一些定时器的数值、DR、BDR以及自己已知的邻居信息。

Hello报文特有字段

  • Network Mask:发送Hello报文的接口的网络掩码
  • Hello Interval:发送Hello报文的时间间隔,单位为秒。默认情况下,对于广播和组播类型接口,该值为10秒;对于非广播、多点接入和点对点类型接口,该值为30秒
  • Options:标识发送此报文的OSPF路由器所支持的可选功能。E:是否支持外部路由;MC:是否支持转发组播数据包;N/P:是否为NSSA区域
  • Router Priority:DR的优先级,默认值为1,取值范围为0-255。若为0.则路由器不能参与DR或BDR的选举
  • Designated Router (DR):DR的IP地址。如果未选举DR,则该字段为0.0.0.0
  • Backup Designated Router (BDR):BDR的IP地址。如果未选举BDR,则该字段为0.0.0.0

DD报文:

        描述本地LSDB摘要信息,用于两台设备进行数据库同步。在邻接关系初始化时,路由器会发送DD报文来告知对方自己的LSDB摘要信息。报文内容包括LSDB中每一条LSA(链路状态通告)的头部信息,以便对方判断哪些LSA是本地所缺少的或已经失效的。

接口MTU:在报文不分段的情况下,路由器接口能发送的最大IP报文的大小
I:初始位,发送的第一一个 DD包的1位置1,后续DD包的1位置0
M:后继位,最后一个DD包的M位置0;其他DD包的M位置1,表示后面还有其他DD报文
M/S:主从位,用于协商主/从路由器,置1表示Master,置0表示Slave,路由器ID大的一方会成为Master
DD序列号:在数据库同步过程中,用来确保路由器收到完整的DD报文。由Master规定起始序列号,每发送一个 DD报文,序列号就加1, Slave使用Master的序列号进行确认。因此,主从路由器利用序列号来保证DD报文传输的可靠性和完整性

LSA头部:LSA头部包含的信息可以唯一地标识一条LSA,内容包括以下几点

  • (1)链路状态老化时间:LSA产生后所经过的时间,单位为S。LSA在本路由器的LSDB中会随时间老化(每秒加1)。LSA的最大老化时间为3600s。如果某个LsA的老化时间超过了3600,则该LSA会从LSDB中被删除。另外,如果LSA始发路由器产生MaxAge的LSA,并向区域中泛洪,那么收到该LSA的路由器会用该LSA来更新自己的LSDB中相应的LSA
  • (2)链路状态类型: LSA的类型,如该字段值为1表示路由器LSA,该字段值为2表示网络LSA
  • (3)链路状态ID:标识LSA,LSA的类型不同,该字段的含义也不同
  • (4)通告路由器:始发LSA的路由器ID
  • (5)序列号:有符号的32bit整数,可以帮助识别最新的LSA。采用线性递增的序列号,序列号范围为0x80000001~ -0x7FFFFFF,OSPF每隔30min会更新一次LSDB。每当LSA被更新或者LSDB被更新,序列号都加1。那么OSPF如何判断LSA的新旧呢?首先,比较序列号,序列号越大表示LSA越新。其次,如果序列号相同,则校验和的值越大表示LSA越新。最后,如果序列号和校验和都相同,则比较老化时间,如果老化时间为MaxAge(3600s),则该LSA被认为是最新的;若老化时间差大于15min,则老化时间小的LSA被认为是最新的;若老化时间差小于15min,则认为这些LSA一样新,此时只保留先收到的LSA
  • (6)校验和:除了老化时间之外的LSA全部信息的校验和
  • (7)长度:LSA头部和LSA数据的总长度,单位为字节

LSR报文:

        LSR报文用于向对方请求所需要的LSA完整拷贝。当路由器发现本地LSDB中缺少某些LSA时,会发送LSR报文来请求这些LSA。LSR报文中包含所需LSA的摘要信息,以便对方能够识别并返回相应的LSA。

LSU报文:

        LSU报文用于向对方发送其所需要的LSA或者泛洪自己更新的LSA。当路由器收到LSR报文或自己的LSDB发生更新时,会发送LSU报文来通知邻居路由器。LSU报文中包含多条LSA的完整内容,以便邻居路由器能够更新自己的LSDB。

LSack报文:

        LSAck报文用于对收到的LSA进行确认。当邻居路由器收到LSU报文后,会发送LSAck报文作为确认。这样,源路由器可以确认链路状态已被通知到邻居,从而实现Flooding的可靠性传输。

OSPF协议的网络类型

        为了能够适应二层网络环境,根据路由器所连接物理网络的不同,OSPF协议通常将网络划分
为4种类型:广播多路访问(BMA)、非广播多路访问(NBMA)、点到点(P2P )、点到多点(P2MP)。在每种网络类型中,OSPF协议的运行方式都不同,包括是否需要选举DR和Hello报文的发送周期为多少等

  • BMA:当二层链路是以太网时,默认情况下,OSPF协议认为网络类型是BMA。在该类型的网中,通常以单播形式发送DD报文和LSR报文,以组播形式发送Hello、LSU和LSAck报文
  • NBMA:当二层链路网络是帧中继网络时,默认情况下,OSPF协议认为网络类型是NBMA。在该类型的网络中,以单播形式发送OSPF协议的所有报文
  • P2P:当二层链路协议是点到点协议( Point- to-Point Protocol, PPP )和高级数据链路控制(HDLC)协议时,默认情况下,OSPF协议认为网络类型是P2P。在该类型的网络中,以组播形式(组播地址为224.0.0.5 )发送OSPF协议的所有报文
  • P2MP:P2MP必须由其他的网络类型强制更改得到。在该类型的网络中,以组播形式(组播地址为224.0.0.5 )发送Hello报文,以单播形式发送OSPF协议的DD报文、LSR报文、LSU报文和LSAck报文
OSPF协议的网络类型
网络类型选举DRHello报文发送周期/s失效时间/s邻居
BMA1040自动发现
NBMA30120管理员配置
P2P1040自动发现
P2MP30120自动发现

OSPF的3个步骤,生成3个表

步骤一、发现并建立邻居关系

        路由器要先发现邻接的路由器,才能建立邻居关系。通过周期性发送Hello包并接收来自其他路由器的Hello包,进行建立并维护邻居关系。报文内容包括一些定时器的数值、DR、BDR以及自己已知的邻居信息。

查看邻居表信息

[huawei]display ospf peer

步骤二、描述本地LSDB信息,并形成邻接关系

        一旦建立了邻居关系,路由器会开始交换链路状态信息(LSI),将自己所知道的网络拓扑信息(如连接的网络、链路的状态、链路的成本等)发送给邻居。这个过程通过发送DBD报文、LSR报文和LSU报文来实现,最终所有路由器都会拥有一个同步的链路状态数据库LSDB

请求缺少的LSDB信息

查看链路状态数据库LSDB

[huawei]display opsf lsdb

步骤三、计算路由,并形成OSPF路由表

        每个路由器都会根据LSDB中的信息,使用Dijkstra算法计算最短路径树(SPT),以找到到达网络中每个目的地的最短路径。计算出的最短路径信息会保留到OPSF路由表上。

[huawei]display ospf routing

OSPF DR和BDR

DR

        DR是在OSPF网络中被选举出来的一个路由器,它负责收集和维护本地区域内的链路状态信息,并将这些信息传播给其他路由器。

        DR充当了整个多点链路网络中的“代表”,负责收集来自其他路由器的链路状态更新(LSU)消息,并将其汇总为一条链路状态数据库(Link State Database)。然后,DR将这个数据库发送给其他路由器,以减少链路状态更新的频率。

选举过程

在选举过程中,每个路由器都会发送Hello消息,其中包含自己的优先级值。优先级越高,被选举为DR的可能性就越大

如果没有路由器明确声明其优先级,则路由器会基于其Router ID(通常是一个IP地址)来选择DR,Router ID最小的路由器将成为DR

主要作用

减少链路状态更新的频率,帮助优化网络性能。

维护链路状态数据库并将其分发给其他路由器,确保所有路由器都拥有最新的网络拓扑信息。

根据链路状态数据库及时更新路由表,确保数据正确地转发到目标地址。

BDR

        BDR是DR的备份,当DR发生故障或失效时,BDR会立即接替DR的角色,并继续执行相同的任务,确保在DR失效时能够无缝接替其工作

不同网络类型中DR和BDR的选举操作

选DR是需要时间的,大概是40秒延迟

        还有一个要注意的就是(现实也会经常遇到):在以太网中有两台设备进行连接,他们会选举出DR和BDR,但是只有两台设备就跟PPP点对点一样,这时候我们就不需要选举出DR和BDR了(不浪费那40秒的延迟)

[Huawei-GigabitEthernet0/0/1]ospf network-type p2p

在接口上增加上面的那条命令之后,就不会选取DR和BDR了(注意:两边设备都需要配置这条命令)

OSPF区域及路由器

区域

        一个区域所设置的特性控制着其所能接收到的链路状态信息的类型。区分不同的OSPF区域类型的关键就是它们对区域外部路由的处理方式。OSPF区域包括标准区域和骨干区域

  • 标准区域:最通用的区域,传输区域内路由、区域间路由和外部路由。通常与骨干区域连接
  • 骨干区域:连接所有其它OSPF区域的中央区域,通常用Area 0表示。骨干区域负责区域之间的路由传递,非骨干区域之间的路由信息必须通过骨干区域来转发。骨干区域自身必须保持连通,所有非骨干区域必须与骨干区域保持联系

        在OSPF协议中,路由器根据其功能和在网络中的位置被划分为多种类型,如:IR、BR、ABR、ASBR。

内部路由器(Internal Router, IR)

定义:IR是仅连接到单个OSPF区域(Area)的路由器

功能:IR主要负责在同一区域内转发数据包,并通过链路状态通告(LSA)与其他内部路由器交换拓扑信息,以构建和维护整个区域的拓扑数据库。它们只处理来自本区域内的路由信息,不与其他区域的路由器直接通信

区域边界路由器(Area Border Router, ABR)

定义:ABR是连接两个或多个不同OSPF区域的路由器

功能:ABR在OSPF网络中扮演着桥梁的角色,负责将数据包从一个区域传输到另一个区域,并在区域之间传播路由信息。它们通过LSA将来自一个区域的路由信息汇总后,再传递给其他区域,确保不同区域之间的路由可达性

自治系统边界路由器(Autonomous System Boundary Router, ASBR)

定义:ASBR是连接OSPF域与其他自治系统(AS)的路由器

功能:ASBR负责将来自其他路由协议(如BGP)的路由信息导入OSPF域中,同时也将OSPF域内的路由信息导出到其他路由协议中。它在不同自治系统之间传递路由信息,实现跨自治系统的路由通信

虚拟链路路由器(Virtual Link Router)

定义:虚拟链路路由器是一种特殊的路由器类型,用于在特定情况下连接分布在不同OSPF区域中的两个OSPF区域

功能:虚拟链路路由器允许在OSPF区域之间建立逻辑连接,绕过非OSPF区域的物理连接限制,从而确保数据包能够正确路由到目的地。这在复杂的网络拓扑结构中尤为重要,特别是在物理连接不可行或成本过高时

OSPF协议的LSA类型

LSA概述

  • LSA是OSPF进行路由计算的关键依据
  • OSPF的LSU报文可以携带多种不同类型的LSA
  • 各种类型的LSA拥有相同的报文头部

 重要字段解析

  • LS Age(链路状态老化时间):表示LSA已经生存的时间,单位为秒。LSA被始发时,该字段为0,随着LSA在网络中被泛洪,该时间逐渐累加,当到达MaxAge (缺省值为3600s)时,LSA不再用于路由计算
  • Options(可选项):每一个bit都对应了OSPF所支持的某种特性
  • LS Type(链路状态类型):指示本LSA的类型
  • Link Start ID(链路状态ID):不同的LSA,该字段定义不同
  • Advertising Router(通告路由器):产生该LSA的路由器的Router ID
  • LS Sequence Number(链路状态序列号):当LSA每次有新的实例产生时,序列号就会增加
  • LS Checksum(校验和):用于保证数据的完整性和准确性
  • Length:是一个包含LSA头部在内的LSA的总长度值

注:链路状态类型、链路状态ID、通告路由器三元组唯一标识一个LSA。老化时间、序列号、校验和用于判断LSA的新旧

链路状态类型 

 其中类型2、网络LSA是由DR生成,描述网络上所有路由器的连接状态

        一台路由器中所有的LSA都被存放在其LSDB中,正确的LSA可以描述一个OSPF区域的网络拓扑结构。OSPF中常见的LSA有6种

Router LSA(类型1)

        所有OSPF路由器都会产生这种LSA,用于描述路由器上连接到某一个区域的链路或某一接口的状态信息。该LSA只会在区域内扩散,不会扩散至其他区域。链路ID为此路由器ID

  • V(Virtual Link,虚链路):如果产生此LSA的路由器是虚连接的端点,则置为1
  • E(External,外部):如果产生此LSA的路由器是ASBR,则置为1
  • B(Border,边界):如果产生此LSA的路由器是ABR,则置为1
  • 链路数量(Number of Links):LSA 中所描述的链路信息的数量,包括路由器上处于某区域中的所有链路和接口
  • 链路ID(Link ID):链路标识,具体的数值根据链路类型而定
  • 链路数据(Link Data):具体的数值根据链路类型而定
  • 链路类型(Link Type):值为1表示通过P2P链路与另一台路由器相连;值为2表示连接到传送网络,如BMA或NBMA网络;值为3表示连接到Stub网络,如Loopback接口;值为4表示虚链路
  • 度量(Metric):链路的开销
  • ToS(Type of Service):服务类型
  • ToS度量(ToS Metric):服务类型的链路的开销

网络LSA(类型2)

        由DR产生,用来描述一个多路访问网络和与之相连的所有路由器,只会在包含DR所属的多路访问 网络的区域中扩散,并不会扩散至其他的OSPF区域中。链路状态ID为DR接口的IP地址

  • 网络掩码:BMA或NBMA网络的网络掩码
  • 连接路由器:连接在同一网段上所有与DR形成完全邻接关系的路由器的ID,包括DR自身的ID

网络汇总LSA(类型3)

        由ABR产生,他将一个区域内的网络通告给OSPF AS中的其他区域【除完全末节区域】。这些条目通过骨干区域被扩散到其它的ABR中。在区域间传递路由信息时遵循水平分割原则,即从一个区域发出的类型3 LSA不会传回到本区域。链路状态ID为目的网络的地址。

ASBR汇总LSA(类型4)

        由ABR产生,描述ASBR的路由,通告给除ASBR所在区域的其他相关区域。链路状态ID为ASBR的ID

AS外部LSA(类型5)

        由ASBR产生,含有关于AS外的路由信息,通告给所有的区域【除末节区域和次末节区域】。链路状态ID为外部网络的地址

  • E:外部度量值的类型。第一类外部路由设置为0,第二类外部路由设置为1。第一类外部路由的开销等于本设备到相应的ASBR的开销加上ASBR到该路由目的地址的开销。第二类外部路由的开销等于ASBR到该路由目的地址的开销。第一类外部路由的可信度高于第二类外部路由的可信度
  • 转发地址(Forwarding Address,FA):到所通告的目的地址的报文将被转发到的地址,仅出现在类型5 LSA或类型7 LSA中。类型5 LSA的外部路由能否进入路由表,取决于类型5 LSA FA地址的可达性,如果FA地址不可达,则类型5 LSA 的外部路由不能进入路由表。FA地址可以是全0,也可以是非0。如果FA地址是全0,则数据包要经过ASBR访问外部网络;如果FA地址是非0,则数据包要转发到该FA地址的网络设备,再由该网络设备转发到外部网络
  • 外部路由标记(External Route Tag):添加到外部路由上的标记。OSPF本身并不使用该字段,其可以用来对外部路由进行管理

次末节区域外部LSA(类型7)

        由次末节区域内的ASBR产生,且只能在次末节区域内传播。ABR可以将类型7的LSA转换为类型5的LSA,当次末节区域内有多个ABR时,系统会根据规则自动选择一个ABR作为转换器。默认情况下,次末节区域选择路由器ID最大的设备作为转换器。链路状态ID为外部网络的地址,格式与类型5 LSA相同

OSPF的特殊区域

末节区域

        末节区域的ABR不发布它们接受的AS外部路由,只发布区域内路由和区域间路由。为保证到AS外的路由可达,该区域的ABR将生成一条默认路由,以类型3 LSA发布给末节区域中的其他非ABR。

        注:在OSPF视图下执行【stub】命令,就可以将当前区域配置为末节区域

配置末节区域注意的细节

  • 骨干区域不能配置为末节区域
  • 如果要将一个区域配置为末节区域,则该区域中所有的路由器都要配置末节区域属性
  • 末节区域内不能存在ASBR,即AS外部路由不能在本区域内传播
  • 虚连接不能穿过末节区域

完全末节区域

        完全末节区域的ABR不允许发布AS外部路由和区域间路由,只发布区域内路由。同样的,该区域的ABR会生成一条默认路由,以类型3 LSA发布给末节区域中的其他非ABR

        注:在OSPF区域视下,只需要在ABR上执行【stub no-summary】命令,就可以将当前区域配置成完全末节区域。在末节区域视图下执行【stub】命令,则可以将当前末节区域配置成完全末节区域。

次末节区域(NSSA)

        次末节区域允许引入AS外部路由,由ASBR发布类型7 LSA给本区域,这些类型7 LSA在ABR上转换成类型5 LSA,并且泛洪到整个OSPF区域中,NSSA保留了保留了AS内的未节区域的特征。NSSA的ABR发布类型7默认路由传播到区域内,所有区域间路由都必须通过ABR才能发布

        注:在OSPF区域视图下执行【nssa】命令,可将当前区域配置为NSSA
 

OSPF路由计算、路由类型、路由聚合

        OSPF协议采用SPF算法,计算过程如下

  1. 每台OSPF路由器根据自己周围的网络拓扑结构生成LSA,并通过更新报文将LSA发送给网络中的其它OSPF路由器
  2. 每台OSPF路由器都会收集其他路由器通告的LSA,所有的LSA房子啊一起便组成了LSDB
  3. OSPF路由器将LSDB转换成一张带权的有向图,这张图就是整个网络拓扑结构。这时候所有路由器得到的有向图都是一样的
  4. 根据有向图,每台路由器使用SPF算法计算出一颗以自己为根的最短路径树

OSPF路由计算具体方法

  • 计算区域内路由:类型1 LSA和类型2 LSA可以精确地描述整个区域内部地网络拓扑,根据SPF算法,可以计算出每台路由器的最短路径根据类型1 LSA描述地路由器地网段情况,得到各个网段地具体路径
  • 计算区域外路由:对于一个区域的内部来说,相邻区域的路由对应的网段看起来是直接连接在ABR上的,而到ABR的最短路径已经在计算区域内路由中计算完毕,所以直接检查类型3 LSA,就可以很容易地得到这些网段的最短路径。另外,ASBR也可以看作连接在ABR上,所以ASBR的最短路径也可以在该阶段计算出来
  • 计算AS外路由:由于AS外部的路由可以看作直接连接在ASBR上,而到ASBR的最短路径在计算区域外路由中已经计算完毕,因此逐条检查类型5 LSA就可以得到到达各个外部网络的最短径

        OSPF协议将路由分为4类,按照优先级从高到低的顺序为区域内路由区域间路由第一类外部路由第二类外部路由。其中,AS区域内路由和区域间路由描述的是AS内部的网络结构,AS外部路由则描述了应该如何选择到AS以外目的地址的路由;第一类外部路由的可信度较高,并且和OSPF自身路由的开销具有可比性,所以到第一类外部路由的开销等于本路由器到相应的ASBR的开销与ASBR到该路由目的地址的开销之和;第二类外部路由的可信度比较低,所以OSPF协议认为从ASBR到AS之外的开销远远大于从AS之内到达ASBR的开销。

        路由聚合是指ABR或ASBR将具有相同前缀的路由信息聚合起来,只发布一条路由到其他区域。AS被划分成不同的区域后,可以通过路由聚合来减少路由信息的通告,减小路由表的规模,提高路由器的运算速度,降低系统的消耗。需要注意的是,至少存在一条明细路由,路由器才会通告聚合路由,而且聚合路由范围内的明细路由发生变化,不影响通告的聚合路由。路由聚合只能在ABR和ASBR上配置,因此OSPF路由聚合包括ABR路由聚合和ASBR路由聚合两类

  • ABR路由聚合:ABR向其他区域发送路由信息时,以网段为单位生成类型3 LSA。如果该区域中存在一些连续的网段,则可以将这些连续的网段聚合成一个网段。 这样ABR只发送一条聚合后的LSA,所有属于聚合网段范围的LSA将不再被单独发送出去,可减小其他区域中LSDB的规模。执行【abr- summary】命令即可配置ABR路由聚合,可以通过配置参数【generate-null0-route】生成黑洞路由,以防止路由环路。
  • ASBR路由聚合:配置引入路由后,如果本地路由器是ASBR,则将对引入的地址范围内的类型5 LSA进行聚合。执行【asbr- summary】命令即可配置ASBR路由聚合,可以通过配置参数【generate-null0-route】生成黑洞路由,以防止路由环路。

OSPFv2和OSPFv3的区别

比较OSPFv2OSPFv3
网络IPv4网络IPv6网络
运行基于网络基于链路
源地址接口IPv4地址接口IPv6链路本地地址
目的地址

1、邻居接口单播IPv4地址

2、组播地址224.0.0.5或224.0.0.6

1、邻居IPv6链路本地地址

2、组播地址FF02::5或FF02::6

IP单播路由IPv4单播路由,路由器默认启动IPv6单播路由,执行【ipv6】命令启用
同一链路上运行多个实例不支持支持
验证简单口令或MD5IPv6提供安全机制
LSA有选项字段无选项字段,增加LSA(类型8)和区域内前缀LSA(类型9)

OSPF的常用命令

配置OSPF的基本功能

# 启动OSPF进程,配置Router ID
[Huawei]ospf process-id router-id router-id
[Huawei]ospf 1 router-id 1.1.1.1   # 举例# 设置开销的带宽参考值
[Huawei-ospf-1]bandwidth-reference value   # value=1--214783648
[Huawei-ospf-1]bandwidth-reference 1   # 举例# 禁止接口收发OSPF报文
[Huawei-ospf-1]silent-interface  all | interface-type interface-number
[Huawei-ospf-1]silent-interface  GigabitEthernet 0/0/0   # 举例# 创建并进入OSPF视图
[Huawei-ospf-1]area area-id   # area-id=0 ~ 4294967295
[Huawei-ospf-1]area 1  # 举例# 配置使能OSPF的接口范围
[Huawei-ospf-1-area-1.1.1.1]network ip-addreaa wildcard-mask
[Huawei-ospf-1-area-1.1.1.1]network 2.2.2.2 0.0.0.255  # 举例# 在接口上使能OSPF
[Huawei-GigabitEthernet0/0/0]ospf enable [process-id] area area-id
[Huawei-GigabitEthernet0/0/0]ospf enable 1 area 1.1.1.1  # 举例# 配置接口运行OSPF的开销
[Huawei-GigabitEthernet0/0/0]ospf cost cost   # cost=1~65535
[Huawei-GigabitEthernet0/0/0]ospf cost 1  # 举例# 设置OSPF接口的网络类型
[Huawei-GigabitEthernet0/0/0]ospf network-type {broadcast | noma | p2mp | p2p}
[Huawei-GigabitEthernet0/0/0]ospf network p2p  # 举例# 设置接口在选举DR时的优先级
[Huawei-GigabitEthernet0/0/0]ospf dr-priority proiority
[Huawei-GigabitEthernet0/0/0]ospf dr-priority 10   # 举例# 设置接口发送Hello报文的时间间隔
[Huawei-GigabitEthernet0/0/0]ospf timer hello interval    # 单位为秒
[Huawei-GigabitEthernet0/0/0]ospf timer hello 60   # 举例# 设置OSPF的邻居失效时间
[Huawei-GigabitEthernet0/0/0]ospf timer dead interval   # 单位为秒
[Huawei-GigabitEthernet0/0/0]ospf timer dead 10000   # 举例

配置OSPF的安全性

# OSPF的接口验证
# 简单验证方式
[Huawei-GigabitEthernet0/0/0]ospf authentication-mode simple plain
# MD5、HMAC-MD5或HMAC-SHA256验证方式
[Huawei-GigabitEthernet0/0/0]ospf authentication-mode {md5 | hmac-md5 | hmac-sha256} [key-id [cipher] cipher-text]
[Huawei-GigabitEthernet0/0/0]ospf authentication-mode md5 1 cipher 123456    # 举例# 配置OSPF区域验证
# 与接口验证命令大致相同,一个是在接口上配置,一个是在OSPF区域视图下配置
# 所以这个就不用加上前面[ospf],其它一样的命令

 

配置OSPF默认路由注入

[Huawei-ospf-1-area-0.0.0.1]default-route-advertise

配置OSPF的路由聚合

# 配置ABR的路由聚合
[Huawei-ospf-1-area-0.0.0.1]abr-summary ip-address mask   # 还有一些参数啥的就懒得写详细了
[Huawei-ospf-1-area-0.0.0.1]abr-summary 10.1.1.1 255.255.255.0  # 举例# 配置ASBR的路由聚合
[Huawei-ospf-1]asbr-summary ip-address mask    #同上,还有参数没写全
[Huawei-ospf-1]asbr-summary 10.1.1.1 255.255.255.0   # 举例

配置OSPF的特殊区域

# 配置末节区域
# 在ABR中配置命令
[Huawei-ospf-1-area-0.0.0.1]stub# 配置完全末节区域
[Huawei-ospf-1-area-0.0.0.1]stub no-summary # 配置NSSA区域
[Huawei-ospf-1-area-0.0.0.1]nssa [default-route-advertise | no-summary | no-import-route]

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/55773.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

毕设分享 基于协同过滤的电影推荐系统

文章目录 0 简介1 设计概要2 课题背景和目的3 协同过滤算法原理3.1 基于用户的协同过滤推荐算法实现原理3.1.1 步骤13.1.2 步骤23.1.3 步骤33.1.4 步骤4 4 系统实现4.1 开发环境4.2 系统功能描述4.3 系统数据流程4.3.1 用户端数据流程4.3.2 管理员端数据流程 4.4 系统功能设计 …

信息安全工程师(28)机房安全分析与防护

前言 机房安全分析与防护是一个复杂而细致的过程,涉及到物理安全、环境控制、电力供应、数据安全、设备管理、人员管理以及紧急预案等多个方面。 一、机房安全分析 1. 物理安全威胁 非法入侵:未经授权的人员可能通过门窗、通风口等进入机房,…

【LeetCode】每日一题 2024_10_10 优质数对的总数 I(暴力/哈希)

前言 每天和你一起刷 LeetCode 每日一题~ LeetCode 启动! 题目:优质数对的总数 I 代码与解题思路 简单题先暴力~ 直接对着题意模拟即可,力扣上只要是标着简单标签的题目,不用犹豫,直接对他使用暴力吧! …

LabVIEW混合控制器质量检测

随着工业自动化水平的提高,对控制器的精度、稳定性、可靠性要求也在不断上升。特别是在工程机械、自动化生产、风力发电等领域,传统的质量检测方法已无法满足现代工业的高要求。因此,开发一套自动化、精确、可扩展的混合控制器质量检测平台成…

Pikachu-Cross-Site Scripting-xss盲打

xss盲打,不是一种漏洞类型,而是一个攻击场景;在前端、或者在当前页面是看不到攻击结果;而是在后端、在别的页面才看到结果。 登陆后台,查看结果;

Extreme Compression of Large Language Models via Additive Quantization阅读

文章目录 Abstract1. Introduction2. Background & Related Work2.1. LLM量化2.2. 最近邻搜索的量化 3.AQLM:Additive Quantization for LLMs3.1. 概述3.1.0 补充**步骤说明****举例说明** 3.2. 阶段1:代码的波束搜索3.3. 阶段2:码本更新3.4. 阶段3&…

Qt Creator 通过python解释器调用*.py

全是看了大佬们的帖子,结合chatGPT才揉出来。在此做个记录。 安装python在Qt Creator *.pro 文件中配置好环境来个简单的example.py调用代码安装pip添加opencv等库调用包含了opencv库的py代码成功 *.pro配置: INCLUDEPATH C:\Users\xuanm\AppData\Lo…

操作系统中的并发控制——使用条件变量同步

本期主题: 操作系统中的并发控制,条件变量 往期链接: linux设备驱动中的并发操作系统中的多线程问题——原子操作、自旋锁的底层实现操作系统并发控制——使用互斥锁实现同步 操作系统并发控制之条件变量同步 1. 问题描述2. 条件变量的API讲…

云栖实录 | Hologres3.0全新升级:一体化实时湖仓平台

本文根据2024云栖大会实录整理而成,演讲信息如下: 演讲人: 姜伟华 | 阿里云智能集团资深技术专家、Hologres 负责人 丁 烨 | 阿里云智能集团产品专家、Hologres 产品负责人 活动: 2024 云栖大会 - 商用大数据计算与分析平台论…

Python中的数据可视化:从入门到进阶

数据可视化是数据分析和科学计算中的重要环节,它通过图形化的方式呈现数据,使复杂的统计信息变得直观易懂。Python提供了多种强大的库来支持数据可视化,如Matplotlib、Seaborn、Plotly等。本文将从基础到进阶,详细介绍如何使用这些…

[单master节点k8s部署]31.ceph分布式存储(二)

Ceph配置 Ceph集群通常是一个独立的存储集群,可以部署在 Kubernetes 集群之外。Ceph 提供分布式存储服务,能够通过 RADOS、CephFS、RBD(块存储)、和 RGW(对象存储)等方式与 Kubernetes 集成。即使 Ceph 部…

基于深度学习的手势控制模型

关于深度实战社区 我们是一个深度学习领域的独立工作室。团队成员有:中科大硕士、纽约大学硕士、浙江大学硕士、华东理工博士等,曾在腾讯、百度、德勤等担任算法工程师/产品经理。全网20多万粉丝,拥有2篇国家级人工智能发明专利。 1. 项目简…

Nexpose 6.6.271 发布下载,新增功能概览

Nexpose 6.6.271 for Linux & Windows - 漏洞扫描 Rapid7 Vulnerability Management, release Sep 26, 2024 请访问原文链接:https://sysin.org/blog/nexpose-6/,查看最新版。原创作品,转载请保留出处。 作者主页:sysin.or…

安全工具 | 搭建带有 Web 仪表板的Interact.sh

介绍 Interactsh 是一个用于检测带外交互的开源工具。它是一种旨在检测导致外部交互的漏洞的工具。本文将主要介绍在子域上设置私有 Interact.sh 服务器以及部署其 Web 应用程序。只需一个 AWS EC2 或 VPS 实例和一个域。 要求 •具有静态IP的AWS EC2 / VPS •拥有自己的域…

实例讲解电动汽车VIN写入规则及Simulink建模方法(三)——VIN设置状态反馈及Simulink建模方法

目录 一、整车VIN设置状态反馈规则 二、整车VIN设置状态反馈设置策略 1、VIN设置状态判定 2、VIN设置状态反馈发送 三、整车VIN设置状态反馈Simulink建模 1、VIN设置状态判定 2、VIN设置状态反馈发送 3、整车VIN设置状态反馈设置完整Simulink模型 四、总结 一、整车VI…

Node.js入门——fs、path模块、URL端口号、模块化导入导出、包、npm软件包管理器

Node.js入门 1.介绍 定义:跨平台的JS运行环境,使开发者可以搭建服务器端的JS应用程序作用:使用Node.Js编写服务器端代码Node.js是基于Chrome V8引擎进行封装,Node中没有BOM和DOM 2.fs模块-读写文件 定义:封装了与…

WIFI网速不够是不是光猫的“路由模式”和“桥接模式”配置错了?

光猫(光纤调制解调器)是一种用于将光纤信号转换为数字信号的设备,通常用于家庭或企业网络中。光猫可以在不同的工作模式下运行,其中最常见的两种模式是“路由模式”和“桥接模式”。以下是这两种模式的详细解释及其优缺点。 一、路…

python发邮件附件:配置SMTP服务器与认证?

python发邮件附件技巧?Python发送多附件邮件的方法? Python作为一种强大的编程语言,提供了丰富的库和工具来实现这一功能。AokSend将深入探讨如何使用Python发邮件附件,并详细介绍配置SMTP服务器与认证的关键步骤。 python发邮件…

通过阿里云Milvus与PAI搭建高效的检索增强对话系统

阿里云Milvus现已无缝集成于阿里云PAI平台,一站式赋能用户构建高性能的RAG(Retrieval-Augmented Generation)对话系统。您可以利用Milvus作为向量数据的实时存储与检索核心,高效结合PAI和LangChain技术栈,实现从理论到…

第69期 | GPTSecurity周报

GPTSecurity是一个涵盖了前沿学术研究和实践经验分享的社区,集成了生成预训练Transformer(GPT)、人工智能生成内容(AIGC)以及大语言模型(LLM)等安全领域应用的知识。在这里,您可以找…