BGP同步规则:开启同步下,从IBGP收到一条路由不会传给任何EBGP邻居(实验效果IBGP邻居和EBGP邻居都不传),除非从自身的IGP中也学到这条路由。目的是防止AS内部出现路由黑洞,向外部通告了一个本AS不可达的虚假的路由。
同步规则只影响从IBGP邻居收到的路由,不影响从EBGP邻居收到的路由。在开启同步的情况下,从IGP中没有收到这条路由,在自身BGP表中不是best的路由,也不会装进自己的路由表。即使配置为路由反射器后,也不会反射给任何客户端(反射器只反射最优路由)
实验场景说明:R1,R2,R3,R4属于同一个AS10,R5属于AS20,R3分别和R1,R4建立IBGP邻居,并且R3是路由反射器。R3和R5建立EBGP邻居。R2不运行BGP。
R1上发布一条1.1.1.1/32的路由进BGP中 ,在R3的BGP进程中开启同步, R3收到的1.1.1.1/32这条路由不是best路由,也不会装进R3的路由表中,不会传给R4和R5。如果关闭同步后,R3传递给R5,在R5上数据包访问1.1.1.1的方向: R5给R3,R3给R2,R2收到数据包,由于目的地址不可达丢弃数据包。此现象称为路由黑洞。
假设从R5发布一条5.5.5.5/32进BGP中,由于R3和R5之间是EBGP邻居,所以R3收到后不会被同步规则影响
1.1.1.1/32由于没有满足同步规则,没有打>号,而5.5.5.5/32仍然是best的路由,R3会把5.5.