BGP的反射器和联盟

BGP反射器

IBGP全互联的问题

为了实现路由信息的交互,BGP要求一个AS内的所有BGP Speaker相互形成IBGP全互连,导致IBGP的会话数是n(n-1)/2,而这一要求使得IBGP的扩展成为了一个很大的问题

IBGP全互联问题解决方案

? 路由反射 (RFC 2796)
? 降低对指定路由器IBGP路由通告机制的限制,允许将从IBGP对等体接收到的更新信息传给某些IBGP对等体 打破传统IBGP水平分割的限制
? 联盟 (RFC3065)
? 将大的AS分成若干小的AS,而小AS之间建立EBGP对等体关系

BGP路由反射器(Route Reflector)

? 在AS200里,有三台路由器分别为RTA,RTB和RTC。在默认的情况下,如果RTA收到一条外部的路由更新,并且该路由被RTA选举为最佳路由,则RTA肯定会把该路由通告给RTB以及RTC。由于RTB和RTC互为IBGP对等体,所以不会把从IBGP学习到的路由通告给其它IBGP对等体。
? 如果该通告原则可以被放松,允许RTC可以把从RTA学习到的IBGP路由通告给其它IBGP对等体的话,这样将可以取消RTA与RTB之间的IBGP会话,RTC就是BGP路由反射器。

不同角色的对等体

? 一个BGP Speaker通告一条IBGP路由到另外一个IBGP对等体的操作。而这样的一个BGP Speaker通常被称为路由反射器(Route Reflector, RR),这样的一条IBGP路由被称为反射路由。IBGP对等体可以有三种角色:
? 路由反射器 (Route Reflector)
? 客户机 (Client)
? 非客户机 (Non-Client)
? 路由反射器和它的客户机组成一个集群(Cluster)。路由反射器在客户机之间传递(反射)路由信息,所以客户机之间不需要建立BGP连接。
? 既不是反射器也不是客户机的BGP路由器被称为非客户机(Non-Client)。非客户机与路由反射器之间,以及所有的非客户机之间仍然必须建立全连接关系。

总结对等体之间的关系
? Client只需维护与RR之间的IBGP会话。
? Non-Client与Non-Client之间需要建立IBGP全互连。
? RR与Non-Client之间需要建立IBGP全互连。
? RR与RR之间需要建立IBGP的全互连。

路由反射宣告原则 (1)

? 从非客户机IBGP对等体学到的路由,发布给此RR的所有客户机
? 从EBGP对等体学到的路由,发布给所有的非客户机和客户机

路由反射宣告原则 (2)

? 从客户机学到的路由,发布给此RR的所有非客户机和客户机(发起此路由的客户机除外)
? 从EBGP对等体学到的路由,发布给所有的非客户机和客户机

路由反射簇 (Cluster)

? 当一个AS内存在多台RR为Client提供冗余时,RR间的路由更新很有可能会形成环路,为防止该现象,引入了Cluster的概念

什么是簇?

? 通过4字节的Cluster_ID来标识Cluster,通常会使用Loopback地址作为Cluster_ID。
? 一个Cluster里可以包括一个或多个RR;一个Client可以同时属于多个Cluster。
? 通常,一个客户的簇只拥有一个RR,并由RR的BGP Router-id去标识该簇。有时,为了防止单点失效,在单一簇里引入多个RR,如图中的备份RR组网。

路由反射环路防止机制 - Originator_ID

? Originator_ID属性用于防止在反射器和客户机/非客户机之间产生环路。
? Originator_ID属性长4字节,可选非过渡属性,属性类型为9 ,是由路由反射器(RR)产生的,携带了本地AS内部路由发起者的Router ID。
? 当一条路由第一次被RR反射的时候,RR将Originator_ID属性加入到这条路由,标识这条路由的始发路由器。如果一条路由中已经存在了Originator_ID属性,则RR将不会创建新的Originator_ID。
? 当其它BGP Speaker接收到这条路由的时候,将比较收到的Originator_ID和本地的Router ID,如果两个ID相同,BGP Speaker会忽略掉这条路由,不做处理。

路由反射环路防止机制 - Cluster_List

