IP路由基础&ospf

IP路由基础

路由器收到ip报文时,更具其目的进行匹配路由表,匹配成功则转发路由,失败则直接丢弃

路由表(RIB)和转发表(FIB)

路由器维护着一个本地路由核心表,此外还存在从各种协议学习到的路由表

转发表是将路由表中的最优路径下载而来而生成的,路由器根据转发表来进行转发

  • 各种协议生成的路由表

    • 协议路由表中存放着该协议发现的路由信息
    • 直连路由表 静态路由表 OSPF 路由表
  • 本地核心路由表

    • 对各个协议的路由表中相同的表项进行优选,得到本地核心路由表
    • 本地核心路由表中的最优路由,是依据各种路由协议的优先级和度量值来选取的。
    • 从协议路由表中进行路由选择生成而来
  • 转发表

    • 将本地核心路由表中的最优路由下载而来 与RIB高度一致
    • 最长匹配 优先级 花销

动态路由协议

静态路由是由工程师手动配置维护的路由条目,适用与小型稳定的网络路由

但是:

  1. 无法适应规模较大的网路
  2. 无法动态响应网络变化

动态路由协议:

  1. 按照工作区域分类:

    1. 内部网关协议:RIP OSPF ISIS
    2. 外部网关协议:BGP
  2. 按工作机制和算法分类

    1. 距离矢量路由协议:RIP
    2. 链路状态路由协议:ISIS OSPF

自治系统AS:自治系统是一组互联的IP地址集合,由一个或多个自治系统号(ASN)标识。每个AS通常由一个或多个路由器和与之相连的子网组成,这些路由器共同遵循同一套路由协议,形成一个统一管理和控制的网络单元

AS范围(1~65535)

私有网络编号(64512~65535)

距离矢量路由协议:

  1. 运行该路由协议的路由器周期性的泛洪自己的路由表,通过路由的交互,每台路由器都从相邻的路由器学习到路由,并且加载进自己的路由表,再通告给其他的用户
  2. 对于网络中的所有路由器而言,路由器并不清楚网络的拓扑,只是简单的知道要去往某个目的网段方向在哪里,开销有多大。

链路状态路由协议(LSA泛洪 link-state-advertiserment):

  1. 链路状态路由协议通告的的是链路状态而不是路由信息。运行链路状态路由协议的路由器之间首先会建立邻居关系,然后彼此之间开始交互LSA
  2. 每台路由器都会产生LSA,路由器将接收到的LSA放入自己的LSDB。路由器通过对LSDB中所存储的LSA进行解析,进而了解全网拓扑。
  3. 每台路由器基于LSDB,使用SPF算法进行计算。每台路由器都计算出一棵以自己为根的、无环的、拥有最短路径的“树”。有了这棵“树”,路由器就已经知道了到达所有网段的优选路径。
  4. 路由器将计算出来的优选路径,加载进自己的协议路由表

OSPF

OSPF基础

基于链路状态的内部网关路由协议

ospf是一种基于链路状态的内部网关路由协议

  • ipv4一般是version 2
  • ipv6 一般是version 3
  1. Router ID:用于在自治系统中唯一标识一台运行OSPF的路由器,按点分十进制的形式

    1. Router ID选举规则如下:

      • 手动配置OSPF路由器的Router ID(建议手动配置)

      • 如果没有手动配置Router ID,则路由器使用Loopback接口中最大的IP地址作为Router ID

      • 如果没有配置Loopback接口,则路由器使用物理接口中最大的IP地址作为Router ID

  2. Area:用于标识一个OSPF的区域

    1. 区域是从逻辑上将设备划分为不同的组,每个组用区域号(Area ID)来标识
    2. OSPF的区域ID是一个32bit的非负整数,按点分十进制的形式呈现,例如Area0.0.0.1。
  3. 度量值:用Cost(开销)作为路由的度量值。每一个激活了OSPF的接口都会维护一个接口Cost值

    1. 缺省 的接口Cost = 100 Mbit/s / 接口带宽
    2. OSPF以“累计cost”为开销值,也就是流量从源网络到目的网络所经过所有路由器的出接口的cost总和
  4. 邻居表:OSPF在传递链路信息之前,需先通过hello报文建立邻居关系

    1. 邻居表显示了OSPF路由器之间的邻居状态
    2. 使用display ospf peer查看
  5. LSDB:LSDB会保存自己产生的及从邻居收到的LSA信息

  6. 使用命令行display ospf lsdb查看LSDB表

  7. Type标识LSA的类型,AdvRouter标识发送LSA的路由器

  8. OSPF协议路由表

  9. OSPF路由表保存了从OSPF学习到的网段最优条目

  10. 使用命令display ospf routing查看OSPF路由表

  11. 报文格式和类型

    1. OSPF报文直接采用IP封装,在报文的IP头部中,协议号为89
    2. OSPF一共定义了5种类型的报文,不同类型的OSPF报文有相同的头部格式
      1. Hello: 周期性发送,发现和维护邻居关系
      2. Database Description :描述本地LSDB的摘要信息,用于两台设备进行数据库同步。
      3. Link State Request 用于向对方请求所需要的LSA,设备只有在 OSPF邻居双方成功交换DD报文后才会向对方发出LSR报文。
      4. Link State Update 用于向对方发送其所需要的详细LSA。
      5. Link State Ack 用来对收到的LSA进行确认。

