当前位置: 首页 > article >正文

路由反射器

BGP路由在AS内部职能传递一跳

image-20230330030639351

角色:

  • RR---路由反射器

    • RR就好比是一面镜子,可以将自己收到的BGP路由信息反射给其他BGP对等体

  • Client----RR客户端

    • 所有设备都可以是RR的客户端,但是这件事情需要由RR来指定。

    • 只有RR的IBGP对等体才可以称为其的客户

我们将RR与其的客户端所构成的系统称为路由反射簇,每一个路由反射簇都将使用RR的RID作为簇ID,来标识不同的反射簇

路由反射器的反射规则

  • 如果RR从自己的非客户端收到一条IBGP路由信息,则可以转发给自己的客户端

  • 如果RR从自己的客户端收到一条IBGP路由信息,则可以转发给自己的所有非客户和除了路由发来的客户

  • 如果RR从自己的EBGP对等体学习到一条路由信息,则可以转发给所有人

  • RR只能将自己身上可用且优的路由信息进行反射。

image-20240514211811926

[r3-bgp]peer 2.2.2.2 reflect-client   ---将R2指定为本地的RR客户

 

路由反射器的出现,解决了IBGP路由传输的问题,打破了IBGP水平分割原理。而IBGP水平分割原理是为了防止BGP出现环路所设计的,打破会存在环路隐患

路由反射器场景下的防环

image-20221012205639893

起源者ID

当一条BGP路由被RR反射给其他路由器时,如果这条路由已经携带了起源者ID属性,则保留该属性,否则由RR设备为这条路由信息添加起源者ID属性,并且将该属性的数值设定为本地AS内的始发路由器的RID

image-20230330161649363

路由器从IBGP对等体收到一条IBGP路由,并且该路由所携带的起源者ID属性与本地的BGP RID相同时,则会意识到该路由信息是从本地始发的信息,将忽略这条路由信息的更新。从而避免环路

该属性参数,只会在AS内部进行传递,不会传递出AS。

簇列表

image-20230331102626869

当一条BGP路由被路由反射器执行反射时,如果这条路由已经存在簇列表属性,那么路由反射器将本地的簇ID附加到路由的簇列表属性之前。而如果这条路由并不存在簇列表属性,那么RR会为这条路由信息创建一个簇列表属性并将本地的簇ID添加到簇列表中

当一台==路由反射器==收到BGP路由时,若发现该路由携带簇列表,并且簇列表中包含自己本地的簇ID,则忽略这条路由信息的更新。----防环效果类似于AS_Path属性。

注意

  • 当RR从EBGP学习一条路由,并传递给自己的IBGP对等体时,不会创建起源者ID和簇列表属性,因为这本质上不是路由反射行为。

  • 这两个属性只会在AS内传递,传出AS时,这两个属性会被删除。

  • 当路由反射器执行路由反射时,除了这两个属性,其他路径属性都不会修改。

反射器组网方案

备份RR组网

image-20230331145241950

当客户端1从EBGP对等体收到一条BGP路由时,它将通过IBGP向RR1和RR2通告这条路由。
	RR1和RR2在收到该更新路由后,将本地的簇ID添加到簇列表当中,然后向其他客户端反射,同时RR1和RR2相互反射。
	RR1和RR2收到相互反射路由时,检查簇列表,发现与自己的簇ID相同。故忽略对端的路由更新,避免环路问题。

 如果要构建备份RR组网,所有的RR设备必须使用相同的簇ID

[r2-bgp]reflector cluster-id 2.2.2.2  ---在RR上配置,配置后,会覆盖原有的簇ID,使用2.2.2.2为新的簇ID数值。

多集群路由反射器组网

让反射簇的RR之间建立IBGP对等体关系。


http://www.kler.cn/a/456118.html

相关文章:

  • 深入解析Spring Boot中的@ConfigurationProperties注解
  • 2024 年最新 windows 操作系统搭建部署 nginx 服务器应用详细教程(更新中)
  • DeepSpeed 使用 LoRA 训练后文件结构详解
  • React中最优雅的异步请求
  • SQL中的TRIM用法
  • SpringCloudAlibaba实战入门之路由网关Gateway断言(十二)
  • 强化学习寻宝游戏
  • C#使用Tesseract C++ API过程记录
  • 【Unity3D】Particle粒子特效或3D物体显示在UGUI上的方案
  • 【电子通识】拆解支付宝碰一碰卡片
  • 现代网络负载均衡与代理导论
  • Android着色器SweepGradient渐变圆环,Kotlin
  • 【C++ 真题】P5733 【深基6.例1】自动修正
  • 渗透测试面试问题
  • 【字符串】——python反转字符串的7种方法
  • this:[object Object](查看this对象)
  • 永磁同步电机控制算法-转速环电流环ADRC控制器
  • 单片机实物成品-007 汽车防盗系统(代码+硬件+论文)
  • 企业安全建设——安全防线框架建设(一)
  • 数据序列化与反序列化的实际应用示例
  • 条款19 对共享资源使用std::shared_ptr
  • 【论文复现】基于改进海洋捕食者算法的光伏模型参数估计
  • 攻防世界web新手第五题supersqli
  • Bash Shell知识合集
  • Qt6 QML RegularExpressionValidator 输入中文的坑
  • VSCode 插件开发实战(十五):如何支持多语言