1. BGP路由不优
    BGP路由下一跳不可达 BGP同步
    拓扑图 (AS 234之间直接 2 4建立BGP,EBGP之间采取直连 )

    下一跳属性:
    将EBGP邻居学习路由传递给IBGP邻居时,下一跳不发生变化
    将IBGP邻居学习路由传递给EBGP邻居时,下一跳为EBGP邻居建立的更新源地址。
    把R4的环回通告,R2会加表失败,这是因为底层是EIGRP,AD值90小于200,所以失败,但是就算失败,但是依旧传递给R1.


    注意:若某路由器IBGP、EBGP都有接口在一个MA网络内,并且 EBGP邻居建立使用该物理接口,则将IBGP邻居学习路由传递给 EBGP邻居时,下一跳为自己IBGP邻居接口的物理地址(由于ICMP 重定向导致发送的路由更新中下一跳发生变化)

R1 R2 R4在同一个MA网络,并且R1 R2采用物理地址建立EBGP邻居,并且R2学习R4走的是以太网,这个时候,R2传递给R1的下一跳是R4的以太网接口地址(不是更新源地址,R2会给R1发送ICMP重定向报文,告诉R1自己去R4还得经过R4的以太网地址,所以直接把给R1的下一跳改为R4的以太网地址)

R1通告1.1.1.0传递给R4不优,R5通告5.5.5.0传递给R2不优的原因都是因为下一跳属性不可达,这个时候在R2和R4上修改下一跳属性即可



BGP同步问题

为什么不通?
数据层面的路由黑洞,R3上根本都没有配置BGP,转发数据到达R3,R3达到5.5.5.0根本没有路由。这个先暂缓一下,先了解下同步问题

BGP同步:通过IBGP邻居学习路由必须通过IGP协议学习,否则 BGP同步失败,路由不优。
同步的概念就是:通告BGP学习到的路由,也要在IGP学习,如果开启了BGP同步,那么BGP学习到的路由没有在IGP上学习,即便修改了next-hop-self,一样不优。
举例:比如在R4上开启BGP同步(之前修改过,所以是优的)


我们可以在R4配置静态到达1.1.1.0网段,这样IGP也就学习到了,但是这种办法明显不像,不可能知道私网地址啊,但是运营商的路由器并不是所有的都得运行BGP,所以还得需要别的办法去考虑,也就是重发布。


但是这也只是在实验中这样写,实际上不现实,另外BGP同步叫的是IBGP的同步问题对于EBGP是不可能的,你不能让一个AS的IGP协议去学习另外一个AS的路由。所以同步我们一定要关闭这个功能。

为何能传路由但是通不了,因为路由是单播分段传递,这样分段中源目标会改变。但是数据传递是不能修改源和目标地址。
路由黑洞解决方案:

  1. 将BGP重发布进入IGP中(慎用)


    为什么不传递5.5.5.0呢?因为将BGP重发布进入IGP协议中,默认只重发布通过EBGP学习到的路由,而R2学习的5.5.5.0是通过R4学习的,属于IBGP。


  2. 在AS之内建立full-mesh IBGP邻居
    两两路由器之间都建立BGP关系,依次解决水平分割问题
    先断开R2R4的邻居,no neighbor x.x.x.x
    在IBGP邻居建立过程中,存在大量相似命令可以使用peer-group(大型对等组),减少命令配置条数,优化BGP内存。
    步骤:
    创建peer-group

    配置peer-group内相关命令

    将邻居划入peer-group之内


  3. MPLS(多协议标签交换)
    后期会写

减少IGBP邻居关系数量,会出现数据层面的路由黑洞(IBGP水平 分割),
打破水平分割:1.路由反射器 2.EBGP联邦

BGP路由认证:BGP认证基于邻居的,BGP认证信息出现TCP报文头部中,仅仅支持MD5(即便双方做了MD5,报错依旧存在,这是模拟器问题)

BGP自动汇总
当开启自动汇总时:传递自身network的路由不会发生任何变化,将其他方式重发布进入BGP时,会进行自动汇总,同时不会携带外部路由参数( 下一跳地址),出现路由黑洞。

R2上查看

发现即便开启了BGP的自动汇总,但是自身network通告的路由还是明细路由,并没有进行汇总。我们在连接R6到R1,运行EIGRP,将R1学到R6的路由重发布进入BGP。

重发布进入BGP,会携带原有路由的metric等属性,所以不需要指定metric
查看

当关闭自动汇总时:重发布进入的路由,明细进入并且携带原路 由的相关属性(metric、next-hop属性)

BGP邻居关系重置
硬性重置:断开TCP会话连接,重新建立BGP邻居关系,针对所有 实施策略都生效


软性重置:在不断开TCP会话的(不断开BGP邻居)基础上实施策略,支持在in out使用

查看针对某个邻居发送的路由

查看通过某个邻居学习到的路由(默认是不保存的,如果查看需要先做保存)

这两条命令可以进行排错,比如路由学不到是对方邻居没发,还是自己的问题

BGP路由聚合(汇总)
方法一:
在明细路由所在路由器上产生一个静态指向null 0路由,通告进入BGP,这属于BGP的network特性


方法二:
使用聚合者属性进行路由聚合 ,建议在明细路由所属AS之内聚合,默认发送所有明细和聚合路由