工作原理:

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

    1. 在以太网链路上,缺省时,OSPF采用组播的形式发送Hello报文(目的地址224.0.0.5)
    2. OSPF Hello报文中包含了路由器的Router ID、邻居列表等信息

    邻居状态:

    1. Down:这是邻居的初始状态,表示没有从邻居收到任何信息
    2. Init:在此状态下,路由器已经从邻居收到了Hello报文,但是自己的Router ID不在所收到的Hello报文的邻居列表中
    3. 2-way:在此状态下,路由器发现自己的Router ID 存在于收到的Hello报文的邻居列表中。
  2. OSPF建立邻居关系之后使用DD报文建立邻接关系

    1. ExStart:邻居状态变成此状态以后,路由器开始向邻居发送DD报文。在此状态下发送的DD报文不包含链路状态描述。 只用于选举主从关系
    2. Exchange:在此状态下,路由器与邻居之间相互发送包含链路状态信息摘要的DD报文。
    3. Loading:在此状态下,路由器与邻居之间相互发送LSR报 文、LSU报文、LSAck报文
  3. LSDB同步

    1. loading:R1开始向R2发送LSR报文,请求那些在Exchange状态下通过DD 报文发现的、并且在本地LSDB中没有的链路状态信息。
    2. R2向R1发送LSU报文,LSU报文中包含了那些被请求的链路状态 的详细信息。R1在完成LSU报文的接收之后,且没有其他待请求 的LSA后,会将邻居状态从Loading变为Full。
    3. R1向R2发送LSAck报文,作为对LSU报文的确认

OSPF网络类型简介

OSPF有四种网络类型:BMA(Broadcast)、NBMA、P2MP和P2P

一般情况下,链路两端的OSPF接口网络类型必须一致,否则双方无法建立邻居关系

  1. P2P指的是在一段链路上只能连接两台网络设备的环境。 广播、组播数据包都可以转发(PPP链路)
  2. BMA也被称为Broadcast,指的是一个允许多台设备接入的、支持广播、组播报文的环境。(Ethernet(以太网))
  3. NBMA指的是一个允许多台网络设备接入且不支持广播 与组播报文的环境。OSPF模拟在广播型网络上的操作,但 是每个路由器的邻居需要手动配置(全互连的帧中继(Frame-Relay))
  4. P2MP相当于将多条P2P链路的一端进行捆绑得到的网络。P2MP可以支持广播、组播的转发。没有一种链路层协议会被缺省的认为是P2MP网络类型(非完全连接的帧中继或ATM改为 P2MP的网络)

DR和BDR的选举

在MA网络类型中如果每台OSPF路由器都与其他的所有路由器建立OSPF邻接关系,便会导致网络中存在过多 的OSPF邻接关系,增加设备负担,也增加了网络中泛洪的OSPF报文数量,当拓扑出现变更,网络中的LSA泛洪可能会造成带宽的浪费和设备资源的损耗

为了优化MA网络中OSPF邻接关系,OSPF指定了三种OSPF路由器身份,DR(Designated Router,指定路由器)、BDR(Backup Designated Router,备用指定路由器)和DRother路由器。

只允许DR、BDR与其他OSPF路由器建立邻接关系。DRother之间不会建立全毗邻的OSPF邻接关系,双方 停滞在2-way状态(建立邻居关系)。

选举规则:

