通过 BGP 两次向 IPVPN 通告相同的前缀

网络工程 bgp 瞻博网络 mpls-vpn
2021-07-22 07:44:52

我可以访问两个不同站点的某个 /25 前缀。这些站点通过 EBGP 将 /25 通告到 L3 IPVPN (MPLS)。我是 AS-path 在这些网站的广告之一之前添加它,使其成为 /25 的“备份”路径。但是,参与此 L3 IPVPN 的远程站点仅通过 EBGP 学习其中一个路由/路径。如何将这两个路由/路径安装到远程站点的路由表中?

我已经进行了一个测试,我在这两个站点上发布了 2.2.2.2/32,并得到了相同的结果。当我从其中一个站点中删除广告时,该路由仍保留在路由表中。当我停止从两个站点对其进行广告时,它只会从远程站点路由表中消失。当其中一个站点停止广告时,学习路线的持续时间不会改变,这表明我的提供商似乎让另一个站点的广告通过。

这些是运行 12.1 代码的瞻博网络设备。

2个回答

BGP 只选择一条路径放入路由表。听起来您的 MPLS 实际上按您的计划工作。您在路由表中有主站点。当它宕机时,BGP 会将备份站点插入到路由表中。

如果你输入

show route protocol bgp

在远程站点,您应该会在 BGP 表中看到两条路由。

要将来自两个站点的两条路由同时安装在远程站点中,MPLS VPN 的典型解决方案是在连接您站点的 PE 上使用不同的路由标识符。这是一种让 BGP 子系统考虑不同的两条路由的方法。

您可以使用不同的as:numberRD,也可以使用PE-loopback:local-idRD。

要做到后者,在 JunOS 上,您可以让 JunOS 自动分配一个PE-loopback:local-idRD,只需在全局配置中指定route-distinguisher-id 1.2.3.4under routing-options(使用 1.2.3.4 您的 PE 环回),而不是route-distinguisher在路由实例配置中指定

(另一种方法是启用添加路径扩展,但对于 MPLS VPN,使用不同的 RD 更简单)