BGP路由技术-全网互通

网友投稿 391 2022-10-14


BGP路由技术-全网互通

BGP的定义

特点:

1、能承受大批量的路由信息,支持大规模网络

!2、使用TCP作为传输层协议(监听端口时179,),提高了协议的可靠性。

3、是外部路由协议(EGP)。在AS间传递数据,对稳定性要求非常高,因此使用TCP协议来保证BGP的稳定可靠性

4、BGP的对等体之间必须逻辑上连通,并进行TCP连接。目的端口号为179,本地端口号任意

(只要双方建立TCP连接的关系,就能被称为对等体)

!5、BGP对等体与IGP不同。 BGP对等体是指用TCP协议建立连接的两端。而非与IGP同概念的直连邻居,只需要TCP能建立连接的不一定需要直连(就是对等体关系)

!6、BGP自身只负责控制路由,数据转发依然靠IGP路由或者静态路由

7、BGP支持无类别域间路由CIDR(支持子网划分)

!8、路由更新的时候BGP只发送更新的路由(不会整表发送)。大大减小了BGP传播路由所占用的带宽,适用internet上传播大量的路由协议

9、BGp是一种增强的距离矢量路由协议,从设计上避免了环路的发生(BGp中也有避免环路存在的措施)

!10、AS之间BGP通过携带AS-pass协议信息标记途径的as,带有本地AS号的路由将被丢弃,从而避免域间防环

!11、as内部,BGP在AS内学到的路由不会再通告给AS内的BGP邻居,避免了AS内部产生环路(路由只在AS内部只跳一次,来防环)

12、BGP提供了丰富的路由由策略,(支持12种选路属性)能对路由进行灵活的过滤和选择

13、提供了防止路由震荡的机制(防止衰减),有效提高了网络稳定性

14、易于扩展,能适应ipv4的组播与单播,主要通过VLT进行扩展

BGP分类

1、运行方式分类:

EBGP(运行在不同AS之间的BGP)——AS之间BGP通过携带AS-pass协议信息标记途径的as,带有本地AS号的路由将被丢弃,从而避免域间防环

IBGP(运行于同一AS内部的BGP)——as内部,BGP在AS内学到的路由不会再通告给AS内的IBGP对等体,避免了AS内部产生环路,并与所有IBGP对等体建立全连接

BGP的路由器号

1、是一个用于标识BGP设备的32位值,通常是ipv4的地址形式。在BGP会话建立时发送的open报文中携带。对等体之间建立BGP会话时,每个BGP设备都必须携带一个唯一的router id,否则对等体之间不建立BGP连接

BGP的工作原理:

(5种报文,6个状态机、9个原则)

BGP的报文,keepalive报文是周期性发送,其余报文为触发式发送

1、open报文:协商对等体的各项参数(建立TCP连接后发送的第一个报文)

2、update报文:用于在对等体之间交换路由信息用的

3、notification报文:用于中断BGP连接的

!4、keepalive报文:用于保持BGP连接用的(周期性发送),以及响应收到正确的open报文

5、router-refresh报文:用于改变路由策略后软复位BGP路由表请求对等体重新发送路由器信息(只有支持router-refresh的BGP路由才会发送和响应该报文) {软复位刷新路由使用}

BGP的状态机

空闲(Idle)、连接(connect)、活跃(active) 、open报文已发送(opensent)、open报文已确认(openconfirm)、连接已经建立(established)

1、Idle:BGP初始状态,BGP拒绝邻居发送连接请求,只有在收到本设备的start后,BGP才尝试和其他BGP对等体进行TCP连接,并转至连接状态

2、在connect状态下,BGP启动连接重传定时器,并等待TCP完成连接

如果TCP连接成功,BGP向对等体 发送open报文并转至opensent状态

如果失败就转入active状态重连

如果超时的话会尝试和其他BGP进行tcp连接,本BGP返回连接状态

3、opensent状态下等待接受对等体的open报文

如果收到正确的open报文则发送keepalive报文确认,随后转入openconfirm

如果收到open报文错误或者其他报文,则会发送notification报文,随后返回Idle状态

