多宿主 BGP 和 NAT

网络工程 bgp 纳特
2021-07-05 16:52:38

我的目标是构建以下网络(由于宽度可能需要在新选项卡中打开图像):

样本网络

  • 假设这些 BGP 链接是不同的 ISP
    • 向两个 ISP 通告相同的 ASN
    • 站点通过专线互连
    • 仅限 BGP 默认路由
    • 我们有一个 /24(公共地址空间)
    • 编辑:我应该补充一点,我们已经在 siteA 上用 BGP 广告这个 /24。所以我本质上是想添加 SiteB
  • 服务器 1 可通过 NAT 在 Internet 上访问

我的问题:无论客户端通过哪个 ISP,我都希望通过相同的公共 IP 公开服务器 1。因此,我假设公认的方法是在两个路由器上使用相同的 NAT 规则?这可能吗?这有什么缺点?

2个回答

这不会像你描述的那样工作。每个连接都有属于您的 ISP 的公共 IP。您将需要公共 IP 空间(通常称为 PI 空间 - 独立于供应商),您可以通过 BGP 同时向您的两个 ISP 做广告。

您描述的设置在两个连接之间没有共享公共地址,并且您的 ISP 不会路由彼此的地址,因此您所描述的是一个服务器,它可以通过两个不同 IP 地址的两个网络访问。NAT 规则无法为您解决这个问题。

提供者拥有 /24。我们已经在使用我们现有位置“站点 1”的空间

如果没有权利向两个不同的上游宣布 IP 块,就没有解决问题的好方法。你要么需要:

  • 提供商独立的 IPv4 地址空间(现在几乎不可能获得)
  • 交换给您的 IPv4 地址
  • 专门使用 IPv6(可能不是一个选项)

我会要求 /24 地址的所有者将它们 SWIP 给您许多供应商乐于这样做,因为他们有可能将部分主干流量卸载到另一家供应商,同时仍向您收取相同的接入电路费率。

在提供商 SWIP 为您提供地址并且您拥有自己的 ASN 之后,您完全有权向另一个上游宣布相同的地址块。正如我在超链接评论中提到的,当您从大型提供商处获得地址并且您通过较小的提供商进行双归属时,这种安排往往会更有效。大型提供商乐于卸载流量,小型提供商乐于拥有额外的业务。

如果您向不同的 ISP 宣布相同的 /24 地址块,我认为 NAT 没有意义。