DR/BDR的选举是非抢占式的。

DR/BDR的选举是基于接口的

  • 接口启动OSPF的状态:差值大于等于40S,先启动的为DR
  • 接口的DR优先级越大越优先,取值范围0~255,默认为1
  • 接口的DR优先级相等时,Router ID越大越优先

只有MA网络类型需要选DR。

ospf基础配置:

启动OSPF进程,进入OSPF视图。
[Huawei] ospf [ process-id | Router ID Router ID ]
进程号是本地概念,两台使用不同OSPF进程号设备之间也能够建立邻接关系,不同的进程维护各自的LSDB

创建并进入OSPF区域视图
[Huawei-ospf-1] area area-id

在OSPF区域中使能OSPF
[Huawei-ospf-1-area-0.0.0.0] network network-address wildcard-mask
执行该命令配置区域所包含的网段。设备的接口IP地址掩码长度≤network命令指定的掩码长度,且接口的主IP地址必须在network命令指定的网段范围内,此时该接口才会在相应的区域内激活OSPF。

接口视图下使能OSPF:
[Huawei-GigabitEthernet1/0/0] ospf enable process-id area area-id
ospf enable命令用来在接口上使能OSPF,优先级高于network命令。

接口视图下:设置选举DR时的优先级
[Huawei-GigabitEthernet1/0/0] ospf dr-priority priority

接口视图下:设置Hello报文发送的时间间隔
[Huawei-GigabitEthernet1/0/0] ospf timer Hello interva

接口视图下:设置网络类型
[Huawei-GigabitEthernet1/0/0] ospf network-type { broadcast | nbma | p2mp | p2p }

OSPF单区域路由计算

同一个区域中的所有路由器拥有完全一致的LSDB

LSA报文信息

LS Type(链路状态类型):指示本LSA的类型。

Link State ID(链路状态ID):不同的LSA,对该字段的定义不同。

Advertising Router(通告路由器):产生该LSA的路由器的Router ID

链路状态类型、链路状态ID、通告路由器三元组唯一地标识了一个LSA

LS Age(链路状态老化时间):此字段表示LSA已经生存的时间,单位 是秒,默认为0,越大越旧

LS Sequence Number(链路状态序列号):当LSA每次有新的实例 产生时,序列号就会增加。

LS Checksum(校验和):用于保证数据的完整性和准确性

链路状态老化时间 、链路状态序列号 、校验和用于判断LSA的新旧

LSA处理原则

OSPF通过交互LSA实现链路状态数据库同步,路由器收到LSA后,按照以下原则处理

  1. 如果收到的LSA本地没有,则更新LSDB并泛洪该 LSA。
  2. 如果本地LSDB已存在该LSA,但是收到的更新,则更新LSDB并泛洪该LSA。
  3. 如果收到的LSA和LSDB中相同,则忽略,并终止泛洪。
  4. 如果收到的LSA损坏,例如Checksum错误,则不接收该LSA。

收到一个LSA的多个实例时

  • 先检查序列号是否相同,若相同则检验校验和是否相同,如不同则序列号更大为优
  • 校验和是否相同,若相同则检查Max Age=3600 s,如不相同则校验和更大为优
  • 检验Max Age=3600 s,若相等则收到LSA更优,如不相等则检查Age差是否超过15min,超过之后Age小的更优,没有超过则默认为同一个LSA,保留先收到的

单区域OSPF只会产生两类LSA:

路由器LSA (Router LSA):每个设备都会产生,描述了设备的链路状态和开销,该LSA只能在接口所属的区域内泛洪

网络LSA (Network LSA) 由DR产生,描述该DR所接入的MA网络中所有与之形成邻接关系的路由器,以及DR自己。该 LSA只能在接口所属区域内泛洪

Router LSA 报文详解

  • V (Virtual Link ) :如果产生此LSA的路由器是虚连接的端点,则置为1。
  • E (External ): 如果产生此LSA的路由器是ASBR,则置为1。
  • B (Border ):如果产生此LSA的路由器是ABR,则置为1。
  • links :LSA中的Link(链路)数量。Router LSA使用Link来承载 路由器直连接口的信息。
