配置BGP路由反射器
通过配置BGP路由反射器,可以解决多个IBGP对等体建立全连接而导致网络开销大的问题。
应用环境
在AS内部,为保证IBGP对等体之间的连通性,需要在IBGP对等体之间建立全连接关系。当IBGP对等体数目很多时,建立全连接网络的开销很大。使用路由反射器RR,可以解决这个问题。
路由反射器减少了IBGP连接的总数,但在大型网络中,为了减少每个RR的客户机数就需要使用多个RR,而各RR之间需要全连接,导致网络中仍然存在大量的IBGP连接。为了进一步减少IBGP连接的数量,引入了多级BGP路由反射器组网。
典型的BGP多级路由反射器组网,如图1所示,其中R1、R2、R3、R4作为一级RR层的反射器,R5、R6、R7、R8作为二级RR层的反射器,且同时作为一级路由反射器的客户机。由于一级RR不是任何路由反射器的客户机,所以一级RR之间必须全连接,而二级RR作为一级RR的客户机,相互之间并不需要全连接。
配置路由反射器及指定客户机
通过配置路由反射器就可以在客户机之间反射路由信息,各客户机之间不需要建立IBGP连接。
背景信息
在一个AS内,其中一台路由器作为路由反射器RR,其它路由器作为客户机。客户机与路由反射器之间建立IBGP连接。路由反射器和它的客户机组成一个集群(Cluster)。路由反射器在客户机之间传递(反射)路由信息,而客户机之间不需要建立IBGP连接。
RR的配置方便,只需要对作为反射器的路由器进行配置,客户机并不需要知道自己是客户机。
操作步骤
- 执行命令system-view,进入系统视图。
- 执行命令bgp as-number,进入BGP视图。
- 执行命令ipv4-family unicast,进入BGP IPv4单播地址族视图。
- 执行命令peer { ipv4-address | group-name } reflect-client,配置路由反射器及其客户。
配置peer reflect-client命令的路由器作为路由反射器,并同时将指定的对等体(组)作为其客户机。
在某个地址族下配置的Reflect-Client信息只能在该地址族有效,不能被其它地址族继承。因此建议用户在需要的特定的地址族下配置Reflect-Client信息。
- 执行命令commit,提交配置。
(可选)禁止客户机之间通过RR的路由反射
(可选)配置路由反射器的集群ID
(可选)禁止BGP路由下发到IP路由表
在RR上禁止BGP路由下发到IP路由表,可以有效的避免流量从该RR转发,提高路由传递效率。
背景信息
通常情况下,BGP路由下发到IP路由表,用于指导流量转发。如果不需要该路由器承担转发任务,就可以禁止BGP路由下发到IP路由表。
禁止BGP路由下发到IP路由表主要用在存在RR的场景。在一个AS内,RR主要有两个作用,一个是用来传递路由,另外一个是用来转发流量。但是如果RR连接了很多客户机和非客户机,路由传递任务较重,RR的CPU资源消耗很大,无力再承担转发任务,这时可以在该RR上禁止BGP路由下发到IP路由表,这样RR将主要用来传递路由,提高了路由传递效率。
请在运行BGP协议的路由器上进行下列配置。
操作步骤
- 执行命令system-view,进入系统视图。
- 执行命令bgp as-number,进入BGP视图。
- 执行命令ipv4-family unicast,进入IPv4单播地址族视图。
- 执行命令routing-table rib-only [ route-policy route-policy-name | route-filter route-filter-name ],禁止BGP路由下发到IP路由表。
缺省情况下,BGP优选的路由下发到IP路由表。
routing-table rib-only命令中配置参数route-policy route-policy-name或route-filter route-filter-name时,通过策略的路由不下发IP路由表,没有通过策略的则正常下发,不修改路由属性。
命令routing-table rib-only与命令active-route-advertise互斥。
- 执行命令commit,提交配置。
(可选)使能路由反射器通过出口策略修改路由的路径属性
使能路由反射器通过出口策略修改路由的路径属性,可以改变BGP的选路结果。
背景信息
路由反射器上不能通过出口策略修改路由路径属性,因为这样配置可能会导致路由循环。所以默认情况下,禁止路由反射器通过出口策略修改路由路径属性。但是如果需要对网络流量进行重新规划,可以使能路由反射器通过出口策略修改路由的路径属性。
操作步骤
- 执行命令system-view,进入系统视图。
- 执行命令bgp as-number,进入BGP视图。
- 执行命令ipv4-family unicast,进入IPv4单播地址族视图。
- 执行命令reflect change-path-attribute,使能路由反射器通过出口策略修改BGP路由的路径属性。
反射器上使能reflect change-path-attribute命令后,通过出口策略修改路由路径属性的配置即可生效。其中,可以生效的配置包括:
- 执行apply as-path命令修改BGP路由的AS-Path属性。
- 执行apply comm-filter delete命令删除BGP路由的团体属性。
- 执行apply community命令修改BGP路由的团体属性。
- 执行apply large-community命令修改BGP路由的Large-community属性。
- 执行apply cost命令修改BGP路由的开销,也就是修改BGP路由的MED值。
- 执行apply ip-address nexthop命令修改BGP路由的下一跳。
- 执行apply local-preference命令修改BGP路由的本地优先级。
- 执行apply origin命令修改BGP路由的Origin属性。
- 执行apply extcommunity命令修改BGP路由的VPN-Target扩展团体属性。
执行apply extcommunity soo { site-of-origin } &<1-16> additive命令修改BGP路由的SoO扩展团体属性。
路由反射器上使能reflect change-path-attribute后,peer route-policy export命令比peer next-hop-invariable命令和peer next-hop-local命令的生效优先级高。
- 执行命令commit,提交配置。