![如何按照 AWS 中的约束将流量从 VPC 路由到另一个 VPC](https://linux22.com/image/731998/%E5%A6%82%E4%BD%95%E6%8C%89%E7%85%A7%20AWS%20%E4%B8%AD%E7%9A%84%E7%BA%A6%E6%9D%9F%E5%B0%86%E6%B5%81%E9%87%8F%E4%BB%8E%20VPC%20%E8%B7%AF%E7%94%B1%E5%88%B0%E5%8F%A6%E4%B8%80%E4%B8%AA%20VPC.png)
这里我有下图所示的场景,其中有 3 个 VPC。每个 VPC 托管 1 个 VM 和 CSR 1000v,但 VPC2 除外,其中只有 CSR。两个 VPC 的 CSR 都能够通过预配置的 GRE 隧道相互通信。
假设我们有来自另一个 VPC 的流量,该流量需要通过 VPC1 中的 VM1,然后通过 VPC3 中的 VM2。流量必须首先从 VM1 传递,然后路由到 CSR1(VPC 内的通信)。之后,使用 GRE 隧道,它被路由到 VPC2 中的 CSR2,然后从那里发送到 VM2,最后发送到 VPC3 中的 CSR3。
我无法找到如上所述将即将到来的流量从一个 VPC 路由到另一个 VPC 的方法。
假设我们有需要通过以下实例(VM1、VM3 然后 VM2)的流量,并在 CSR3 处结束。在 VPC1 中,CSR1 接收来自 VM1 的流量,然后通过 GRE 隧道 1 将其发送(链路 2)到 CSR2。CSR2 本身通过 GRE 2 将其发送(链路 3)到 CSR3。从 CSR3,流量(链路 4)通过 GRE 3 发送到 VPC4 中的 VM3,然后 VM3 本身将其发送(链路 5)到 CSR4,后者将通过 GRE 3 将其发送回 VM2(链路 6)。最后,VM2 将流量(链路 7)转发到其最终目的地 CSR3。如果我们可以看到,GRE 隧道 3 已通过两次,而这正是要实现的,隧道被多次通过。