? Cluster_List是可选非过渡属性,属性类型编码为10
? Cluster_List由一系列的Cluster_ID组成,描述了一条路由所经过的反射器路径,这和描述路由经过的As路径的AS_Path属性有相似之处。Cluster_List由路由反射器产生
? Cluster_List只在AS内部传播,从EBGP对等体收到的含有Cluster_List的路由将被丢弃。
? 当RR在它的客户机之间或客户机与非客户机之间反射路由时,RR会把本地Cluster_ID添加到Cluster_List的前面。如果Cluster_List为空,RR就创建一个
? 当RR接收到一条更新路由时,RR会检查Cluster_List。如果Cluster_List中已经有本地Cluster_ID,丢弃该路由;如果没有本地Cluster_ID,将其加入Cluster_List,然后反射该更新路由
? Cluster_List只被RR用来检测路由环路,不是RR的客户机和非客户机不会检测该属性。
Cluster list与Originator ID的相同与不同
? 相同:它们都是防止AS内部的环路
? 不同:Originator ID就是在发起该路由的路由器发现收到了一条路由信息(该路由信息里面的originator ID就是这台路由器),此时路由器便会忽略该路由这样达到防环作用
? CLUSTER list是RR产生的,是通过RR来防止路由环路的。当RR发现收到的路由更新里面的cluster ID和RR自己一样,此时便忽略该路由更新

AS内多个簇

一个AS中可能存在多个簇(Cluster)。各个RR之间是IBGP对等体的关系,一个RR可以把另一个RR配置成自己的客户机或非客户机。因此可以灵活的配置AS内部簇与簇之间的关系。

层次化路由反射

BGP联盟

联盟通过把大的AS分成多个更小的自治系统来解决IBGP全互连的问题,这些自治系统叫做成员自治系统或子自治系统。成员自治系统之间使用EBGP会话,因此它们不需要全互连。然而,在每一个成员AS中,仍然要求IBGP全互连。

联盟术语

? 联盟通过把大的AS分成多个更小的AS来解决IBGP全互连的问题,这些自治系统叫做成员AS。因为成员AS之间使用EBGP会话,它们之间不需要全互连。然而在每一个成员AS中,IBGP全互连的要求仍然适用。
? 联盟中的EBGP会话和常规的EBGP会话有所不同。为了区分它们,这种类型的EBGP会话叫做联盟内的EBGP会话。与普通EBGP会话区别就发生在当通过会话传播路由的时候,联盟内的EBGP会话在一方面遵循路由通告的部分IBGP规则,在另一方面又遵循路由通告的部分EBGP规则。如:在发送更新的时候,NEXP_HOP、MED和LOCAL_PREF被保留,而AS-PATH被修改。
? 对于外部邻居来说(联盟外的的对等体),成员AS拓扑是不可见的。也就是说,在发向EBGP邻居的更新消息中,已经剥去了联盟内被修改的AS_PATH。从其他的自治系统来看,联盟就像单个AS一样。
? 每个成员AS中,IBGP全连接是需要的。路由反射也可以被部署。部署联盟的一个明显优势就是其成员AS不需要使用相同的IGP。每个成员AS不需要向其他成员AS通告自己的内部拓扑。不过,当使用不同的IGP时,每一个成员AS内必须保证BGP下一跳的可达性。

AS-Path回顾

当前,AS_PATH属性被定义为公认必遵属性,该属性由AS号所组成。AS_PATH属性字段由三元组所组成:
Path Segment Type, Path Segment Length, Path Segment Value
在BGPv4里,path segment type字段是由1字节长的数值所组成,主要是标识AS_PATH的不同类型:

   Value     Segment Type
      1       AS_SET: 由一系列AS号无序地组成,包含在UPDATE消息里。
      2       AS_SEQUENCE: 由一系列AS号顺序地组成,包含在UPDATE消息里。
      3       AS_CONFED_SEQUENCE: 在本地联盟内由一系列成员AS号按顺序地组成,包含在UPDATE消息中,只能在本地联盟内传递。
      4       AS_CONFED_SET: 在本地联盟内由一系列成员AS无序地组成,包含在UPDATE消息中,同样只能在本地联盟内传递。

AS_Path变化过程

联盟内采用AS-CONFED来防止子AS间的路由环路。
联盟内的AS-PATH属性变化:
? 联盟内的EBGP会话
? 子AS号被添加到AS-PATH中的AS-CONFED-SEQUENCE前面
? 联盟内的IBGP会话
? 不修改AS-PATH
? 外部BGP会话
? 子AS号从AS-PATH中清除,而大AS号被添加到AS-PATH前面

联盟与反射的比较

原文地址:https://blog.51cto.com/13817711/2469919

时间: 2024-08-29 15:33:39

BGP的反射器和联盟的相关文章

华为OSPF、BGP路由反射器配置详解

对于网络工程师而言,OSPF.BGP的重要性不言而喻,本篇文章我们就来回顾下OSPF.BGP的配置技巧,重点如下1.熟悉DHCP配置:2.熟悉OSFP配置:3.BGP路由反射器配置 入下图所示,要求如下:1.网络拓扑规划如图所示:2.PC1.PC2.PC3全部自动获取ip地址:3.R1.R2.R3之间运行osfp保证网络的联通性:4.PC1.PC2.PC3之间网络互通 第一步 配置OSPF保证路由器直接网络连通性R1配置如下:[R1]dhcp enable Info: The operation

