0
点赞
收藏
分享

微信扫一扫

企业网络入门-了解抓包BGP协议

现在大多网络运营商都是通过BGP协议与自身的AS号来实现多线互联的。

BGP的线路还有较好的拓展性和融合性,能够实现和其它运营商之间的互访互通,从而实现单IP的多线路优势。


BGP简介:


BGP协议是外部网关协议,目前使用最多的版本是BGP-4,通常简写为BGP。


企业网络入门-了解抓包BGP协议_外部网关协议



BGP协议特点:


1、BGP是一种外部网关协议,其着眼点不在于发现和计算路由,而在于控制路由的传播和选择最佳路由。

2、BGP使用TCP作为其传输层协议(端口号179),提高了协议的可靠性。

3、BGP是一种距离矢量路由协议,在设计上就避免了环路的发生。

4、BGP提供了丰富的路由策略,能够实现路由的灵活过滤和选择。

5、BGP采用触发式增量更新,而不是周期性的更新。


企业网络入门-了解抓包BGP协议_网络技术_02



BGP协议的建立


有两个必要条件

1、两个路由器指定建立对等体的地址必需可达。

2、TCP连接能够建立。


企业网络入门-了解抓包BGP协议_网络技术_03


企业网络入门-了解抓包BGP协议_网络技术_04


参考文章:

https://cloud.tencent.com/developer/article/1922673


BGP报文


BGP存在5种不同类型的报文,分别是open、update、notification、keepalive、route-refresh。


企业网络入门-了解抓包BGP协议_BGP协议_05


BGP抓包报文


由于BGP一般使用者是运营商或者是大型跨国企业,所以这个包在实际中不好抓取。

在ENSP中抓包。


企业网络入门-了解抓包BGP协议_外部网关协议_06


先使用TCP三次握手建立链接。


企业网络入门-了解抓包BGP协议_外部网关协议_07


我们来看看BGP的open message报文


企业网络入门-了解抓包BGP协议_网络技术_08


字段解释:

1、Marker:16Byte,用于标明BGP的边界,所有的bit均为“1”

2、Length:2Byte,BGP总报文长度(包括报文头)

3、Type:1Byte,BGP报文的类型。其取值从1到5,分别表示open、update、notification、keepalive、route-refresh报文。

4、当前版本为4

5、AS号为200

6、BGP的标识为2.2.2.2


企业网络入门-了解抓包BGP协议_网络技术_09


之后这个option是BGP路由信息条目中可携带的参数


企业网络入门-了解抓包BGP协议_网络技术_10


看看update message报文


企业网络入门-了解抓包BGP协议_外部网关协议_11


一个Update报文可以通告具有相同路径属性的多条路由,这些保存在NLRI(网络层可达信息)中。


企业网络入门-了解抓包BGP协议_BGP协议_12


keepalive message报文


企业网络入门-了解抓包BGP协议_网络技术_13


仅仅维持邻居关系


企业网络入门-了解抓包BGP协议_外部网关协议_14


路由更新报文

Route-refresh报文用于要求对等体重新发送指定地址族的路由信息,一般是本地修改了相关的路由策略,让对方重新发送update报文。


BGP通告原则


1、从IBGP对等体获得的BGP路由,BGP设备只传递给它的EBGP对等体。

2、从EBGP对等体获得的BGP路由,BGP设备传递给它所有EBGP和IBGP对等体(对等体是IBGP只能传递一跳,对等体是EBGP则不限制)

3、当存在多条到达同一目的地址的有效路由时,BGP设备只将最优路由发布给对等体

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

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

6、所有EBGP对等体在传递过程中下一跳改变

7、所有IBGP对等体在传递过程中下一跳不变(需要特别注意)

8、默认EBGP传递时 TTL值为1(需要特别注意)

9、默认IBGP传递时 TTL值为255

更多的规则,实际中碰到再查询手册。


END



举报

相关推荐

0 条评论