分析BGP协议(EBGP/IBGP)

一、基本概念

AS:自治系统

BGP 主要用于AS之间路由传递的.

AS号码范围:1-65535  私有AS号码范围:64512-65535

BGP与IGP的区别:a、IGP比较灵活,如ospf可以根据接口来设置不同的进程,但一个路由只能属于一个AS只能配置一个BGP,IGP选择AS内最佳路由,BGP选择AS间最佳路由。详细区别可以参考百科https://wenku.baidu.com/view/7ac228da33d4b14e85246856.html

以下场合适合使用BGP

- 多个IGP(或一个区域较大的IGP)域构造的一个大型网络,通过 BGP互联这些域.

- 需要复杂的路由策略进行控制域之间的路由传递.

- ISP之间互联时,需要在不同的AS之间传递庞大的路由. - 当域内同时运行了多种IGP时,多种IGP的相互重分发的难度远大 于配置BGP

BGP状态

建立BGP会话时,BGP拥有以下的状态:

1. Idle:查找路由表,该过程BGP对它的资源进行初始化,复位一个连接重试计 时器,发起一条TCP 连接,并开始倾听远程对等体所发起的连接.

扫描二维码关注公众号,回复: 9796369 查看本文章

2. Connect:找到路由表后进行TCP三次握手,TCP 连接成功,则转到 OpenSent状态,TCP连接失败,则转到active 状态,将尝试再次连接.

3. Open sent:三次握手成功后发送Open message消息,等待其对等体发送打 开消息,如果出错,则发送一条出错消息并退回空闲状态,如果无错,则开 始发送Keepalive 并复位keepalive 计时器.

4. Open confirm:收到对方发来的Open消息,如果收到keepalive 消息, BGP 就进入established状态,邻居关系协商完成;如果系统收到一条更新 或keepalive 消息,它将重新启动保持计时器;如果收到Notification消息, BGP 就退回到空闲状态.  o另外,如果没有对Open消息的回应,则路由器进入active状态.

5. Established:会话建立,邻居关系协商过程最终状态;这时BGP将开始与它 的对等体交换路由更新数据包.

下图为BGP debug出来的相应建立关系状态

IBGP(内部BGP)

当BGP邻居是运行在同一个AS里面的,它们的BGP关系就叫做IBGP、IBGP无需是直连的网络邻居设备就可以通过TCP建立起IBGP邻接关系,当然中间建立的TCP关系,一般是IGP协议承载的,如OSPF、ISIS等。

neighbor命令用于激活BGP邻居关系,邻居IP地址是eBGP时为与邻居BGP路由器直连链路的接口IP地址,邻居IP地址是iBGP时为邻居BGP路由器的Loopback接口IP地址。

总结:

BGP 是一个路径矢量路由协议,即增强型的距离矢量路由协议:

1.可靠地更新信息:通过TCP 179端口发送.

2.BGP使用单播传递路由信息

3.路由信息第一次是整表发送,以后只进行增量触发更新

4.通过周期性发送keepalive消息(相当于Hello包)来维护BGP

5.对等体之间的TCP邻接关系 (每60s发送一次,Holddown时间为180s

 

BGP的三个表:

BGP邻居表(Neighbor table):存放邻居信息。

 

BGP转发表(Forwarding database):

1. 存放所有从邻居学到的网络信息

2. 可存放多条到达同一目的网络的路径

3. 每条路径都包含BGP属性

 

BGP路由表(IP routing table):存放到达目的网络的最佳路由

发布了18 篇原创文章 · 获赞 1 · 访问量 667

猜你喜欢

转载自blog.csdn.net/wj2555111/article/details/103985347