BGP-eBGP多跳解析

2018年7月2日22:09:57BGP-eBGP多跳解析已关闭评论
BGP eBGP多跳解析
1.拓扑结构
BGP-eBGP多跳解析

2.配置概述:

(1) 如上图所示,IP地址规划方面,R1/R2上有一环回接口loopback 0,地址为X.X.X.X/32(其中X 为路由器编号,如R1的环回口loopback 0地址为1.1.1.1/32),路由器互联的接口为192.168.AB.X/24(其中AB为路由器编号叠加,X为路由器编号,如R1连接R2的接口S0/0的地址为192.168.12.1/24).
(2)R1/R2分别属于2个AS,分别是AS 100,AS 200,配置BGP,R1与R2形成eBGP的邻居关系(采用 loopback 0作为更新源)R1/R2配置到达对方的loopback 0的静态路由;
3.配置解析:
(1) R1上的关键配置:
router bgp 100
no synchronization
neighbor 2.2.2.2 remote-as 200
neighbor 2.2.2.2 ebgp-multihop 2
推理:R1与R2建立eBGP关系,默认发出包的TTL值为1,数据包发送到R2时,需要将TTL值减1,那么此时TTL=0,如果将数据包发送到R2的本地接口IP,则数据包可被接收(如本例中的loopback 0),如果要将此数据包发送给R2的下一跳路由器,则由于TTL=0被丢弃,按照这种推断, R1/R2建立eBGP是没有问题的,但是实验中就是无法建立邻居关系;
解析:其实没有配置eBGP多跳导致邻居关系建立不起来的关键原因不是TTL值的问题,而是默认情况下路由器有直连检测功能,如果发现建邻居的地址不是本地的直连地址,那么则不发送数据包,自然邻居无法建立,可以在BGP进程下采用neighbor x.x.x.x disable-connected-check命令关闭直连检测功能;
追问:为什么配置了eBGP多跳之后,邻居建立正常?
解析:由于配置了eBGP多跳之后,多跳的条件覆盖了直连检测的功能,那么将不做直连检测,neighbor x.x.x.x disable-connected-check(默认开启直连检测功能);
 
4.disable-connected-check官方命令解析:
BGP-eBGP多跳解析