华为交换机,配置OSPF与BFD联动示例

news2024/11/25 20:18:48

OSPF简介

定义

开放式最短路径优先OSPF(Open Shortest Path First)是IETF组织开发的一个基于链路状态的内部网关协议(Interior Gateway Protocol)。

  • OSPF把自治系统AS(Autonomous System)划分成逻辑意义上的一个或多个区域;

  • OSPF通过链路状态通告LSA(Link State Advertisement)的形式发布路由;

  • OSPF依靠在OSPF区域内各设备间交互OSPF报文来达到路由信息的统一;

  • OSPF报文封装在IP报文内,可以采用单播或组播的形式发送。

目前针对IPv4协议使用的是OSPF Version 2(RFC2328);针对IPv6协议使用OSPF Version 3(RFC2740)。如无特殊说明,本文中所指的OSPF均为OSPF Version 2。

优点

在OSPF出现前,RIP是网络上使用最广泛的IGP协议。但随着网络的快速成长和扩展,RIP的某些限制可能会导致其在大型网络中不再适用,OSPF则能够解决RIP所面临的诸多问题。如表1所示。

此外,OSPF还有以下优点:

  • OSPF可以采用组播形式收发报文,这样可以减少对未运行OSPF的路由器的影响。

  • OSPF支持无类型域间选路(CIDR)。

  • OSPF支持对等价路由进行负载分担。

  • OSPF支持报文验证

OSPF与其它协议联动

OSPF与BFD联动

双向转发检测BFD(Bidirectional Forwarding Detection)是一种用于检测转发引擎之间通信故障的检测机制。

BFD对两个系统间的、同一路径上的同一种数据协议的连通性进行检测,这条路径可以是物理链路或逻辑链路,包括隧道。

OSPF与BFD联动就是将BFD和OSPF协议关联起来,将BFD对链路故障的快速感应通知OSPF协议,从而加快OSPF协议对于网络拓扑变化的响应。

网络上的链路故障或拓扑变化都会导致设备重新进行路由计算,所以缩短路由协议的收敛时间对于提高网络的性能是非常重要的。

由于链路故障是无法完全避免的,因此,加快故障感知速度并将故障快速通告给路由协议是一种可行的方案。BFD和OSPF相关联,一旦与邻居之间的链路出现故障,BFD的快速性能够加快OSPF的收敛速度。

OSPF与BFD联动的原理如图1所示。

  1. SwitchA、SwitchB、SwitchC之间建立OSPF邻居关系。

  2. 邻居状态到达Full状态时通知BFD建立BFD会话。

  3. SwitchA到SwitchB的路由出接口为GE0/0/2,当这两台设备间的链路出现故障后,BFD首先感知到并通知SwitchA。

  4. SwitchA处理邻居Down事件,重新进行路由计算,新的路由出接口为GE0/0/1,经过SwitchC到达SwitchB。

OSPF与BGP联动

当有新的设备加入到网络中,或者设备重启时,可能会出现在BGP收敛期间内网络流量丢失的现象。这是由于IGP收敛速度比BGP快而造成的。

通过使能OSPF与BGP联动特性可以解决这个问题。

在存在备份链路的情况下,BGP在链路回切时,由于路由收敛速度滞后于OSPF路由收敛速度,从而造成流量丢失。

如图2所示,四台设备SwitchA、SwitchB、SwitchC、SwitchD之间运行OSPF协议,并建立IBGP连接。SwitchC为SwitchB的备份设备。当网络环境稳定时,BGP与OSPF在设备上是完全收敛的。

正常情况下,从SwitchA到10.3.1.0/30的流量会途经SwitchB。当SwitchB发生故障后,流量切换到SwitchC。SwitchB故障恢复以后,流量回切到SwitchB,此时会有流量丢失。

这是因为,在流量回切到SwitchB的过程中,IGP收敛速度比BGP快,因此OSPF先收敛,BGP还没有完成收敛,导致SwitchB不知如何到达10.3.1.0/30。

这样,当从SwitchA去往10.3.1.0/30的流量被发送给SwitchB时,由于没有必要的路由选择信息,这些流量就会被丢弃。

使能了OSPF与BGP联动特性的设备会在设定的联动时间内保持为Stub路由器,也就是说,该设备发布的LSA中的链路度量值为最大值(65535),从而告知其它OSPF设备不要使用这个路由器来转发数据。

图2中,在RoutetB上使能BGP联动,这样,在BGP收敛完成前,SwitchA不把流量转发到SwitchB上,而是继续使用备份设备SwitchC转发流量,直到SwitchB上的BGP路由完成收敛。