Link Type Link ID Link Data
Point-to-Point(P2P):描述一个从本 路由器到邻居路由器之间的点到点链路, 属于拓扑信息 邻居路由器的 Router ID 宣告该Router LSA的路 由器接口的IP地址
TransNet:描述一个从本路由器到一个 Transit网段(例如MA或者NBMA网段) 的连接,属于拓扑信息 DR的接口IP地址 宣告该Router LSA的路 由器接口的IP地址
StubNet:描述一个从本路由器到一个 Stub网段(例如Loopback接口)的连 接,属于网段信息 宣告该Router LSA的路由器接 口的网络IP地址 该Stub网络的网络掩码
virtual-link(虚链路):用于描述虚链 路上的邻居关系 邻居路由器的 Router ID 宣告该Router LSA的路 由器接口的IP地址

Network LSA 报文详解

  • Link State ID :DR的接口IP地址。
  • Network Mask:MA网络的子网掩码。
  • Attached Router:连接到该MA网络的路由器的Router-ID (与该DR建立了邻接关系的邻居的Router-ID,以及DR自己的 Router-ID),如果有多台路由器接入该MA网络,则使用多个字段描述

LSA泛洪机制

OSPF拓扑发生改变时:各OSPF设备会立即泛洪LSA

定期泛洪:华为OSPF设备每隔30min会泛洪一次LSA

1类LSA种的链路类型如

OSPF接口网络类型为P2P产生的链路类型为P2P和stubnet

OSPF接口网络类型为MA产生的链路类型为transnet

OSPF多区域及路由引入

多区域及路由计算

为解决大型网络中,单区域产生的LSDB过于臃肿导致的网络拥堵而引入的多区域的OSPF。

路由器可以分为两种角色:

  • 区域内部路由器(Internal Router):该类设备的所有接口都属于同一个OSPF区域
  • 区域边界路由器(Area Border Router):该类设备接口分别连接两个及两个以上的不同区域

边界路由器ABR会产生三类的LSA,该LSA只会在除了该路由器所处的区域传播

LSA报文

LS Type:取值3,代表Network Summary LSA。

Link State ID:路由的目的网络地址。

Advertising Router:生成LSA的Router ID。

Network Mask:路由的网络掩码。

metric:到目的地址的路由开销

多区域的防环机制

  1. OSPF要求所有的非骨干区域必须与Area0直接相连,区域间路由需经由Area0中转,禁止非骨干区域之间直接路由传递

  2. ABR不会将描述到达某个区域内网段路由的3类LSA 再注入回该区域

  3. ABR从非骨干区域收到的3类LSA不能用于区域间路由的计算

虚连接的作用

不建议使用这种方式,容易造成环路

OSPF要求骨干区域必须是连续的,但是并不要求物理上连续,可以使用虚连接使骨干区域在逻辑上连续

条件:

  • 在任意两个ABR上建立
  • 这两个ABR都有端口连接到一个相同的非骨干区域

外部路由及路由计算

五类LSA

ASBR(AS Boundary Router):自治系统边界路由器。只要一台OSPF设备引入了外部路由,它就成为了ASBR。

AS外部LSA (AS External LSA) 由ASBR产生,用于描述到达OSPF域外的路由

ASBR将外部路由信息以AS-external LSA(5类LSA)的形式在OSPF网络内泛洪

报文

  • LS Type:取值5,代表AS-external-LSA。

  • Link State ID:外部路由的目的网络地址。

  • Advertising Router:生成该LSA的Router ID。

  • Network Mask:网络掩码。

  • E :该外部路由所使用的度量值类型

    • 0:度量值类型为Metric-Type-1
    • 1:度量值类型为Metric-Type-2
  • metric:到目的网络的路由开销。

  • Forwarding Address(FA):到所通告的目的地址的 报文将被转发到这个地址

    • 当转发地址全为零的时候,则到达改外部网段的流量会被发往引入这条路由的ASBR
    • 当转发地址不为零的时候,则流量会发往这个转发地址
    • 可以在某些网络拓扑中避免他的次优路径

四类LSA

当ABR收到五类LSA之后产生,通告外部路径给本地区域路由

ASBR汇总LSA (ASBR Summary LSA) 由ABR产生,描述到ASBR的路由,通告给除ASBR所在区域的其他相关区域

OSPF外部路由的2种度量值类型

  • Metric-Type-1 可信程度高,AS外部开销与AS内部开销相当 AS内部开销+AS外部开销
  • Metric-Type-2 (缺省) 可信程度低,AS外部开销远大于AS内部开销 AS外部开销