4、openconfirm状态等待对等体的keepalive报文或者notfifcation报文

收到keepalive报文后进入established

如果收到notfifcation报文,则进入Idle

5、established下可以和对等体交换update报文、keepalive报文、router-refresh报文、notification报文

收到正确的keepalive报文、update报文,认为对等体处于正常的工作状态,保持BGP连接

收到错误的keepalive报文、update报文,那么发送notification报文通知对等体,本bgp转至Idle

如果收到notification报文,那么本BGP转至Idle状态

如果收到TCP拆链通知,那么BGP断开连接,转至Idle状态

BGP对等体间的交互原则

BGP设备将最优路由加入到路由表当中,形成BGP路由表,BGP设备与对等体之间建立邻居关系后,采取以下交互原则

1、从IBGP对等体获得的BGP路由,只会发布给它的 EBGP对等体

2、EBGP对等体获得的BGP路由,BGP设备发布给它所有EBGP和IBGP对等体

3、当存在多条到达同一目的的有效路由时,BGP只会选择最佳路线发送给对等体

4、路由更新时,BGP只会发送更新的路由设备

5、所有对等体发送的路由,BGP都会接受

6、所有EBGP对等体在传递中下一跳改变(TTL默认值为1,指令的时候记得改数值)

7、所有IBGP在传递过程中下一跳不变(TTL默认值为255)

建立对等体注意点

1、直连建议对等体需要注意的点

建立IBGP的时候记得让下一跳可达,处于边界的IBGP对等体需要将下一跳对准自己。这样才能建立IBGP对等体

2、用环回口建立邻居关系的时候需要注意的点

需要修改更新源,默认更新源是物理口改成环回接口。建立IBGP对等体时候记得让下一跳可达。处于边界的IBGP对等体需要将下一跳对准自己。这样才能建立IBGP对等体

建立EBGP对等体的时候因为默认ttl只有1.因此在建立EBGP对等体时候需要将跳数修改至2或者以上

3、为什么要用环回接口建立邻居关系。

环回接口稳定,只要路由器启动着。环回接口就不会关闭。而物理接口会因为多种因素影响导致对等体1的关系有问题。所以一般BGP对等体都是用环回口来建立对等关系

指令:华为

配置建立邻居关系

R1为AS 100的ASBR路由,绑定了loopback 1.1.1.1

R3为AS 100的路由,绑定了loopback 3.3.3.3

R2是AS 200的ASBR路由,绑定了loopback 2.2.2.2

bgp 100 ;创建BGP编号100(就是AS100)此外以下都在BGP-100环境下配置

配置本AS100

router-id 1.1.1.1 ;R1的环回loopback的ip

peer 3.3.3.3 as-number 100;指定对等体环回与AS(本AS的)

peer 3.3.3.3 connect-interface loopback 0;指定对等体环回与AS(本AS的)

peer 3.3.3.3 next-hop-local;让AS100内的对等体下一跳对准R1(ASBR)

配置AS200

peer 2.2.2.2 as-number 200;指定对等体环回与AS(对面as200的)

peer 2.2.2.2 connect-interface loopback 0;指定对等体环回与AS(对面as200的)

peer 2.2.2.2 ebgp-max-hop 2 ;建立EBGP对等体,将跳数修改至2或者以上

宣誓环回/ip地址(宣告本AS所有的环回/IP,以及EbGP对等体的环回/ip地址

net 1.1.1.1

net 2.2.2.2

net 3.3.3.3

ps:(对面R2,as200也是如此配置。之后可行程BGP全网互通)

综上配置步骤:

1、配置IP和as内的IGP

2、配置BGP对等体

3、EBGP最大跳数大于等于2

4、在边界IBGP给IBGP对等体配置下一跳的时候指向自己

5、EBGP之间的配置静态路由,目标ip指向回环网卡ip

6、在EBGP之间宣告自己AS的回环ip\ip地址(网段、ip)以及EBGP对等体的回环ip\ip地址(网段、ip)


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java面向对象基础教学(一)
下一篇:BGP之基本概念与配置
相关文章

 发表评论

暂时没有评论,来抢沙发吧~