我们先了解一下实验条件以及实验拓扑的搭建
第一步:配通全网路由(这里我们以1为例子)
第二步:在AS2上跑IGP也就是ospf,在s之间运行BGP
第三步:在12 、45之间建立EBGP关系,在AS2之间跑IBGP关系
12之间建立EBGP关系这里我们以2为例
AS2之间跑IBGP关系这里我们以3为例
45之间跑EBGP关系,这里我们以4为例,重点是以环回建邻要注意BGP默认TTL值为1,要将其改为2才能通
第四步:宣告环回(以1为例)
接下来查看BGP表,我们发现除了1优以外,3,4上不优,无法实现加表
解决方案:因为AS-by-AS规则,我们需要将2上所传路由改为本地,34上即可优
第五步:此时因为IBGP水平分割机制,4上无法学习到AS1传递过来的路由。因此我们需要解决IBGP上的水平分割机制(解决方案:让2和4建邻)这里我们以2为例
第六步:此时因为2传给4,此时4不优,因此针对R4我们需要将R2上的下一跳也改为自己
结果:
第七步:我们将5的环回宣告后发现传递无法加表(逻辑悖论,因为学习BGP所以手写静态,现在BGP要传5的静态路由,解决方案:将静态写为32为5的路由即可),我们在5上加一个环回99.1.1.1 24,在EBGP将IBGP传递路由的同时,IBGP因为水平分割问题无法传递,因此这时我们要在4上修改其传递路由的下一跳为自己
在5上添加环回并宣告,以及在4上宣告去3时下一跳为自己的环回
逻辑悖论修改方法:
第八步:我们在2,3,4上进入BGP2分别宣告自己的环回,此时便达到了其他所有环回均可相互访问的条件