我已经多年没有使用过openbgpd了,因此,我将为您提供一些可以应用于您的配置的理论。
供应商可以向您发送路线。通常,他们将发送“默认”,“客户”或“完整”。默认路由就是这样,即向您宣布0.0.0.0/0,您知道通过它们达到0.0.0.0/0(任何IP)。您的情况听起来像是两个提供商都在为您提供一条默认路由,最有可能的是,具有较低ASN的提供商正在获取所有流量(当数据包可以到达多个目的地并且AS路径相等时,ASN是决胜局。长度等)。
一个“客户”提要会让他们宣布与他们直接相连的每条路线。如果您拥有像Level3这样的提供商,则可能会通过此供稿看到一半的互联网。如果您的其他提供商的ASN较低,则他们将获得未直接连接到对等端的任何流量,从而宣布其到达您的客户路线。
“完整”提要将为提供商知道如何到达的每个站点提供路由通告,而不仅仅是直接连接的站点。
您应该能够执行以下操作:
显示ip bgp摘要(IOS命令)
其中应列出某处收到的前缀数量。
如果两个现有提供商都向您发送默认路由,则当前已建立您的连接以进行故障转移。提供商A掉线,然后您将路由到提供商B。如果您从这两个提供商中获取客户供稿以及默认路由,则流量将流到具有到达指定地址的最短ASpath的提供商,并且会回退到默认地址路由,如果找不到地址。如果您从这两个提供商那里获得了完整的Feed,则取决于提供商之间的重叠情况,您可以将流量从“最佳”路径发送到每个提供商。
在我们的其中一个边界路由器上,我显示了310540个活动路由,请确保您有足够的RAM,并且配置了计算机以处理来自两个提供商的路由(如果您采用完整的路由)。您可能会尝试从这两者获取客户路线,直到您感到更舒适为止。或从两者中较小的提供商那里获取客户路线,然后看情况如何变化。
这仍然不会根据负载量“负载均衡”或平均分配流量。您可能会发现,一个提供商仍然获得最大份额的流量。此时,您需要做一些前缀/路由映射,以调整流量以偏向一个或另一个对等端。
一旦设置了路由映射或ASN匹配以转移流量,如果目标站点断开,并且其路由已从该提供程序中删除,您的路由器仍会将流量发送到其他连接。BGP具有自我修复功能。
我们要做的是定义了一些基于ASN匹配的地图。
PROVIDER_A_TO PROVIDER_A_THROUGH PROVIDER_B_TO PROVIDER_B_THROUGH
与使用社区相比,瞻博网络使此操作变得更容易,但是您可以选择两者之一。
我们的前缀列表可查看目的地是否为特定的ASN,如果是,则通过_TO映射。如果ASN在_THROUGH中列出,则它将首选该提供程序。由于我们的提供商之一直接连接到AT&T,因此PROVIDER_B_THROUGH在7018 | 7019(以及其他一些ASN)上进行匹配,因此AT&T流量默认为提供商B。即使AT&T可以从两者访问,我们还是希望通过提供商B发送。
我确定openbgpd具有类似的方法。