1.0.0 IGP高级特性简要介绍(OSPF-下篇)

二、OSPF_精细的路由控制

1.OSPF数据库上限

简介

​ OSPF技术要求同一个区域内的路由器保存着相同的LSDB信息。

​ 但随着网络上路由数量不断增加,一些路由器由于系统资源有限,不能再承载如此多的路由信息,这种状态就被称为数据库超限(OSPF Database Overflow)。

​ 对于路由信息不断增加导致路由器系统资源耗尽而失效的问题,可以通过配置Stub或NSSA区域来解决,但Stub或NSSA区域的方案不能解决动态路由增长导致的数据库超限问题。为了解决数据库超限引发的问题,通过设置LSDB中External LSA的最大条目数,可以动态限制链路数据库的规模。

原理

​ 1、当接收到的"外部路由"达到上限之后(不包含缺省外部路由),删除自己产生的外部路由,同时进入Overflow状态。

​ 2、进入该状态时,不再学习外部路由,直到Overflow状态定时器结束。

​ 3、定时器结束之后,如果外部路由数量仍然超过上限,将重新进入Overflow状态。

​ 4、直到外部路由数量恢复到上限内,才结束Overflow状态。

配置命令
复制代码
# 设置LSDB中External LSA的最大条目数为400000。
ospf 1
  lsdb-overflow-limit 400000

2.默认路由的宣告

​ IGP路由中产生默认路由的方式除了引入之后,还可以通过default-route-advertise命令进行自主生成一条默认路由加入到IGP路由表中。

​ 但对于这个命令的使用有挺多的讲究,其中以下三条命令使用较多:

default-route-advertise

​ 1、前提条件是,本设备必须拥有一条不是OSPF学习到的缺省路由

default-route-advertise always

​ 1、配置该命令之后,无论是否有缺省路由,都会下发OSPF缺省路由。

​ 2、使用之后,将无视其它设备的缺省路由。如果本设备上不存在缺省路由那将会可能出现丢包情况。

如:设备开启always之后,本机并没有真正的缺省路由,只有明细路由。

当收到一条设备末知的目的路由时,将由于路由表中没有真正的缺省路由而导致丢包。

default-route-advertise permit-calculate-other

摘取华为手册中对该命令的解释:

本机存在激活的 非本OSPF进程缺省路由,则设备不再计算来自其他设备的缺省路由。

本机不存在激活的 非本OSPF进程缺省路由,则设备仍然计算来自于其他设备的缺省路由。

​ 1、前提条件是,本设备要学习到一条缺省路由,且这条路由不是得是使用该命令的OSPF中的,才可产生缺省路由。

举例:

本设备只有一条缺省路由,且是从OSPF进程1中学到的。如果在OSPF进程1中使用该命令,将没有任何效果。

本设备存在一条静态缺省路由,我于OSPF进程1中使用该命令可以发布缺省路由。

本设备从OSPF进程2中学习到一条缺省路由,我于OSPF进程1中使用该命令,将可以在进程1中发布缺省路由。

​ 2、发布缺省路由的同时,仍允许计算其他设备发布的缺省路由。这是前两者不具备的。

前两者只会接收到LSDB表中,不会进行计算。

而使用该命令之后,可以在路由表中看到其它设备发布的缺省路由,但属于非活动状态(Inactive)

图文举例理解

为了方便,拓扑画的可能有点离谱,注重现象即可。

以下主要针对default-route-advertise permit-calculate-other命令进行展开。

背景:
  • AR1创建了静态路由并于OSPF中使用default-route-advertise发布缺省路由。
  • AR2创建了静态路由并于OSPF中使用default-route-advertise permit-calculate-other发布缺省路由。
现象1:
  • 如下图,AR1/2均发布了缺省路由,同时双方也能学习到对方的缺省路由。
  • 如下图,但只能AR2能够去计算对方的缺省路由。
  • 此时AR3上所接收和计算的缺省路由情况
现象2:
  • 如果将AR2中的静态路由删除,只使用default-route-advertise permit-calculate-other命令的话?
  • 如图,AR2删除静态缺省路由之后,将使用AR1发送的缺省路由。
  • 如图,此时AR3上只有一条AR1缺省路由。因为AR2的OSPF进程使用了permit-calculate-other命令,同时学习到的缺省路由也是从这个OSPF进程中学习到的,故AR2无法生成缺省路由。
  • 如果此时AR3能够从其它地方学习到缺省路由,那AR2才能够继续发布缺省路由。
  • 如图,AR2从AR4上学习到缺省路由,那么就能够在AR3上继续看到两条缺省路由。


总结

​ 回到最开始,这三条命令都是生成缺省路由,那它们有哪些应用场景呢?

