结论:通过BFD可以联动静态路由,从而监控整个网络上的网络情况,当出现故障时及时进行切换。

下面的例子,就是通过BFD监控上面的这个往返路由,当中间网络出现故障时,两端全部切换到下面的第二条路由进行通信。

如果不结合BFD的话,每个设备只能根据直连端口是否发生down来决定是否切换,而对于中间网络发生故障无法感知,从而导致流量不会发生切换,影响客户业务。

1、组网图:

2、组网说明:

(1)R1 和 专线网关之间有两条静态路由构成等价路由(实际上路由器只会从上面的一条发送流量,不走下面的,这个是逐流转发的特点)。其中,上面的一条,通过BFD进行跟踪,一旦发生故障时,链路切换到下面那条路由(下一跳是40.0.0.2)

(2)

3、设备主要配置:

(1)R1的主要配置

  

#
bfd RtoCE bind peer-ip 30.0.0.2 source-ip 10.0.0.1 auto
commit
#
ip route-static 20.0.0.0 255.255.255.0 10.0.0.2
ip route-static 30.0.0.0 255.255.255.0 10.0.0.2 
ip route-static 60.0.0.0 255.255.255.0 40.0.0.2
ip route-static 192.168.10.0 255.255.255.0 10.0.0.2 track bfd-session RtoCE
ip route-static 192.168.10.0 255.255.255.0 40.0.0.2
#

(2)PE1234,全部是静态路由,配置上对应的ip地址即可,无动态路由,也没有配置BFD。

(3)专线网关的配置:

#
bfd CEtoR bind peer-ip 10.0.0.1 source-ip 30.0.0.2 auto
#
ip route-static 10.0.0.0 255.255.255.0 30.0.0.1
ip route-static 40.0.0.0 255.255.255.0 60.0.0.1
ip route-static 192.168.0.0 255.255.255.0 30.0.0.1 track bfd-session CEtoR
ip route-static 192.168.0.0 255.255.255.0 60.0.0.1
ip route-static 192.168.10.0 255.255.255.0 169.254.195.201
#

4、测试结果。

(1)从PC1 ping PC2 , 可以持续ping通。

(2)从抓包信息看,在R上发送流量,是从10.0.0.1发送,即只会从等价路由的第一个端口发送。

(3)观察bfd会话,处于up状态。

(4)模拟中间链路故障,在PE3上shutdown 端口

[Huawei-GigabitEthernet0/0/2]shutdown
[Huawei-GigabitEthernet0/0/2]

(5)再观察BFD会话,显示为down.

(6)查看此时流量情况,还是正常可以ping通

(7)抓包结果显示,此时R上的流量全部从第二条路由发送。

配置注意点:

1、不能把bfd的会话监控自身的静态路由,这样会导致由于bfd会话down而删除这条静态路由,从而在中间链路恢复正常时,bfd会话和静态路由也不会生效。

从而导致整个系统感知不到链路已从故障中恢复。

就是下面红色字体的配置是错误。

专线网关:

#
bfd CEtoR bind peer-ip 10.0.0.1 source-ip 30.0.0.2 auto
#
ip route-static 10.0.0.0 255.255.255.0 30.0.0.1   track bfd-session CEtoR            ---> 不能加这条配置。
ip route-static 40.0.0.0 255.255.255.0 60.0.0.1
ip route-static 192.168.0.0 255.255.255.0 30.0.0.1 track bfd-session CEtoR
ip route-static 192.168.0.0 255.255.255.0 60.0.0.1
ip route-static 192.168.10.0 255.255.255.0 169.254.195.201
#

R路由器上:

#
bfd RtoCE bind peer-ip 30.0.0.2 source-ip 10.0.0.1 auto
commit
#
ip route-static 20.0.0.0 255.255.255.0 10.0.0.2
ip route-static 30.0.0.0 255.255.255.0 10.0.0.2    track bfd-session RtoCE        ---> 不能加这条配置。
ip route-static 60.0.0.0 255.255.255.0 40.0.0.2
ip route-static 192.168.10.0 255.255.255.0 10.0.0.2 track bfd-session RtoCE
ip route-static 192.168.10.0 255.255.255.0 40.0.0.2
#

实测结果显示,一旦有上述配置,从专线网关上就无法获得R路由器的10.0.0.0网段路由,同理在R路由器上也无法查看到专线网关的30.0.0.2的路由。

<HUAWEI>dis ip routing-table 10.0.0.1   ---> 即使在中间链路故障恢复后,这个命令输入后也没有内容。当把错误的bfd跟踪会话删除后,这里就可以看到正常的下一跳,bfd会话也可以正常建立。