优先级:区域内路由>区域间路由>外部路由(1类>2类)

在ABR路由器中,进入OSPF区域视图下,配置虚链路
[Huawei]ospf process ID
[Huawei-ospf-process ID]area Area ID
[Huawei-ospf-process ID-area-Area ID]vlink-peer neighbor’s router ID
虚连接要求两个ABR都有端口连接到一个相同的非骨干区域

进入OSPF进程视图,引入外部路由
[Huawei]ospf process ID
[Huawei-ospf-process ID] import-route { limit limit-number | { bgp [ permit-ibgp ] | direct | unr | rip [ process-id-rip ] | static | isis [ process-id-isis ] | ospf [ process-id-ospf ] } [ cost cost | type type | tag tag | route-policy route-policy-name ] * }

OSPF特殊区域及路由汇总

OSPF的区域可分为两种类型:

传输区域(Transit Area):除了承载本区域发起的流量和访问本区域的流量外,还承载了源IP和目的 IP都不属于本区域的流量,即“穿越型流量”

末端区域(Stub Area):只承载本区域发起的流量和访问本区域的流量

Stub区域

Stub区域的ABR不向Stub区域内传播它接收到的AS外部路由,Stub区域中路由器的LSDB、路由表规模都会大大减小。

为保证Stub区域能够到达AS外部,Stub区域的ABR将生成一条缺省路由(使用3类LSA描述)。

配置Stub区域时需要注意下列几点:

  • 骨干区域不能被配置为Stub区域。
  • Stub区域中的所有路由器都必须将该区域配置为Stub。
  • Stub区域内不能引入也不接收AS外部路由。
  • 虚连接不能穿越Stub区域。

Totally Stub区域

Totally Stub区域既不允许AS外部路由在本区域内传播,也不允许区域间路由在本区域内传播。

Totally Stub区域内的路由器通过本区域ABR下发的缺省路由(使用3类LSA描述)到达其他区域,以及AS外部

NSSA和Totally NSSA

NSSA区域能够引入外部路由,同时又不会学习来自OSPF网络其它区域引入的外部路由。

Totally NSSA与NSSA区域的配置区别在于前者在ABR上需要追加no-summary关键字。

为了让NSSA区域内的路由器能够通过骨干区域到达AS外部,NSSA区域的ABR会自动向该区域注入一条缺省路由,该路由采用7类LSA描述

路由汇总

将一组前缀相同的路由汇聚成一条路由,从而达到减小路由表规模以及优化设备资源利 用率的目的

在ABR执行路由汇总

OSPF路由汇总的类型

  • 在ABR执行路由汇总:对区域间的路由执行路由汇总
  • 在ASBR执行路由汇总:对引入的外部路由执行路由汇总

有几率造成环路------解决方案:生成unr路由 使用黑洞路由

在ASBR执行路由汇总

在ASBR配置路由汇总后,ASBR将对自己所引入的外部路由进行汇总。

NSSA区域的ASBR也可以对引入NSSA区域的外部路由进行汇总。

在NSSA区域中,ABR执行7类LSA转化成5类LSA动作,此时它也是ASBR。若配置路由汇总,则对由7类LSA转化成的5 类LSA进行汇总。

OSPF 高级特性

Silent-Interface

通过Silent-Interface的配置,增强OSPF的组网适应能力,减少系统资源的消耗

Silent-Interface有以下特性:

  1. Silent-Interface不会接收和发送OSPF报文。

  2. Silent-Interface的直连路由仍可以发布出去。

适用于连接业务侧的接口,需要将路由通过OSPF发布,但不需要与对端设备建立邻居关系

ospf process id
ospf视图下:silent interface enable

OSPF认证机制

OSPF支持报文认证功能,只有通过认证的OSPF报文才能被接收

路由器支持两种OSPF报文认证方式,当两种认证方式都存在时,优先使用接口认证方式:

  1. 区域认证方式:一个OSPF区域中所有的路由器在该区域下的认证模式和口令必须一致。

  2. ospf process id
    ospf视图中:area id
    区域视图中: authentication-mode md5/hmac-md5/simple cipher password
    
  3. 接口认证方式:相邻路由器直连接口下的认证模式和口令必须一致。

  4. interface gigabitethernet 0/0/1
    接口视图下: ospf authentication-mode md5/hmac-md5 Key ID cipher password
    

路由控制

