BGP路由黑洞出现为原因

两台BGP设备之间无需直连,只要IP连通,并且能够建立TCP连接,就能够建立BGP对等体,这个特点使路由传递更加灵活,但是也可能带来一个问题,就是路由黑洞问题。
如上图,已知AR1、AR2、AR3、AR7运行了BGP协议,AS34567内的其他路由器运行了OSPF协议,并且AR4、5、6由于运行了OSPF协议的缘故,知道到达该AS内的各个点位。
此时,AR1将一条1.0.0.8/8这个路由条目,传递给了EBGP对等体AR3,AR3再将这条路由条目通告给了AR7,此时AR3也将这条路由条目的Next-Hop设置为了自己,AR7收到这个路由条目后,通告给了AR2,最终AR2将这个路由条目加入到了路由表中。
当AR2想要访问1.0.0.8/8时,需要查询路由表,发现下一跳时AR7,AR7收到这个数据包后查询,到达该路由需要经过AR3这个IBGP邻居,但是与AR3建立的IBGP邻居是跨设备建立的,因此,需要通过OSPF协议进行传递该数据包,随后AR7意识到想要到达AR3需要将数据包传递给AR4,AR4收到这个数据包后,发现自己的路由表中并没有1.0.0.8/8这个路由条目,R4也没有运行BGP协议,因此,出现了路由黑洞。

解决方式

为了规避路由黑洞的出现,BGP引入了同步规则:
当一台路由器从自己的IBGP对等体学习到一条路由,那么该设备不能将该路由条目传递给EBGP对等体,除非他又从IGP协议学习到该路由。

例如,本案例中,AR7收到了AR3传递过来的1.0.0.8/8这条路由后,缺省情况下是不会使用这个路由的,因为AR3收到EBGP对等体发送过来的路由条目后,不会更改下一跳地址,AR7收到该路由后,发现下一跳地址不可达, 不会将该路由加表,当然,这条路由也由于启用了同步规则,不会再传递给AR2这个EBGP对等体,因此就规避了路由黑洞。如果,AR7通过IGP协议学习到了去往1.0.0.8/8这条路由时,或者拥有去往1.0.0.8/8的静态路由时,就说明这个数据包是可以转发到目的地的,就可以放心的通告给其他的EBGP对等体了。

在AS34567所有设备都启用BGP:
AR4、5、6都启用BGP协议,并且建立IBGP全互联。

进行路由重分发:
将AR3的BGP路由引入到AS34567中的OSPF,让OSPF能够获知到1.0.0.8/8这个路由的路径,这样AR7即从IBGP对等体能够获知到该路由,又能够从IGP协议中获知,因此解决了路由黑洞问题。

采用MPLS:
大体来说就是,将IP头部之前,数据帧头之后,加入一个标签头部,IP头部躲藏在标签头部之后,然后在转发过程中,经过的设备只需要根据标签头部进行转发该数据包,并进行选路,也能解决路由黑洞问题。

BGP路由通告原则

1、当一台BGP路由器发现了多条可以到达同一地址的路由条目,该设备会通过一个路由选择进程在这些路由条目中选择一条最优的路由,加入到路由表中使用,并且在向BGP邻居通告路由条目时,也只会通告最优的路由。
2、当一台路由器从EBGP对等体学习到了BGP路由时,缺省情况下,会将该路由条目通告给所有的IBGP对等体以及EBGP对等体。
3、当一台路由器从IBGP对等体收到一个路由条目后,他不会将该路由条目通告给其他的IBGP对等体——IBGP水平分割原则。
4、当一台路由器从自己的IBGP学习到BGP路由时,如果同步被激活,只有从IGP协议也学习到该路由条目后,才会将该路由条目通告给EBGP对等体;如果同步被关闭,即使没有从IGP学习到相应的路由,也会通告给EBGP对等体。

