如果公共 IP 固定到单个 AS,BGP 任播如何工作?

tur*_*nvh 11 networking anycast bgp network-security

我的理解是,公共 IP 块是从IANA分配的,它将子块分配给RIR,将子块分配给 ISP,将子块分配给各个AS,如以下问题所述:IP 地址实际上是如何分配的?

这(以及本页之类的资源)似乎意味着 1 个公共 IP 到 1 个 AS 的映射。

然而,任播似乎是通过从多个位置广告相同的公共 IP 地址来工作的,提供到该 IP 的不同路径。例如:

如果公共 ip 应该解析为单个 AS,则任播如何工作?

  • 这是否是一种黑客行为,您假装在进行 BGP多宿主/多路径并在流量通过 AS 时抓取流量(正如此处暗示的那样:https : //serverfault.com/a/728609/148476)?
  • 是否只是每个 AS 1 个 IP 的“规则”的一个例外?
  • 或者也许我只是错过了一些东西......

Sha*_*den 11

AS 不一定要限制在单个物理位置。

任播时,您在许多物理位置运行路由器,每个路由器都与不同的 ISP 作为同一个 AS 对等,向任播 IP 地址通告路由。

从 BGP 的角度来看,它与您在一个站点中为来自 AS 的多个 ISP 的冗余所做的工作并没有太大不同;在“一个站点,多个 ISP”的情况下,一台路由器发送“我是 AS X,我的 IP 范围是 Y!” 到多个 ISP;在任播中,您只是指示地理上不同的路由器全部通告它们自己几乎相同的“我是 AS X,我的 IP 范围是 Y!” 向他们自己的 ISP 发送消息,声明您的 AS 和您的任播范围,并让 BGP 选择最佳 ISP 将流量发送到。

ISP 不知道有什么不同。互联网没有意识到各种可用路径不只是通向同一个高度冗余的站点。


小智 5

前缀的 IP 地址或 Internet 路由不要求来自单个 AS。ASN 分配给组织,地址也分配给组织。ARIN 等注册商不会将我的地址分配与我的 ASN 分配联系起来。即使在像资源公钥基础设施这样的新系统中,它仍然允许多个 AS 发起到网络的路由。 Team Cymru 页面在常见问题解答中说:

在某些情况下,网络前缀将由多个但不同的网络或自治系统宣布。最可能的原因是所谓的“多宿主”。这是完全正常的。根据您对 Internet 拓扑和始发网络策略的看法,这些始发网络之一将是使用相关网络块发送和接收流量的首选路径。

这是当前从多个 AS 通告的网络的(长)列表

至于它如何到达目的地:使用BGP 路径选择算法选择路由,该算法根据流量通过的每个路由器所知道的信息来选择路径。Internet 上的每个路由器都有自己的路由表视图,因此 Internet 一部分中的流量可能会与 Internet 另一部分中的流量最终到达不同的位置和 AS。甚至不需要让流中的每个数据包都去同一个地方,这显然可以在任播或多宿主的情况下使事情变得有趣。