设置等价路由

  1. 到达同一目的的路径有多条,且开销值相同则是等价路由
  2. 可以用来实现负载分担
设置进行负载分担的等价路由的最大数量
ospf process id
ospf视图下:maximum load-balancing 2

缺省路由通告

  • 由区域边界路由器(ABR)发布Type3 LSA,用来指导区域内路由器进行区域之间报文的转发。
  • 由自治系统边界路由器(ASBR)发布Type5 LSA或Type7 LSA,用来指导OSPF路由域内路由器进行域外报文的转发。
在普通区域通过default-route-advertise命令配置 由ASBR发布的Type5 LSA 在普通区域泛洪
在NSSA区域通过nssa [default-route-advertise]由ASBR发布 Type7 LSA 在NSSA区域泛洪
Stub区域和Totally Stub区域 以及 Totally NSSA区域:都是自动生成

将缺省路由通告到普通OSPF区域
[Huawei-ospf-1] default-route-advertise [ [ always | permit-calculate-other ] | cost cost | type type | routepolicy route-policy-name [ match-any ] ]

对发送的LSA进行过滤

对OSPF接口发送的LSA进行过滤:

  • 当两台路由器之间存在多条链路时,可以在某些链路上通过对发送的LSA进行过滤,减少不必要的重传,节省带宽资源。
  • 通过对OSPF接口出方向的LSA进行过滤可以不向邻居发送无用的LSA,从而减少邻居LSDB的大小,提高网络收敛速度。

对ABR Type3 LSA进行过滤:

  • 对区域内出、入方向ABR Type3 LSA(Summary LSA)设置过滤条件,只有通过过滤的LSA才能被发布和接收。
  • 通过对区域内的LSA进行过滤可以不向邻居发送无用的LSA,从而减少LSDB的大小,提高网络收敛速度。
配置对OSPF接口出方向的LSA进行过滤
[Huawei-GigabitEthernet0/0/1] ospf filter-lsa-out { all | { summary [ acl { acl-number | acl-name } ] | ase [ acl { acl-number | acl-name } ] | nssa [ acl { acl-number | acl-name } ] } }

配置对区域内出方向的Type3 LSA进行过滤:
[Huawei-ospf-1-area-0.0.0.1] filter { acl-number | acl-name acl-name | ip-prefix ip-prefix-name | routepolicy route-policy-name } export
配置对区域内入方向的Type3 LSA进行过滤:
[Huawei-ospf-1-area-0.0.0.1] filter { acl-number | acl-name acl-name | ip-prefix ip-prefix-name | routepolicy route-policy-name } import

设置LSDB中External LSA的最大数量

  • 当LSDB中的数据过大可能会导致OSPF Database Overflow(数据库超限)
  • 此时可以设置LSDB中External LSA的最大数量 一旦超过,自动开启Overflow
  • 在此种状态下不生成五类LSA,丢弃新生成的五类LSA,并不回复ack报文
设置OSPF的LSDB中External LSA的最大条目数
[Huawei-ospf-1] lsdb-overflow-limit number

OSPF网络中所有路由器都配置相同的上限值,只要路由器上外部路由的数量达到该上限,路由器就进入 Overflow状态,并同时启动Overflow状态定时器(默认超时时间为5秒),路由器在定时器超过5秒后自动 退出Overflow状态。

避免新产生的五类LSA因为数据库中的内容过多而不被记录

OSPF多进程

多用在VPN模式下

不同OSPF进程之间的路由交互相当于不同路由协议之间的路由交互,需要相互引入。

路由器的一个接口只能属于某一个OSPF进程。

转发地址

五类和七类会带上转发地址

到达所通告的目的地的数据包应该被转发到的地址,如果转发地址为0.0.0.0,那么数据包将被转发到始发ASBR上

  • 当ASBR引入外部路由时,若Type5 LSA中的FA字段为0,表示路由器认为到达目的网段的数据 包应该发往ASBR
  • 若Type5 LSA中的FA字段不为0,表示路由器认为到达目的网段的数据包 应该发往这个FA所标识的设备。

当以下条件全部满足时,FA字段才可以被设置为非0:

  • ASBR在其连接外部网络的接口(外部路由的出接口)上激活了OSPF;
  • 该接口没有被配置为Silent-Interface;
  • 该接口的OSPF网络类型为Broadcast或NBMA;
  • 该接口的IP地址在OSPF配置的network命令指定的网段范围内。