OSPF-LDP联动

在存在主备链路的网络中,当主链路故障恢复后,流量会从备份链路切换到主链路。

由于IGP的收敛在LDP会话建立之前完成,导致旧的LSP已经删除,新的LSP还没有建立,因此LSP流量中断。

如图3所示,PE1-P1-P2-P3-PE2为主链路,PE1-P1-P4-P3-PE2为备份链路。

主链路发生故障,流量从主链路切换到备份链路。主链路故障恢复,流量从备份链路回切到主链路,此时流量会有较长时间的中断。

通过在P1和P2上配置标签分发协议LDP(Label Distribution Protocol)和IGP同步功能,能够缩短流量从备份链路切换到主链路时的中断时间。

LDP和IGP同步的基本原理是:通过抑制IGP建立邻居关系来推迟路由的回切,直至LDP完成收敛。也就是在主链路的LSP建立之前,先保留备份链路,让流量继续从备份链路转发,直至主链路的LSP建立成功,再删除备份链路。

LDP和IGP同步包括三个定时器:

  • Hold-down

  • Hold-max-cost

  • Delay

当主链路故障恢复后,路由器进行以下操作:

  1. 启动Hold-down定时器,IGP接口先不建立IGP邻居,等待LDP会话的建立。

  2. Hold-down定时器超时后,启动Hold-max-cost定时器。IGP在本地路由器的链路状态通告中,向主链路通告接口链路的最大metric值。

  3. 故障链路的LDP会话重新建立以后,启动Delay定时器等待LSP的建立。

  4. Delay定时器超时以后,无论IGP的状态如何,LDP都通知IGP同步流程结束。

实验需求

如中所示,S1、S2和S3之间运行OSPF,S1和S2之间的交换机仅作透传功能(这里移除了该交换机,如要添加则需要关闭STP功能)。现在需要S和S2能快速感应它们之间的链路状态,当链路S1-S2发生故障时,业务能快速切换到备份链路S1-S3-S2上。

 

注:请确保该场景下互联接口的STP处于未使能状态。因为在使能STP的环形网络中,如果用交换机的VLANIF接口构建三层网络,会导致某个端口被阻塞,从而导致三层业务不能正常运行。 

实验思路

采用如下思路配置OSPF与BFD联动:

  1. 在各交换机上配置OSPF基本功能,实现整个OSPF网络的互通。

  2. 在各交换机上配置OSPF与BFD联动功能,实现当SwitchA和SwitchB之间的链路出现故障时快速的切换到备份链路。

实验步骤
  1. 配置各接口所属的VLAN

    # 配置S1。S2和S3的配置与S1类似。

<Huawei>system-view 
Enter system view, return user view with Ctrl+Z.	
[Huawei]sysname S1
	
[S1]undo info-center enable 
Info: Information center is disabled.
	
[S1]vlan batch 10 30
Info: This operation may take a few seconds. Please wait for a moment...done.
	
[S1]interface GigabitEthernet 0/0/1	
[S1-GigabitEthernet0/0/1]port link-type trunk 	
[S1-GigabitEthernet0/0/1]port trunk allow-pass vlan 10

[S1-GigabitEthernet0/0/1]interface GigabitEthernet 0/0/2	
[S1-GigabitEthernet0/0/2]port link-type trunk 	
[S1-GigabitEthernet0/0/2]port trunk allow-pass vlan 30	
[S1-GigabitEthernet0/0/2]quit 

    2. 配置各VLANIF接口的IP地址

        # 配置S1。S2和S3的配置与S1类似。

[S1]interface Vlanif 10	
[S1-Vlanif10]ip address 10.1.1.1 24

[S1-Vlanif10]interface Vlanif 30	
[S1-Vlanif30]ip address 10.3.3.1 24	
[S1-Vlanif30]quit 

    3. 配置OSPF基本功能

         # 配置S1。

[S1]ospf 1 router-id 10.10.10.1	
[S1-ospf-1]area 0
[S1-ospf-1-area-0.0.0.0]network 10.1.1.0 0.0.0.255	
[S1-ospf-1-area-0.0.0.0]network 10.3.3.0 0.0.0.255	
[S1-ospf-1-area-0.0.0.0]quit 	
[S1-ospf-1]quit 

        # 配置S2。

