实验十六 BGP协议基本配置

边界网关协议BGP(Border Gateway Protocol)是一种实现自治系统AS(Autonomous System) 之间的路由可达,并选择最佳路由的距离矢量路由协议。

  • 自治系统AS (Autonomous System)
  • AS是指在一个实体管辖下的拥有相同选路策略的IP网络。BGP网络中的每个AS都被分 配 一个唯一的AS号,用于区分不同的AS。
  • BGP的运行方式:



BGP默认路由如何产生 bgp路由协议配置_网络


  • EBGP:运行于不同AS之间的BGP称为EBGP。为了防止AS间产生环路,当BGP设备接收EBGP 对等体发送的路由时,会将常有本地AS号的路由丢弃。
  • IBGP:运行于同一AS内部的BGP称为IBGP。 为了防止AS内产生环路, BGP默认启用同步规 则,即BGP设备不将从IBGP对等体学到的路由通告给其他IBGP对等体, 缺省需要与所有IBGP 对等体建立全连接才能实现AS内部各IBGP设备间的路由互通。为了解决IBGP对等体的连接数 量太多的问题,BGP设计了路由反射器和BGP联盟。
  • BGP同步规则:
  • 如果你的AS需要将一 个AS内路由转发给其它AS,必须确定本AS内的IGP路由已经学 得你将要通告至其它AS的路由。
  • 也就是说,在转发一 条路由条目给其它EBGP邻居前,必须确定本AS内IGP路由表中已 有这条路由。


BGP默认路由如何产生 bgp路由协议配置_网络_02


  • 比如上图中:RTC如 将170.10. 0. 0路由通过 EBGP传给RTA,RTA 在将这条路由转给RTB 时,是通过TCP协议进行传递,其下一跳地址为2.2.2.1。
  • 这样, 如果没有同步规则存在时, RTB会不加思考地将它继续转发给RTD。 这样,如果 RTD想发送数据给170.10.0.0 时,首先会交由RTB,RTB下一步将数据转给RTE,但是RTE 上只运行了IGP协议,IGP中并没有到170.10. 0. 0的路径,所以数据包将在E处被丢弃。
  • 如果同步规则存在,那么在RTB上的IGP路山表中没有170.10. 0. 0存在时, 它不得将 此路由转发给其它任何BGP邻居。避免了路由黑洞的形成。
  • 解决方法:
  • 1)Full -mesh解决
  • 在E上也跑1个BGP, 并且与A和B建立IBGP邻居关系, 通过IBGP学习到170.10.0.0 的路由条目。
  • 2)路由反射器
  • 3)BGP联盟
  • 其中路由反射器和 BGP联盟由于篇幅和考试范围的原因,在此不扩展介绍,有兴趣可以自行研究学习。
  • BGP的路由器号(Router ID)
  • BGP的RouterID是一个用于标识BGP设备的32位值,通常是IPv4地址的形式,在BGP会话 建立时发送的Open报文中携带。对等体之间建立BGP会话时,每个BGP设备都必须有唯一的Router ID,否则对等体之间不能建立BGP连接。
  • BGP的RouterID在BGP网络中必须是唯一的,可以采用手工配置,也可以让设备自动选取。缺 省情况下,BGP选择设备上的Loopback接口的IPv4地址作为BGP的Router ID。如果设备上没有配 置Loopback接口, 系统会选择接口中最大的IPv4地址作为BGP的Router ID。一旦选出RouterID,除非发生接口地址删除等事件,否则即使配置了更大的地址,也保持原来的RouterID。

网络拓扑图:


BGP默认路由如何产生 bgp路由协议配置_Powered by 金山文档_03


配置要求 :

采用如下的思路配置BGP的基本功能:

  • 在RouterB、RouterC和RouterD间配置IBGP连接。
  • 在RouterA和RouterB之间配置EBGP连接。

操作步骤

1、配置各接口的IP地址

#配置R1、R2、R3、R4


BGP默认路由如何产生 bgp路由协议配置_BGP默认路由如何产生_04


BGP默认路由如何产生 bgp路由协议配置_网络_05


BGP默认路由如何产生 bgp路由协议配置_路由表_06


BGP默认路由如何产生 bgp路由协议配置_Powered by 金山文档_07


配置IBGP连接

#配置R2


BGP默认路由如何产生 bgp路由协议配置_BGP默认路由如何产生_08


#配置R3


BGP默认路由如何产生 bgp路由协议配置_BGP默认路由如何产生_09


#配置R4


BGP默认路由如何产生 bgp路由协议配置_运维_10


3、配置EBGP

#配置R1


BGP默认路由如何产生 bgp路由协议配置_网络_11


#配置R2


BGP默认路由如何产生 bgp路由协议配置_Powered by 金山文档_12


#查看BGP对等体的连接状态


BGP默认路由如何产生 bgp路由协议配置_BGP默认路由如何产生_13


可以看出,R2到其他路由器的BGP连接均已建立

配置R1发布路由172.16.60.0/24

#配置R1发布路由


BGP默认路由如何产生 bgp路由协议配置_路由表_14


#查看R1路由表信息


BGP默认路由如何产生 bgp路由协议配置_Powered by 金山文档_15


#查看R2的路由表


BGP默认路由如何产生 bgp路由协议配置_运维_16


#查看R3的路由表


BGP默认路由如何产生 bgp路由协议配置_网络_17


说明: 从路由表可以看出,R3虽然学到了AS65008中的172.16.60.0/24的路由,但因为 下一跳59.74.112.2不可达,所以不是有效路由。

5、配置BGP引入直连路由

#配置R2


BGP默认路由如何产生 bgp路由协议配置_运维_18


#查看R1的BGP路由表


BGP默认路由如何产生 bgp路由协议配置_网络_19


#查看R3的路由表


BGP默认路由如何产生 bgp路由协议配置_网络_20


可以看出,到172.16.60.0/24的路由变为有效路由,下一跳为R1的地址

#使用Ping进行验证


BGP默认路由如何产生 bgp路由协议配置_Powered by 金山文档_21