关于always的灵活应用场景:

应用于多路由协议的设备上,实现不相互引入路由的情况下也能实现网络互通。

如图:

  • AR2作为AR1的OSPF邻居,AR3的BGP邻居,需要实现AR1、AR3两者互访。
  • 由于AR1设备比较老旧,要求不能直接将AR3的路由引入到AR1中。
  • 已知AR2设备上有两者的路由,故可以用always的方式在OSPF进程中生成缺省路由。使得AR1流量到达AR2后再进行流量的中继。
  • 于AR2设备的OSPF进程添加default-route-advertise always命令。
  • 于AR2设备的BGP进程中引入OSPF路由。
  • 此时AR1、AR2、AR3上的关键路由情况 :

    AR1:
    0.0.0.0/0 O_ASE 150 1 D 10.1.12.2 GigabitEthernet0/0/1

    AR2:
    172.16.1.1/32 OSPF 10 1 D 10.1.12.1 GigabitEthernet0/0/0
    192.168.1.1/32 IBGP 255 0 RD 10.1.23.3 GigabitEthernet0/0/1
    192.168.2.1/32 IBGP 255 0 RD 10.1.23.3 GigabitEthernet0/0/1

    AR3:
    172.16.1.1/32 IBGP 255 1 RD 10.1.23.2 GigabitEthernet0/0/0

关于permit-calculate-other的灵活应用场景:

实验场景如下图,内部R1、R2、R4运行OSPF,R3作为外部路由器,R1作为默认出口向内部发送默认路由。

实现在不调整链路OSPF开销的情况下,实现主备默认路由发布以及冗余。

  • 1、正常配置好OSPF之后,R1添加默认路由指向R3,R2添加默认路由指向R3但路由优先级设置为151防止比OSPF开销大从而影响正常流量转发。

    R1
    [R1]ip route-static 0.0.0.0 0 10.1.13.3
    [R1]ospf 1
    [R1-ospf-1]default-route-advertise permit-calculate-other

    R2
    [R2]ip route-static 0.0.0.0 0 10.1.23.3 preference 151
    [R2]ospf 1
    [R2-ospf-1]default-route-advertise permit-calculate-other

  • 2、此时可以在R2上看到默认路由优先走R1,同时R4上则是只能收到1条默认路由。

    R2之所以只有R1的默认路由,因为R2自身的静态默认路由优先级为151。

复制代码
因为R2上唯一生效的默认路由是从配置了permit-calculate-other命令的进程下学习到的。
故R2不会生成默认路由向其它OSPF邻居泛洪,因此R4只能学习到R1这一条默认路由。

【R1出口正常情况下的流量转发路径】

  • 当R1主出口故障之后,R2从OSPF学习到的默认路由消失,静态默认路由则生效,同时会向OSPF邻居泛洪默认路由。

    R1上关闭出接口模拟接口故障:
    [R1]int g0/0/0
    [R1-GigabitEthernet0/0/0]shutdown

【R1默认路由指向R2备用出口】

【R2默认路由浮动上来成为主默认路由】

【此时R3默认路由自动切换至R2备用出口】

【R1出口故障后的流量转发路径】

3.OSPF路由控制

参考该篇文章,已涵盖其中:路由 OSPF 优化(FA地址、路由汇总、路由过滤、区域认证、接口认证)

相关推荐
GG-_-Bond5 小时前
基于dpdk实现udp接收数据
linux·网络·udp
平凡シンプル5 小时前
TCP UDP 网络通信插件 SL-Uniplugin-Tcp-Udp
网络·学习·uniapp·记录
小程序设计5 小时前
Easy-Shop商城小程序漏洞挖掘与防护研究
网络·安全
万联WANFLOW6 小时前
TikTok Shop上线“Sell Across EU”,欧洲社交电商迎来生态重构
网络·业界资讯
liulilittle7 小时前
为什么采用全局管理缓存及状态:麻将客户端状态管理
服务器·网络·游戏·客户端·异步·mahjong·麻将
酣大智7 小时前
OSPF引入的直连路由在 ospf 路由表中看不到
网络·ospf
2601_966377137 小时前
等保2.0最新标准新增安全数据处理要求后怎么办?等保一体机数据安全模块来助力
运维·网络·安全·等保一体机
BullSmall7 小时前
window系统上报Cannot assign requested address
网络·功能测试
杨云龙UP7 小时前
MySQL Host is blocked because of many connection errors 导致 JDBC 连接失败排查与解决
linux·运维·网络·数据库·sql·mysql·登录失败
执念WRD7 小时前
Fastjson 1.2.83 RCE 漏洞利用
网络·安全·网络安全