使用bfd监控静态路由,达到网络故障及时切换功能。的更多相关文章

  1. 华为HCIA认证零基础入门-网络工程师必备之什么是静态路由?如何配置静态路由?

    一.静态路由功能介绍:静态路由就是手工配置的路由,使得数据包能够按照预定的路径传送到指定的目标网络. 当不能通过动态路由协议学到一些目标网络的路由时,配置静态路由就会显得十分重要. 二.静态路由应用场 ...

  2. H3C路由器配置——静态路由

    一.网络畅通条件及排错思路 1.网络畅通的条件 网络畅通的条件:数据包能去能回,也是我们排除网络故障的理论依据. 2.网络不畅通示列 ①.目标主机不可达 原因分析:可能是数据包没有到达目的地,在中途就 ...

  3. 华为eNSP路由交换-静态路由

    静态路由 一. 静态路由及默认路由基本配置 1.1实验内容 在由三台路由器所组成的简单网络中,R1和R3各连着一台PC,现在要求能够实现PC-1和PC-2之间的通信.本实验将通过配置基本的静态路由和默 ...

  4. 路由器基本配置实验,静态路由和动态RIP路由

    实验涉及命令以及知识补充 连线 PC和交换机FastEtherNet接口 交换机和路由器FastEtherNet接口 路由器和路由器Serial接口 serial是串行口,一般用于连接设备,不能连接电 ...

  5. 配置Linux实现静态路由

    配置Linux实现静态路由 背景和原理 路由器的功能是实现一个网段到另一个网段之间的通信,路由分为静态路由.动态路由. 默认路由和直连路由.静态路由是手工指定的,使用静态路由的好处是网络安全保密性高. ...

  6. HCNA Routing&Switching之静态路由

    前文我们聊到了路由的相关概念和路由基础方面的话题,回顾请参考https://www.cnblogs.com/qiuhom-1874/p/14947897.html:今天我们聊聊静态路由相关话题: 回顾 ...

  7. 总结:BGP和静态路由并存,达到故障自动倒换的目的。

    总体结论: 在上云的场景中,客户需要本地数据中心到云上VPC,出现网络故障时做到自动倒换,保证业务不中断. 一.客户需求 1.客户有总厂.分厂.总厂是通过专线和VPN连接上云,分厂是通过专线先连接到总 ...

  8. CentOS启动网络提示connect: Network is unreachable(配置静态路由)

    ls /etc/sysconfig/network-script/ifcfg-eth0 一.看是否在上述目录下存在ifcfg-eth0 这个文件,若存在则按下面的步骤操作: 1.手工配置ip看能不能配 ...

  9. ubuntu配置网络和静态路由(界面配置形式)

    目录 网卡配置 静态ip配置 静态路由 外网ip配置(动态获取DHCP) 内网ip和静态路由配置 本文主要针对ubuntu18.0系统进行界面形式配置网络.并配置静态路由. 网卡配置 静态ip配置 打 ...

随机推荐

  1. 大数据核心知识点:Hbase、Spark、Hive、MapReduce概念理解,特点及机制

    今天,上海尚学堂大数据培训班毕业的一位学生去参加易普软件公司面试,应聘的职位是大数据开发.面试官问了他10个问题,主要集中在Hbase.Spark.Hive和MapReduce上,基础概念.特点.应用 ...

  2. [Swift]LeetCode58. 最后一个单词的长度 | Length of Last Word

    Given a string s consists of upper/lower-case alphabets and empty space characters ' ', return the l ...

  3. [Swift]LeetCode179. 最大数 | Largest Number

    Given a list of non negative integers, arrange them such that they form the largest number. Example ...

  4. Linux 下源码编译FFMEG

    目录 1. 安装依赖关系 2. 源码安装 yasm 3. 源码安装 NASM 4. 源码安装libx264 5. 源码安装x265 6. 源码安装 libmp3lame 7. 源码安装 libopus ...

  5. GenerationType四中类型

    https://blog.csdn.net/u011781521/article/details/72210980 JPA提供的四种标准用法为TABLE,SEQUENCE,IDENTITY,AUTO. ...

  6. git push 时提示用户名或密码相关错误信息

    这里讲的是一个常见的第一次push提示输入用户名密码时,输入错误的解决办法.它导致在后面其他项目什么的在push的时候一直失败,并提示有用户名密码错误信息. 第一步:进入到“控制面板” (这里如何进入 ...

  7. java面向对象三大特性:封装、继承、多态

    一.封装 封装也称信息隐藏,是指利用抽象数据类型把数据和基于数据的操作封装起来,使其成为一个不可分割的整体,数据隐藏在抽象数据内部,尽可能的隐藏数据细节,只保留一些接口使其与外界发生联系.也就是说用户 ...

  8. Hive篇--搭建Hive集群

    一.前述 Hive中搭建分为三中方式 a)内嵌Derby方式 b)Local方式 c)Remote方式 三种方式归根到底就是元数据的存储位置不一样. 二.具体实现 a)内嵌Derby方式 使用derb ...

  9. Python内置函数(68)——__import__

    英文文档: __import__(name, globals=None, locals=None, fromlist=(), level=0) This function is invoked by ...

  10. Java生成全局唯一ID代码演示

    看了GitHub上的两个生成唯一ID的算法程序(一个出自百度,一个出自美团),打算运行着试试看,至于原理什么的文档上讲得很详细了,此处不再一一粘贴了,此处只演示代码 https://github.co ...