BGP是做什么的?怎么去配置BGP?

90 篇文章 29 订阅
62 篇文章 16 订阅

我们知道,OSPF、IS-IS等IGP路由协议在组织机构网络内部广泛应用,但随着网络规模扩大,网络中路由数量不断增长,IGP已无法管理大规模网络,AS的概念由此诞生。

AS指的是在同一个组织管理下,使用统一选路策略的设备集合。

不同AS通过AS号区分,AS号存在16bit、32bit两种表示方式,而IANA负责AS号的分发。

当不同AS之间需要进行通信时,在AS之间应使用何种路由协议进行路由的传递?

AS之间需要直连链路,或通过VPN协议构造逻辑直连进行邻居建立。

但AS之间可能是不同的机构、公司之间,相互无法完全信任,使用IGP可能存在暴露AS内部的网络信息的风险。

整个网络规模扩大,路由数量进一步增加,路由表规模变大,路由收敛变慢,设备性能消耗加大,所以我们引出了BGP的概念!

BGP是边界网关协议,它是基于TCP传输的,只要建立TCP连接即可建立BGP。

BGP特点:只传递路由信息,不会暴露AS内的拓扑信息、触发式更新,而不是进行周期性更新、BGP能够承载大批量的路由信息,能够支撑大规模网络。

BGP提供了丰富的路由策略,能够灵活的进行路由选路,并能指导对等体按策略发布路由。

BGP能够支撑MPLS/VPN的应用,传递客户VPN路由。

BGP提供了路由聚合和路由衰减功能用于防止路由振荡,通过这两项功能有效地提高了网络稳定性。

BGP对等体:BGP存在两种对等体关系类型:EBGP及IBGP:

EBGP(External BGP):位于不同自治系统的BGP路由器之间的BGP对等体关系。两台路由器之间要建立EBGP对等体关系,必须满足两个条件:

两个路由器所属AS不同(即AS号不同)。

在配置EBGP时,Peer命令所指定的对等体IP地址要求路由可达,并且TCP连接能够正确建立。

IBGP(Internal BGP):位于相同自治系统的BGP路由器之间的BGP邻接关系。

BGP报文类型:

BGP状态机:

BGP通告规则:BGP通过network、import-route、aggregate聚合方式生成BGP路由后,通过Update报文将BGP路由传递给对等体。

BGP通告遵循以下原则:

只发布最优且有效的路由。

从EBGP对等体获取的路由,会发布给所有对等体。

IBGP水平分割:从IBGP对等体获取的路由,不会发送给IBGP对等体。

BGP同步规则指的是:当一台路由器从自己的IBGP对等体学习到一条BGP路由时(这类路由被称为IBGP路由),它将不能使用该条路由或把这条路由通告给自己的EBGP对等体,除非它又从IGP协议(例如OSPF等,此处也包含静态路由)学习到这条路由,也就是要求IBGP路由与IGP路由同步。同步规则主要用于规避BGP路由黑洞问题。

BGP路由器反射器

由于水平分割的原因,为了保证中转AS200所有的BGP路由器都能学习到完整的BGP路由,就必须在AS内实现IBGP全互联。然而实现IBGP全互联存在诸多短板:

路由器需维护大量的TCP及BGP连接,尤其在路由器数量较多时AS内BGP网络的可扩展性较差,为此可以采用路由反射器技术。

引入路由反射器之后存在两种角色:

RR(Route Reflector):路由反射器

Client:RR客户端

RR会将学习的路由反射出去,从而使得IBGP路由在AS内传播无需建立IBGP全互联。

将一台BGP路由器指定为RR的同时,还需要指定其Client。至于Client本身,无需做任何配置,它并不知晓网络中存在RR。

路由反射规则:

RR在接收BGP路由时:

如果路由反射器从自己的非客户对等体学习到一条IBGP路由,则它会将该路由反射给所有客户

如果路由反射器从自己的客户学习到一条IBGP路由,则它会将该路由反射给所有非客户,以及除了该客户之外的其他所有客户

如果路由学习自EBGP对等体,则发送给所有客户、非客户IBGP对等体。

BGP到底怎么配置呀?

实验拓扑如图:

要求:所有设备Loopback0地址为10.0.x.x/32,其中x为设备编号,所有设备都使用Loopback0地址作为BGP Router ID。

R1、R2、R3属于AS100,AS100内运行OSPF,将所有直连接口宣告进OSPF。

AS100内使用环回口作为发送IBGP报文的源接口,R2作为路由反射器,R3为其客户端。

R4属于AS200,与R3使用互联接口地址建立EBGP对等体,R4将10.4.4.0/24宣告进BGP。

[R1] bgp 100

[R1-bgp] router-id 10.0.1.1

[R1-bgp] peer 10.0.2.2 as-number 100

[R1-bgp] peer 10.0.2.2 connect-interface LoopBack0

[R2] bgp 100

[R2-bgp] router-id 10.0.2.2

[R2-bgp] peer 10.0.1.1 as-number 100

[R2-bgp] peer 10.0.1.1 connect-interface LoopBack0

[R2-bgp] peer 10.0.3.3 as-number 100

[R2-bgp] peer 10.0.3.3 connect-interface LoopBack0

[R2-bgp] peer 10.0.3.3 reflect-client

[R3] bgp 100

[R3-bgp] router-id 10.0.3.3

[R3-bgp] peer 10.0.2.2 as-number 100

[R3-bgp] peer 10.0.2.2 connect-interface LoopBack0

[R3-bgp] peer 10.0.34.4 as-number 200

[R4] bgp 200

[R4-bgp] router-id 10.0.4.4

[R4-bgp] peer 10.0.34.3 as-number 100

[R4-bgp] network 10.4.4.0 24

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值