BGP实验--BGP路由反射器
2026-02-08
网络
00
请注意,本文编写于 55 天前,最后修改于 5 天前,其中某些信息可能已经过时。

目录

实验任务
实验步骤
(1)互联接口、换回口IP地址配置
(2)配置AS 64511的OSPF
(3)配置IBGP对等体
(4)配置路由反射器
(5)验证Originator_ID实现路由防环
(6)验证Cluster_List实现路由防环
实验包

​ AR1、AR2上的Loopback 1接口分别为10.1.1.1/24、10.2.2.2/24,用于模拟用户网段

​ 所有设备均使用Loopback 0地址为BGP Router ID,AR1与AR2、AR2与AR3、AR3与AR4、AR4与AR2之间基于直连接口建立IBGP对等体关系,其中AR1为AR2的路由反射器客户端,AR2为AR3的路由反射器客户端,AR3为AR4的路由反射器客户端

实验任务

  1. 设备基础IP地址配置
  2. 配置AS内的OSPF,在互联接口、Loopback 0接口上激活OSPF
  3. 配置AS内基于直连接口建立IBGP对等体关系
  4. 配置路由反射器,将AR1配置为AR2的客户端、AR2为AR3的客户端、AR3为AR4的客户端
  5. 在AR2上将Loopback 1接口路由发布到BGP,观察Originator_ID属性如何实现路由防环
  6. 在AR1上将Loopback 1接口路由发布到BGP,观察Cluster_List属性如何实现路由防环

实验步骤

(1)互联接口、换回口IP地址配置

展开代码
[AR1]interface GigabitEthernet 0/0/0 [AR1-GigabitEthernet0/0/0]ip address 10.0.12.1 24 [AR1-GigabitEthernet0/0/0]q [AR1]interface LoopBack 0 [AR1-LoopBack0]ip address 10.0.1.1 24 [AR1-LoopBack0]q [AR1]interface LoopBack 1 [AR1-LoopBack1]ip address 10.1.1.1 24 [AR1-LoopBack1]q [AR1] [AR2]interface GigabitEthernet 0/0/0 [AR2-GigabitEthernet0/0/0]ip address 10.0.12.2 24 [AR2-GigabitEthernet0/0/0]q [AR2]interface GigabitEthernet 0/0/1 [AR2-GigabitEthernet0/0/1]ip address 10.0.23.2 24 [AR2-GigabitEthernet0/0/1]q [AR2]interface GigabitEthernet 0/0/2 [AR2-GigabitEthernet0/0/2]ip address 10.0.24.2 24 [AR2-GigabitEthernet0/0/2]q [AR2]interface LoopBack 0 [AR2-LoopBack0]ip address 10.0.2.2 24 [AR2-LoopBack0]q [AR2]interface LoopBack 1 [AR2-LoopBack1]ip address 10.2.2.2 24 [AR2-LoopBack1]q [AR2] [AR3]interface GigabitEthernet 0/0/0 [AR3-GigabitEthernet0/0/0]ip address 10.0.23.3 24 [AR3-GigabitEthernet0/0/0]q [AR3]interface GigabitEthernet 0/0/1 [AR3-GigabitEthernet0/0/1]ip address 10.0.34.3 24 [AR3-GigabitEthernet0/0/1]q [AR3]interface LoopBack 0 [AR3-LoopBack0]ip address 10.0.3.3 24 [AR3-LoopBack0]q [AR3] [AR4]interface GigabitEthernet 0/0/0 [AR4-GigabitEthernet0/0/0]ip address 10.0.34.4 24 [AR4-GigabitEthernet0/0/0]q [AR4]interface GigabitEthernet 0/0/1 [AR4-GigabitEthernet0/0/1]ip address 10.0.24.4 24 [AR4-GigabitEthernet0/0/1]q [AR4]interface LoopBack 0 [AR4-LoopBack0]ip address 10.0.4.4 24 [AR4-LoopBack0]q [AR4]

(2)配置AS 64511的OSPF

