结论:通过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. emWin仪表界面设计,含uCOS-III和FreeRTOS两个版本

    第7期:多功能仪表界面设计配套例子:V6-912_STemWin提高篇实验_多功能仪表界面设计(uCOS-III)V6-913_STemWin提高篇实验_多功能仪表界面设计(FreeRTOS) 例程下 ...

  2. [Swift]LeetCode832. 翻转图像 | Flipping an Image

    Given a binary matrix A, we want to flip the image horizontally, then invert it, and return the resu ...

  3. JDBC也就那么回事

    JDBC 一.JDBC概述 为什么要使用JDBC? JDBC:Java DataBase Connectivity,是SUN公司提供的一套操作数据库的标准规范(技术). JDBC与数据库驱动的关系:接 ...

  4. Underscore.js 源码学习笔记(下)

    上接 Underscore.js 源码学习笔记(上) === 756 行开始 函数部分. var executeBound = function(sourceFunc, boundFunc, cont ...

  5. 14.Git分支-rebase有趣的例子、变基带来的问题及解决方案

    1.有趣的变基例子 如下图所示,你创建了一个特性分支server,然后进行了一些提交(C3和C4),然后又从C3上创建了特性分支client,提交了C8和C9,最后你又回到了server,提交了C10 ...

  6. php的四个fetch语句

    先给一个表 man: |---------------| |-name--|-age--| |--AA---|--aa---| |--BB---|--bb---| |--CC---|--cc---| ...

  7. oracle调整内存大小

    1.查看已分配内存,看到memory_max_target为20GSQL> show parameter sga NAME                     TYPE     VALUE- ...

  8. CPU的load和使用率傻傻分不清

    1. 什么是Cpu的Load 使用uptime.top或者查看/proc/loadavg都可以看到CPU的load统计,这里有三个值,分别代表1分钟.5分钟和15分钟的CPU Load情况.大部分人认 ...

  9. TypeScript 基础知识点整理

    一.TypeScript的特点 1.支持ES6规范 2.强大的IDE支持(集成开发环境) 允许为变量指定类型,减少你在开发阶段犯错误的几率. 语法提示,在IDE编写代码时,它会根据你所处的上下文把你能 ...

  10. 【记录一次坑经历】axios使用x-www-form-urlencoded 服务器报400(错误的请求。 )(后端.Net MVC5 WebApi OAuth,前端Electron-Vue)

    首先放上源码 electron-vue axios 注册 import Vue from 'vue' import axios from 'axios'   axios.defaults.baseUR ...