BGP Reflector(反射器)配置实例

如下图示: 配置思路: 1.首先每个RT建立l0?lxx接口,分配相接的接口IP地址,并且no sh激活. 2.每个RT建立一个OSPF网络Area0,网络号为l0和相接的接口网络地址. 3.为每个RT建立iBGP或eBGP路由. 4.为两两一组反射的cluster,有BGP Reflector和client组成一组,分别为R2和R3,R3和R4为一组. 5.让R5的Loopback55和R4的Loopback44接口互通. R1: interface Loopback0 ip address

《深入浅出 —— BGP邻居、联盟、路由反射器综合配置》

本篇文章为大家分享下华为路由BGP邻居.联盟.路由反射器综合实验配置,通过BGP邻居建立.联盟.路由反射器,实现BGP内部邻居之间路由条目的传递,最终实现R1的LoopBack 0与R6的LoopBack 0网络互通. ** 实验拓扑图如下:** **第一步,基本网络配置如下:** R1sysname R1interface g0/0/0ip address 192.168.12.1 24interface LoopBack 0ip address 10.10.1.1 24quitR2sysna

BGP路由

1.自治系统(AS) 自治系统:由同一个技术管理机构管理.使用统一选路策略的一些路由器的集合: 自治系统内部的路由协议--IGP 自治系统之间的路由协议--EGP AS号段:1-64511(公有号段).64512-65535(私有号段) 2.BGP特征 IGP:着重于发现和计算路由,主要有RIP.OSPF.ISIS: EGP:着重于控制路由的传播和选择最优的路由,通常指BGP; BGP用来在AS之间传递路由信息,是一种增强的距离矢量路由协议(可靠的路由更新机制.丰富的metric度量方法.从设计

CCNP路由实验之七 动态路由之BGP

?? 动态路由协议可以自动的发现远程网络,只要网络拓扑结构发生了变化,路由器就会相互交换路由信息,不仅能够自动获知新增加的网络,还可以在当前网络连接失败时找出备用路径.根据是否在一个自治域内部使用,动态路由协议分为内部网关协议(IGP)和外部网关协议(EGP).这里的自治域指一个具有统一管理机构.统一路由策略的网络.自治域内部采用的路由选择协议称为内部网关协议,常用的有RIP.EIGRP.OSPF.IS-IS:外部网关协议主要用于多个自治域之间的路由选择,常用的是BGP和BGP-4.在一个路由器

BGP边界网关协议

BGP作用:在不同的大型网络之间 , 长时间以稳定的方式传输大量的路由并且能够实现路由的灵活控制同时,确保无环 BGP工作过程:1.建立邻居表:2.同步数据库:3.计算路由表 BGP选路原则:1.preference-value ,华为私有属性,仅仅在设备本地起作用.值越大越好:不会随着更新报文,传递给其他的路由器的:2.local-preference,本地优先级,值越大越好:默认是100:3.比较该路由是否"本地起源":本地产生的,要优于从其他邻居学习过来的:#自己产生的 :手动聚

BGP

BGP:border gateway protocol边界网关协议 基于TCP:179端口 管理距离:iBGP:200  /eBGP:20 -------------------------------------------------------- 默认更新源为直连接口,两端的接口必须成对,IBGP TTL为255 ,EBGP TTL为1 EBGP若要使用更新源为loopback,则必须设置多跳 ( ) --------------------------------------------

关于cisco2911/k9

CISCO 2911/K9支持IPv4.IPv6.静态路由.开放最短路径优先(OSPF).增强的IGRP(EIGRP).边界网关协议(BGP).BGP路由反射器.中间系统到中间系统协议(IS-IS).多播互联网组管理协议(IGMPv3)稀疏模式独立组播协议(PIM SM).PIM源特定组播(SSM).距离矢量组播路由选择协议(DVMRP).IPSec.拥有3个固定的广域网接口. CISCO 2911/K9 路由器类型 多业务路由器 网络协议 IPv4,IPv6,静态路由,IGMPv3,PIM S

BGP-CX试验

[注]BGP综合试验为本人整理的"乾颐堂"安德老师的课堂实验 初始配置: 所有设备配置接口IP地址 所有设备环回口地址为xx.1.1.1/32位 EBGP实验:[参与设备:R1/R2/R4/R5] 在R1上,查看BGP AS号取值范围,说出公有AS号和私有AS号的取值范围 在R1上,使用AsDot模式建立BGP进程,并验证AS号 通过命令取消AsDot的显示形式.与上面的结果对比,验证AS号 撤销上面的操作.在R2上开启debug程序 R1与R2通过直连接口建立eBGP.查看BGP的报