展开代码
# AR1配置 [AR1]ospf 1 router-id 10.0.1.1 [AR1-ospf-1]area 0.0.0.0 [AR1-ospf-1-area-0.0.0.0]network 10.0.12.1 0.0.0.0 [AR1-ospf-1-area-0.0.0.0]network 10.0.1.1 0.0.0.0 [AR1-ospf-1-area-0.0.0.0]q [AR1-ospf-1]q [AR1] # AR2配置 [AR2]ospf 1 router-id 10.0.2.2 [AR2-ospf-1]area 0.0.0.0 [AR2-ospf-1-area-0.0.0.0]network 10.0.12.2 0.0.0.0 [AR2-ospf-1-area-0.0.0.0]network 10.0.23.2 0.0.0.0 [AR2-ospf-1-area-0.0.0.0]network 10.0.24.2 0.0.0.0 [AR2-ospf-1-area-0.0.0.0]network 10.0.2.2 0.0.0.0 [AR2-ospf-1-area-0.0.0.0]q [AR2-ospf-1]q [AR2] # AR3配置 [AR3]ospf 1 router-id 10.0.3.3 [AR3-ospf-1]area 0.0.0.0 [AR3-ospf-1-area-0.0.0.0]network 10.0.3.3 0.0.0.0 [AR3-ospf-1-area-0.0.0.0]network 10.0.23.3 0.0.0.0 [AR3-ospf-1-area-0.0.0.0]network 10.0.34.3 0.0.0.0 [AR3-ospf-1-area-0.0.0.0]q [AR3-ospf-1]q [AR3] # AR4配置 [AR4]ospf 1 router-id 10.0.4.4 [AR4-ospf-1]area 0.0.0.0 [AR4-ospf-1-area-0.0.0.0]network 10.0.4.4 0.0.0.0 [AR4-ospf-1-area-0.0.0.0]network 10.0.34.4 0.0.0.0 [AR4-ospf-1-area-0.0.0.0]network 10.0.24.4 0.0.0.0 [AR4-ospf-1-area-0.0.0.0]q [AR4-ospf-1]q [AR4]

在AR2、AR3上查看OSPF邻居的概要信息

展开代码
<AR2>display ospf peer brief

​ OSPF邻居已经全部正常建立

在AR4上查看OSPF路由表

展开代码
<AR4>display ospf routing

​ AR4已经学习到全网的路由

(3)配置IBGP对等体

​ 配置AS内基于Loopback 0接口建立IBGP对等体关系

展开代码
[AR1]bgp 64511 [AR1-bgp]router-id 10.0.1.1 [AR1-bgp]peer 10.0.12.2 as-number 64511 [AR1-bgp]q [AR1] [AR2]bgp 64511 [AR2-bgp]router-id 10.0.2.2 [AR2-bgp]peer 10.0.12.1 as-number 64511 [AR2-bgp]peer 10.0.23.3 as-number 64511 [AR2-bgp]peer 10.0.24.4 as-number 64511 [AR2-bgp]q [AR2] [AR3]bgp 64511 [AR3-bgp]router-id 10.0.3.3 [AR3-bgp]peer 10.0.23.2 as-number 64511 [AR3-bgp]peer 10.0.34.4 as-number 64511 [AR3-bgp]q [AR3] [AR4]bgp 64511 [AR4-bgp]router-id 10.0.4.4 [AR4-bgp]peer 10.0.24.2 as-number 64511 [AR4-bgp]peer 10.0.34.3 as-number 64511 [AR4-bgp]q [AR4]

在AR2、AR3上检查IBGP对等体状态

展开代码
<AR2>display bgp peer

​ AS内的对等体关系已经建立

(4)配置路由反射器

展开代码
# AR2上将AR1配置为路由反射器 [AR2]bgp 64511 [AR2-bgp]peer 10.0.12.1 reflect-client # AR3上将AR2配置为路由反射器 [AR3]bgp 64511 [AR3-bgp]peer 10.0.23.2 reflect-client # AR4上将AR3配置为路由反射器 [AR4]bgp 64511 [AR4-bgp]peer 10.0.34.3 reflect-client

(5)验证Originator_ID实现路由防环

​ 在这个步骤中,我们将在AR2上发布BGP路由10.2.2.0/24,并观察该路由依次经过路由反射器AR3、AR4反射后,被通告回AR2从而引发潜在路由环路风险的情况

​ 缺省情况下,AR2发布BGP路由后,该路由将被AR2直接通告给AR4,另一方面也会通过AR3反射给AR4,现在AR4将优先选择AR2直接通告过来的路由,从而不会再将AR3反射过来的路由在反射回给AR2。为此,我们需要在AR2上部署路由策略,使AR2不直接向AR4通告10.2.2.0/24路由

展开代码
# 配置路由策略 [AR2]acl number 2000 [AR2-acl-basic-2000]rule 5 permit [AR2-acl-basic-2000]q [AR2]route-policy bgp deny node 10 Info: New Sequence of this List. [AR2-route-policy]if-match acl 2000 [AR2-route-policy]q # 在BGP中调用路由策略 [AR2]bgp 64511 [AR2-bgp]peer 10.0.24.4 route-policy bgp export # 在AR2上发布路由 [AR2]bgp 64511 [AR2-bgp]network 10.2.2.0 24

