分析BGP协议(EBGPIBGP)
⼀、基本概念
AS:⾃治系统
AS号码范围:1-65535 私有AS号码范围:64512-65535
以下场合适合使⽤BGP
- 多个IGP(或⼀个区域较⼤的IGP)域构造的⼀个⼤型⽹络,通过 BGP互联这些域.
化纤抽丝- 需要复杂的路由策略进⾏控制域之间的路由传递.
- ISP之间互联时,需要在不同的AS之间传递庞⼤的路由. - 当域内同时运⾏了多种IGP时,多种IGP的相互重分发的难度远⼤ 于配置BGP BGP状态 建⽴BGP会话时,BGP拥有以下的状态:
1. Idle:查路由表,该过程BGP对它的资源进⾏初始化,复位⼀个连接重试计 时器,发起⼀条TCP 连接,并开始倾听远程对等体所发起的连接.
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):存放到达⽬的⽹络的最佳路由
EBGP在ping的时候,下⼀跳没有宣告的话是⽆法Ping通的,所以要指定source来ping