BGP路由黑洞问题及BGP同步规则相关推荐

  1. 乾颐堂军哥HCIE9-解决BGP路由黑洞、聚合的各种参数以及RR基础

    本技术文章讨论BGP的路由黑洞解决方案.BGP聚合,即减少路由条目数的技术 1.BGP路由黑洞 1.1 解决路由黑洞问题1 某些AS内的设备没有运行BGP(R3),那么它会缺少路由(2.2.2.2/6 ...

  2. 【博客465】BGP(边界网关协议)-----BGP路由黑洞及路由反射器与联盟

    BGP(边界网关协议)-----BGP路由黑洞及路由反射器与联盟 路由黑洞的场景 黑洞出现场景: 两台非直连路由器可以建立BGP邻居关系,传递BGP路由.如果中间路由器没有运行BGP协议,可能会出现路 ...

  3. linux进入黑洞路由,BGP路由黑洞解决办法介绍

    在配置BGP的时,通常最容易遇到的问题就是路由黑洞,那么什么是路由黑洞呢,简单的说,它会默默的将 数据包丢弃,使所有数据包有去无回.我们知道传统的IP路由查找,它是逐跳查找的,通俗一点就是当数 据包到 ...

  4. MPLS解决BGP路由黑洞

    MPLS解决BGP路由黑洞 拓补图以及实验要求 配置思路和过程 根据要求(AS2的IP地址为172.16.0.0/16)可知该要求为子网划分. 首先是划分R2-R7骨干网络,可以看到AS2中总共有七段 ...

  5. BGP路由黑洞解决办法介绍

    在配置BGP的时,通常最容易遇到的问题就是路由黑洞,那么什么是路由黑洞呢,简单的说,它会默默的将 数据包丢弃,使所有数据包有去无回.我们知道传统的IP路由查找,它是逐跳查找的,通俗一点就是当数 据包到 ...

  6. 华为HCIE-RS3.0论述题--BGP路由黑洞

    3.3BGP路由黑洞 题干:R1/R2/R3/R4运行ospf协议,R1和R4建立IBGP,并且BGP进程下宣告站点路由. 1,根据以上描述,当站点1的用户访问站点2的用户时会发生什么问题?请描述产生 ...

  7. BGP路由黑洞及解决方案

    一.BGP拓扑 备注: 阅读本片BGP路由黑洞需要有BGP基础,感兴趣的同学可以进入圈子对基本的BGP及OSPF配置原理进行了解后再进行阅读 二.路由黑洞产生背景 1.R4设备不进行BGP的配置,R2 ...

  8. HCIE-RS论述BGP路由黑洞

    BGP路由黑洞 一.题目需求以及解决方法 A,D 两合设备用 loopback 口建立 IBGP邻居,现在管理员在A和D设备中把SiteA和SiteB的路由宣告到了BGP中.请问: 1.现在SITEA ...

  9. 利用MPLS解决BGP路由黑洞问题

    致歉声明:前版博客由于博主个人对于BGP知识的理解出现偏差,导致路由黑洞产生的原因解释错误,误导大家,抱歉. 配置文件的百度网盘连接及提取码. 链接:https://pan.baidu.com/s/1 ...

最新文章

  1. 第三方控件DevExpress的TreeList绑定XML文件
  2. SparkStreaming Exception in thread main java.lang.IllegalArgumentException xxx is not a valid
  3. MATLAB多元非线性回归
  4. 7-1 矩阵链相乘问题 (20 分)(思路+详解+题目解析) 动态规划做法
  5. ps cs6 磨皮插件_DR5插件加强版 for Mac(ps磨皮滤镜)
  6. HDU1412 {A} + {B}【排序+集合合并】
  7. 史上最全最白话RNN原理
  8. python 爬取直播_python---爬取某鱼直播
  9. foxmail的邮局和端口_Foxmail客户端设置
  10. [转]oracle性能调优之--Oracle 10g AWR 配置
  11. 网易云阅读页面html代码,网易云阅读网页端资讯阅读器设计总结
  12. springboot+Vue整合Luckysheet,实现在线编辑Excel表格
  13. Ardupilot固定翼无人机L1制导律原理及代码解读
  14. MySQL表的四种分区类型
  15. 面试系列之-如何选择外包与自研公司
  16. 【数据结构】最大曼哈顿距离
  17. LAN-Cruising
  18. AIX磁盘管理基础知识
  19. 什么是SDK,它是怎样威胁我们的隐私?
  20. 决策树、装袋、提升和随机森林的对比理解

热门文章

  1. 平台数据库授权时造成主从同步失败问题的事故报告20120705
  2. emc整改措施及案例_我们推荐EMC整改效果_EMC整改方案相关
  3. 吃个晚饭的时间,看明白三相交流感应电机驱动原理
  4. SwiftUI之明暗度brightness设置View Image Color
  5. An unknown compilation problem occurred
  6. php 修改session 目录,php自定义session保存目录
  7. 四川大学计算机综合实践报告,四川大学计算机操作系统第四实验报告
  8. 【MobileNetV3】Pytorch实现(图像分类)
  9. 绩效考核不等同于绩效管理
  10. oracle pls 00323,Error(30,13): PLS-00323: subprogram or cursor 'XXXXX' is declared in a package spec