在AR2上查看BGP路由10.2.2.0/24的明细信息

展开代码
<AR2>display bgp routing-table 10.2.2.0 24

​ 该条路由只通告给了AR1、AR3,没有通告给AR4

在AR3上查看BGP路由10.2.2.0/24的明细信息

​ AR3将来自反射器客户端的BGP路由10.2.2.0/24反射给了10.0.34.4(AR4),同时该BGP路由的nexthop为10.0.23.2

在AR4上查看BGP路由10.2.2.0/24的明细信息

​ 该条路由来自反射器客户端AR3,原始路由经由AR3反射,路由的nexthop地址并未改变,同时AR3为其添加Orginator_ID属性,值为10.0.2.2,同时AR4将该条路由反射给了AR2

再次在AR2上查看BGP路由10.2.2.0/24的明细信息

​ AR2上依旧只存在本地通告的BGP路由,没有AR4通告的BGP路由

在AR2上查看BGP对等体10.0.24.4的详细信息

​ 从输出信息可以看到AR2从AR4收到了1个Update报文,未向AR4发送Update报文(路由策略限制),但是本地BGP路由表中不存在有AR4通告的BGP路由10.2.2.0/24

在AR2上出发入方向的软复位,让AR4重新发送Update报文

展开代码
<AR2>refresh bgp 10.0.24.4 import

再次查看AR2上Update报文收发数量

展开代码
<AR2>display bgp peer 10.0.24.4 verbose | in Update

​ 接收的Update保温数量增加,AR2从AR4收到了BGP路由10.2.2.0/24的通告

再次查看AR2上BGP路由10.2.2.0/24的明细信息

​ 依旧只有本地发布的1条BGP路由,AR4通告的BGP路由Orginator_ID属性值与本地Router ID一致,AR2忽略了该条路由

(6)验证Cluster_List实现路由防环

​ 为了方便观察,取消AR2上的BGP路由发布,在AR2上将Loopback 1接口路由发布到BGP,观察Cluster_List如何防止路由环路

取消AR2上的BGP路由发布

展开代码
[AR2]bgp 64511 [AR2-bgp]undo network 10.2.2.0 255.255.255.0 [AR2-bgp]q [AR2]

在AR1上将Loopback 1接口路由发布到BGP

展开代码
[AR1]bgp 64511 [AR1-bgp]network 10.1.1.0 24 [AR1-bgp]q [AR1]

依次在AR1、AR2、AR3、AR4上查看BGP路由10.1.1.0/24的明细信息

展开代码
<AR1>display bgp routing-table 10.1.1.0 24

​ AR1作为BGP路由10.1.1.0/24的始发者,AR1将路由通告给了AR2(10.0.12.2)

​ 来自路由反射器客户端AR1的BGP路由10.1.1.0/24,AR2将其反射给了AR3(10.0.23.3)

​ 来自路由反射器客户端AR2的BGP路由10.1.1.0/24,AR2反射时添加了Cluster_List属性,值为10.0.2.2,AR3将该条路由反射给了AR4(10.0.34.4)

​ 来自路由反射器客户端AR3的BGP路由10.1.1.0/24,AR3反射时添加了Cluster_List属性,值为10.0.3.3,10.0.2.2。AR4将该条路由反射给了AR2(10.0.24.2)

再次查看AR2的BGP路由表

​ AR2的BGP路由表上依旧只有一条来自10.0.12.1的BGP路由10.1.1.0/24

在AR2上查看BGP对等体10.0.24.4的详细信息

展开代码
<AR2>display bgp peer 10.0.24.4 verbose

​ AR2从AR4上收到了4个Update报文,未向AR4发送Update报文(路由策略限制),但是本地BGP路由表中没有AR4通告的BGP路由10.1.1.0/24

在AR2上触发软复位,让AR4重新发送Update报文

展开代码
<AR2>refresh bgp 10.0.24.4 import

再次查看AR2上的Update报文收发数量

展开代码
<AR2>display bgp peer 10.0.24.4 verbose | in Update

​ 接受的Update报文数量增加,AR2从AR4收到了BGP路由10.1.1.0/24的通告

再次查看AR2上BGP路由10.1.1.0/24的明细信息

​ 依旧只有来自AR1通告的1条BGP路由,AR4通告的BGP路由其Cluster_List属性值中包含了ARdenCluster_ID,AR2忽略了该路由

实验包

路由反射器imghttps://www.alipan.com/s/TeRgappWWop

本文作者:zzz

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!