[S2]ospf 1 router-id 10.10.10.2	
[S2-ospf-1]area 0	
[S2-ospf-1-area-0.0.0.0]network 10.2.2.0 0.0.0.255	
[S2-ospf-1-area-0.0.0.0]network 10.3.3.0 0.0.0.255	
[S2-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255	
[S2-ospf-1-area-0.0.0.0]quit 	
[S2-ospf-1]quit 

       # 配置S3。

[S3]ospf 1 router-id 10.10.10.3	
[S3-ospf-1]area 0	 	
[S3-ospf-1-area-0.0.0.0]network 10.1.1.0 0.0.0.255	
[S3-ospf-1-area-0.0.0.0]network 10.2.2.0 0.0.0.255	
[S3-ospf-1-area-0.0.0.0]quit	
[S3-ospf-1]quit 

       # 配置完成后,执行命令display ospf peer,可以看到S1,S2和S3之间互相建立了邻接关系。以S1的显示结果为例。

      # 查看S1的OSPF路由表的信息,可以看到去往S2和S3的路由表项。而去往目的网段172.16.1.0/24的路由下一跳地址为10.3.3.2,说明流量在链路S1→S2上传输。

  4. 配置OSPF与BFD联动

     # 在S1上配置OSPF与BFD联动功能。

[S1]bfd 	
[S1-bfd]quit 	
[S1]ospf 1	
[S1-ospf-1]bfd all-interfaces enable 	
[S1-ospf-1]quit 

    #在S2上配置OSPF与BFD联动功能。

[S2]bfd 	
[S2-bfd]quit 
	
[S2]ospf 1
[S2-ospf-1]bfd all-interfaces enable 	
[S2-ospf-1]quit 

    # 在S3上配置OSPF与BFD联动功能。

[S3]bfd 	
[S3-bfd]quit 
	
[S3]ospf 1	
[S3-ospf-1]bfd all-interfaces enable 	
[S3-ospf-1]quit 

    # 配置完成后,在S1或S2、S3上执行display ospf bfd session all命令,可以看到BFD会话的状态为Up。以S1的显示为例。

5. 检查配置结果

    # 对S2的GE0/0/1接口执行shutdown命令,模拟链路故障。

[S2]interface GigabitEthernet 0/0/1	
[S2-GigabitEthernet0/0/1]shutdown 	
[S2-GigabitEthernet0/0/1]quit

   # 在S1上查看OSPF路由表。

    可以看出在链路S1-S2出现故障后,备份链路S1-S3-S2开始生效,即去往目的网段172.16.1.0/24的路由下一跳地址变成了10.1.1.2。

S2 配置

<Huawei>system-view 
Enter system view, return user view with Ctrl+Z.	
[Huawei]sysname S2
	
[S2]undo info-center enable 
Info: Information center is disabled.	
	
[S2]vlan batch 20 30 40
Info: This operation may take a few seconds. Please wait for a moment...done.
	
[S2]interface GigabitEthernet 0/0/1	
[S2-GigabitEthernet0/0/1]port link-type trunk 	
[S2-GigabitEthernet0/0/1]port trunk allow-pass vlan 30

[S2-GigabitEthernet0/0/1]interface GigabitEthernet 0/0/2r	
[S2-GigabitEthernet0/0/2]port link-type trunk 	
[S2-GigabitEthernet0/0/2]port trunk allow-pass vlan 20

[S2-GigabitEthernet0/0/2]interface GigabitEthernet 0/0/3	
[S2-GigabitEthernet0/0/3]port link-type trunk 	
[S2-GigabitEthernet0/0/3]port trunk allow-pass vlan 40	
[S2-GigabitEthernet0/0/3]quit 
	
[S2]interface Vlanif 20	
[S2-Vlanif20]ip address 10.2.2.2 24

[S2-Vlanif20]interface Vlanif 30	
[S2-Vlanif30]ip address 10.3.3.2 24

[S2-Vlanif30]interface Vlanif 40	
[S2-Vlanif40]ip address 172.16.1.1 24	
[S2-Vlanif40]quit 
	
[S2]ospf 1 router-id 10.10.10.2	
[S2-ospf-1]area 0	
[S2-ospf-1-area-0.0.0.0]network 10.2.2.0 0.0.0.255	
[S2-ospf-1-area-0.0.0.0]network 10.3.3.0 0.0.0.255	
[S2-ospf-1-area-0.0.0.0]network 172.16.1.0 0.0.0.255	
[S2-ospf-1-area-0.0.0.0]quit 	
[S2-ospf-1]quit 

S3 配置

<Huawei>system-view 
Enter system view, return user view with Ctrl+Z.	
[Huawei]sysname S3
	
[S3]undo info-center enable 
Info: Information center is disabled.
	
[S3]interface GigabitEthernet 0/0/1	
[S3-GigabitEthernet0/0/1]port link-type trunk 	
[S3-GigabitEthernet0/0/1]port trunk allow-pass vlan 10

[S3-GigabitEthernet0/0/1]interface GigabitEthernet 0/0/2	
[S3-GigabitEthernet0/0/2]port link-type trunk 	
[S3-GigabitEthernet0/0/2]port trunk allow-pass vlan 20
[S3-GigabitEthernet0/0/2]quit
		
[S3]vlan batch 10 20
Info: This operation may take a few seconds. Please wait for a moment...done.

[S3]interface Vlanif 10	
[S3-Vlanif10]ip address 10.1.1.2 24

[S3-Vlanif10]interface Vlanif 20	
[S3-Vlanif20]ip address 10.2.2.1 24	
[S3-Vlanif20]quit 
	
[S3]ospf 1 router-id 10.10.10.3	
[S3-ospf-1]area 0 	
[S3-ospf-1-area-0.0.0.0]network 10.1.1.0 0.0.0.255	
[S3-ospf-1-area-0.0.0.0]network 10.2.2.0 0.0.0.255	
[S3-ospf-1-area-0.0.0.0]quit	
[S3-ospf-1]quit 

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

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

相关文章

vue3引入高德地图报错Uncaught Error: Invalid Object: LngLat(NaN, NaN

问题&#xff1a; 原因&#xff1a;容器高度未设置 解决&#xff1a; 地图容器添加高度。 <style scoped> #map {width: 100%;height: 800px; } </style>

Agilent安捷伦33220A函数信号发生器

是德科技33220A(安捷伦)函数发生器为函数和波形提供了不折不扣的性能。有11个标准波形加上脉冲和任意波形&#xff0c;它是同类产品中频率最稳定和失真最低的函数发生器之一。 前面板允许用一两个键访问所有主要功能。旋钮或数字键盘可用于调整频率、振幅、偏移和其他参数。内…

代码随想录第三十四天(一刷C语言)|不同路径不同路径II

创作目的&#xff1a;为了方便自己后续复习重点&#xff0c;以及养成写博客的习惯。 一、不同路径 思路&#xff1a;参考carl文档 机器人每次只能向下或者向右移动一步&#xff0c;机器人走过的路径可以抽象为一棵二叉树&#xff0c;叶子节点就是终点。 1、确定dp数组&#…

高可用接入层技术演化及集群概述

集群概述 集群的介绍及优势 集群&#xff1a;将多台服务器通过硬件或软件的方式组合起来&#xff0c;完成特定的任务&#xff0c;而这些服务器对外表现为一个整体。集群的优势 高可靠性&#xff1a;利用集群管理软件&#xff0c;当主服务器故障时&#xff0c;备份服务器能够自…

为什么MCU在ADC采样时IO口有毛刺?

大家在使用MCU内部ADC进行信号采样一个静态电压时&#xff0c;可能在IO口上看到这样的波形。这个时候大家一般会认识是信号源有问题&#xff0c;但仔细观察会发现这个毛刺的频率是和ADC触发频率一样的。 那么为什么MCU在ADC采样时IO口会出现毛刺呢&#xff1f;这个毛刺对结果有…

APT80DQ60BG-ASEMI大电流二极管APT80DQ60BG

编辑&#xff1a;ll APT80DQ60BG-ASEMI大电流二极管APT80DQ60BG 型号&#xff1a;APT80DQ60BG 品牌&#xff1a;ASEMI 封装&#xff1a;TO-247 特性&#xff1a;插件、快恢复二极管 最大平均正向电流&#xff1a;80A 最大重复峰值反向电压&#xff1a;600V 恢复时间&am…

使用VBA快速统计词组词频(多单词组合)(2/2)

实例需求&#xff1a;产品清单如A列所示&#xff0c;现在如下统计多单词组合词组词频。 在上一篇博客中《使用VBA快速统计词组词频(多单词组合)&#xff08;1/2&#xff09;》讲解了如何实现双词的词频统计。 本文将讲解如何实现3词的词频统计&#xff0c;掌握实现方法之后&a…

从人的安全价值观看企业的安全发展

文章目录 每日一句正能量前言感受之一&#xff0c;安全价值观是体现个人人生价值的最高境界&#xff0c;是人与企业和谐发展的基本保障&#xff0c;也是企业安全发展的理论导向。感受之二&#xff0c;安全价值观是企业承担社会责任的主要表现&#xff0c;是体现企业价值的根基&…

容器技术:从虚拟机到轻量级容器的革命

一、引言 首先&#xff0c;什么是容器&#xff1f; 容器是一种沙盒技术&#xff0c;主要目的是为了将应用运行在其中&#xff0c;与外界隔离&#xff1b;及方便这个沙盒可以被转移到其它宿主机器。本质上&#xff0c;它是一个特殊的进程。通过名称空间&#xff08;Namespace&a…

Axure RP - 交互设计的强大引擎

目录 前言 1. 交互设计&#xff1a;连接用户与产品的纽带 2. 情景设计&#xff1a;预测用户行为的未来 3. 演示和共享&#xff1a;让设计活起来 我的其他博客 前言 在数字化时代&#xff0c;用户体验的重要性日益突显&#xff0c;而交互设计成为塑造产品与用户互动的关键。…

php-使用wangeditor实现富文本-遇见问题

一、在 PowerShell 中使用 npm install 命令时&#xff0c;命令行解析器可能会将 符号解释为特殊字符&#xff0c;导致出现错误。 报错 解决 方法一&#xff1a;使用反引号&#xff08;&#xff09;将包名括起来&#xff0c;以避免特殊字符的解析。修改命令为&#xff1a; …

对管理的一些思考

记得21年的时候&#xff0c;学习过《初探技术管理》&#xff0c;现在看来仍然是很有价值。 怎么判断自己是否有基础走上管理岗&#xff0c;我觉得最最基础的一点&#xff0c;是判断自己是否成为团队的主程。主程一般意味着对目前的系统有广泛、深入的了解&#xff0c;能够担任中…

VMWare Tools 共享目录设置

vmware tools安装完成后&#xff0c;进入到工项目录设置 点击虚拟机设置->硬件->CD/DVD(SATA) &#xff0c;勾选使用物理驱动器&#xff0c;勾选自动检测 1、windows 操作系统设置 设置共享文件夹时&#xff0c;需要勾选 “ 在windows客户机中映射为网络驱动器”。 设置…

From Human Attention to Computational Attention (1)

”is the taking possession by the mind, in clear and vivid form, of one out of what seem several simultaneously possible objects or trains of thought. It implies withdrawal from some things in order to deal effectively with others“&#xff0c;William Jame…

Python自动化测试之线上流量回放:分析、存储与本地化支持!

在自动化测试中&#xff0c;线上流量回放是一项关键技术&#xff0c;它可以模拟真实用户请求并重现线上场景&#xff0c;验证系统的性能和稳定性。本文将介绍Python自动化测试中的线上流量回放技术&#xff0c;并提供实战代码&#xff0c;帮助你了解日志分割解析、存储至本地My…

C# URL参数编码

代码 string s "lw123abc测试信息&#xff01;#&#xffe5;%……&*&#xff08;&#xff09;——";Console.WriteLine("原数据:\t\t" s);String s2 Uri.EscapeDataString(s);//Uri.EscapeDataString() 编码Console.WriteLine("Hexdata:\t&qu…

colmap三维重建核心逻辑梳理

colmap三维重建核心逻辑梳理 1. 算法流程束流2. 初始化3. 重建主流程 1. 算法流程束流 重建核心逻辑见 incremental_mapper.cc 中 IncrementMapperController 中 Reconstruct 初始化变量和对象判断是否有初始重建模型&#xff0c;若有&#xff0c;则获取初始重建模型数量&am…

Python Pandas 如何增加/插入一列数据(第5讲)

Python Pandas 如何增加/插入一列数据(第5讲)         🍹博主 侯小啾 感谢您的支持与信赖。☀️ 🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹꧔ꦿ🌹…

Python PIP安装pycorrector、kemln报错

本来想装个pycorrector用一下&#xff0c;结果在安装其依赖包kemln的时候疯狂报错&#xff0c;报错关键词包括但不限于Bash、Cmake&#xff0c;C啥的&#xff0c;搜了很多文章&#xff0c;终于摸索到了安装的办法。 1、安装bash 去官网https://gitforwindows.org/下载bash&am…

如何用idm下载迅雷 2024最新详细解析

有许多小伙伴日常习惯用迅雷处理或者下载文件&#xff0c;对于普通用户&#xff0c;由于迅雷平台的限速&#xff0c;下载速度仅有几十kb。此外&#xff0c;还有一些小伙伴安装idm后软件界面是英文&#xff0c;那么如何用idm下载迅雷&#xff0c;idm怎么设置中文呢&#xff1f;今…