怎么让它只传递聚合路由,不传递明细路由呢?


那如果只想传递某些明细路由呢?

若在其他AS内聚合,会丢失某些属性,例如AS-path,需要增加as-set还原
明细路由所包含的某些属性


发现聚合的AS path没了
还原明细路由中属性,增加as-set参数

其他属性:

这里的advertise-map作用是调用router-map,如果匹配到的路由存在,聚合路由存在,匹配到的路由不在了,自己和聚合一起消失,但是其他明细不消失。


在聚合过程中可以使用attribute-map改变路由的某些属性

通告AS-SET 继承 4个属性: LP AS-PATH COM origin ;
LP : 本地优先级,选择最大值
AS-PATH: 所有的AS-PATH 全继承,但是使用AS 序列号进行表 示,无顺序之分,在计算AS-PATH 路径,AS序列号只算1个。
community:团体属性,标准和扩展同时继承,但是标准属性按 照最严格执行
origin:起源码,继承最差的

BGP同步与路由黑洞,路由聚合相关推荐

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

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

  2. BGP的路由黑洞和防环

    BGP的路由黑洞 路由黑洞的形成: 由于BGP协议支持非直连建邻,故可能出现BGP协议跨越未运行BGP协议的路由器.导致BGP路由传递后,控制层面可达,但是数据层面,在经过未运行BGP协议的路由器时无 ...

  3. 众元教育H3CSE20200603班-黑洞路由和路由黑洞的区别

    标题 众元教育H3CSE20200603班-黑洞路由和路由黑洞 引言:大家在学习路由交换的时候经常会听到黑洞路由和路由黑洞两个词,有点像听到了策略路由和路由策略的感觉傻傻分不清,哈哈.那黑洞路由和路由 ...

  4. 路由黑洞与黑洞路由简介

    1.路由黑洞 路由黑洞一般是在网络边界做汇总回程路由的时候产生的一种不太愿意出现的现象,就是汇总的时候有时会有一些网段并不在内网中存在,但是又包含在汇总后的网段中,如果在这个汇总的边界设备上同时还配置 ...

  5. linux写黑洞路由,2019-05-21 路由黑洞与黑洞路由

    路由黑洞: 路由黑洞一般是在网络边界做汇总回程路由的时候产生的一种不太愿意出现的现象,就是汇总的时候有时会有一些网段并不在内网中存在,但是又包含在汇总后的网段中,如果在整个汇总的边界设备上同时还配置了 ...

  6. BGP路由黑洞问题及BGP同步规则

    BGP路由黑洞出现为原因 两台BGP设备之间无需直连,只要IP连通,并且能够建立TCP连接,就能够建立BGP对等体,这个特点使路由传递更加灵活,但是也可能带来一个问题,就是路由黑洞问题. 如上图,已知 ...

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

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

  8. 案例精解:BGP路由黑洞

    什么是路由黑洞? 简单的说,它会默默的将数据包丢弃,使所有数据包有去无回,下面来看一个案例: 如图所示: R1和R2建立EBGP邻居关系 R2和R5建立IBGP邻居关系 R5和R7建立EBGP邻居关系 ...

  9. BGP路由黑洞及IBGP全连接

    组网需求: 1.AS65000边界网段发布:RT1.RT2重发布直连路由至OSPF(metric 1000 type 1) 2.BGP配置要求: no synchronization no auto- ...

最新文章

  1. C++ 中emplace_back和push_back差异
  2. windows 2012 r2 x64 安装IIS注意事项
  3. cat命令的13个用法
  4. 形象解释Momentum
  5. 【前端面试】数据类型与类型检测
  6. java+分支合并主线_git如何合并两个远端分支?
  7. 张高兴的 .NET Core IoT 入门指南:(五)PWM 信号输出
  8. matlab程序 地震 相干噪声_地震台站台基噪声功率谱概率密度函数Matlab实现
  9. 搭建go项目web服务器,3.2 Go搭建一个Web服务器
  10. OpenShift 4 - Knative教程 (1) 创建Serverless运行环境
  11. 模板方法设计模式的原理及测试代码(手写JdbcTemplate)
  12. XCode各种告警处理
  13. Go 性能优化技巧 7/10
  14. docker给php装swoole,制作php+swoole的Docker环境
  15. 狂神说Java--Java学习笔记(合集)
  16. JDK1.8帮助文档chm格式中英文
  17. 数据中心机房搬迁实施方案流程
  18. Microsoft Office Excel 已停止工作
  19. 青少年CTF - Misc - 上号 Wp WriteUp
  20. python设置背景颜色为豆绿色_eclipse 设置豆沙绿保护色,保护眼睛

热门文章

  1. 图扑推出可视化智慧仓储管理系统,能否解决购物狂欢节爆仓危机?
  2. 菜鸟裹裹快递查询接口调用
  3. Theano深度学习框架之Lasagne安装及入门
  4. struts的json数据接收解析
  5. Spring Boot 1.X和2.X优雅重启实战
  6. 边缘计算网关在水文监测系统中提供多功能应用
  7. RT-Thread GD32F4xx 软件I2C驱动及at24cxx软件包
  8. 加注释的ns2-AODV源代码
  9. 如何分析虚拟机系列(1):新手篇VMProtect 1.81 Demo
  10. Java JVM 从虚拟机的角度看对象的创建与访问