不使用转发地址可能会导致次优路径

OSPF快速收敛

PRC

当网络上路由发生变化的时候,只对发生变化的路由进行重新计算

PRC不计算节点路径,而是根据SPF算法算出来的最短路径树来更新路由

PRC计算

全网泛洪新增LSA

其他路由收到该LSA后会创建新的路由,继承原有访问节点以及下一跳

智能定时器

控制LSA的生成与接收

OSPF通过如下两个规定来避免网络连接或者路由频繁动荡引起的过多占用设备资源的情况:

  • 同一条LSA在1秒内不能再次生成,即LSA的更新时间间隔5秒
  • LSA被接收的时间间隔为1秒

在网络相对稳定、对路由收敛时间要求较高的组网环境中,可以通过智能定时器指定LSA的更新时间间隔 为0来取消LSA的更新时间间隔

使得拓扑或者路由的 变化可以立即通过LSA发更新时间间隔布到网络中, 或者立即被感知到,从而加快网络中路由的收敛速度

控制路由计算

当网络发生变化时,OSPF的LSDB会发生改变,需要重新计算最短路径

通过配置智能定时器,设置合理的SPF计算的间隔时间,可以避免占用过多的路由器内存和带宽资源

OSPF IP FRR

Fast reroute ( 快 速 重 路 由)是动态 IP FRR

利 用 LFA ( Loop-Free Alternates)算法预先计算出备份路径,保存在转发表中,以备在故障时将流量快速切换到备份链路上

以可提供备份链路的邻居为根节点,利用SPF算法计算出到目的节点的最短距离。然后,按照不等式计 算出开销最小且无环的备份链路

与BFD联动

OSPF与BFD联动就是将BFD和OSPF关联起来,一旦与邻居之间的链路出现故障,BFD对链路故 障的快速感应能够加快OSPF对于网络拓扑变化的响应

在进程下:bfd all-interfaces enable
配置BFD会话的参数值:bfd all-interfaces { min-rx-interval receive-interval | min-tx-interval  	transmitinterval | detect-multiplier multiplier-value | frr-binding }
在接口模式下:ospf bfd enable
在使能OSPF的特定接口下配置BFD会话的参数值:ospf bfd { min-rx-interval receive-interval | min-tx-interval transmitinterval | detect-multiplier multiplier-value | frr-binding }

利 用 LFA ( Loop-Free Alternates)算法预先计算出备份路径,保存在转发表中,以备在故障时将流量快速切换到备份链路上

以可提供备份链路的邻居为根节点,利用SPF算法计算出到目的节点的最短距离。然后,按照不等式计 算出开销最小且无环的备份链路

与BFD联动

OSPF与BFD联动就是将BFD和OSPF关联起来,一旦与邻居之间的链路出现故障,BFD对链路故 障的快速感应能够加快OSPF对于网络拓扑变化的响应

在进程下:bfd all-interfaces enable
配置BFD会话的参数值:bfd all-interfaces { min-rx-interval receive-interval | min-tx-interval  	transmitinterval | detect-multiplier multiplier-value | frr-binding }
在接口模式下:ospf bfd enable
在使能OSPF的特定接口下配置BFD会话的参数值:ospf bfd { min-rx-interval receive-interval | min-tx-interval transmitinterval | detect-multiplier multiplier-value | frr-binding }

相关推荐

  1. IP基础&ospf

    2024-06-09 02:12:04       12 阅读
  2. IP基础

    2024-06-09 02:12:04       23 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-06-09 02:12:04       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-06-09 02:12:04       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-06-09 02:12:04       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-06-09 02:12:04       18 阅读

热门阅读

  1. 微信小程序的tabbar怎么配置

    2024-06-09 02:12:04       10 阅读
  2. zeppelin(kylin的可视化界面安装)(从头到尾安装)

    2024-06-09 02:12:04       11 阅读
  3. Hash & String 学习笔记

    2024-06-09 02:12:04       9 阅读
  4. creating an HTML file with SQL*Plus

    2024-06-09 02:12:04       9 阅读
  5. CVPR2024论文解读大盘点

    2024-06-09 02:12:04       9 阅读
  6. 新日本语教程 上册语法汇总

    2024-06-09 02:12:04       8 阅读
  7. Electric dust cart introduction

    2024-06-09 02:12:04       9 阅读