先成为有效路由,成为有效路由之后再根据选路原则选出来的最优路由可以加入到IP路由表。 路由器还通过其它路由协议学习到了相同的路由,且路由的优先级比BGP 的路由的优先级高。 设备配置了 bgp-rib-only 命令,该命令用来禁止 BGP 路由下发到 IP 路由表。
下一跳不可达会存在 BGP路由表中,但是无效的路由。开启同步后,如果IGP中没有该路由就会不加表。
路由不加表通常是指的是路由不加BGP路由表。
如果此路由的下一跳不可达,忽略此路由(本地优化)。 如果是 VPNv4 的路由,无法迭代到下一跳对应的隧道,或者隧道不是/32 位掩码,则此路由不进客户的实例路由或者不传给EBGP的邻居 。
当 BGP 应用于复杂的网络环境时,路由振荡十分频繁。为了防止频繁的路由振荡带来的不利影响,BGP 使用路由衰减来抑制不稳定的路由。 路由振荡指路由表中添加一条路由后,该路由又被撤销的过程。当发生路由振荡时,设备就会向邻居发布路由更新,收到更新报文的设备需要重新计算路由并修改路由表。所以频繁的路由振荡会消耗大量的带宽资源和 CPU 资源,严重时会影响到网络的正常工作。 在 BGP 进程中开启了 dampening 命令使能了路由振荡抑制(默认未使能), BGP 的震荡抑制使用惩罚值来衡量一条路由的稳定性,惩罚值越高则说明路由越不稳定。路由每发生一次振荡,即路由器收到该路由的 withdraw 报文或者收到该路由的属性更新的update报文时,BGP便会给此路由增加一定的惩罚值(1000)。当惩罚值超过抑制阈值(默认 2000)时,此路由被抑制,不加入到IP路由表中,路由器也不再向其他 BGP 对等体发布更新报文。BGP会将该路由的“best”标志去掉。
正常情况下如果路由传递出现环路就会从 EBGP 收到和自己 AS 号相同的路由, 收到后会丢弃该路由。但是在 Hub-Spoke 模型是场景中,需要 PE 接收从本 PE 的另一个实例通告出去的路由,这时需要使用命令 peer allow-as-loop xx,允许接收 AS 重复的路由。
在 RR 的场景中,如果路由经过反射后又传回本路由器,路由的 Originator ID 为自己。在同一集群中的多个 RR 配置相同的 Cluster ID,备份RR在进行路由反射的时候,会收到对方 RR 反射的路由携带的 Cluster ID 和自己的相同。
邻居的 BGP 路由表中不是最优的 做了路由过滤 防环机制的存在导致自己无法接收路由