在 Azure 中的 VNet 之间路由流量

Routing traffic between VNets in Azure

如果两个 vnet 通过多组对等 vnet 相互连接,azure 如何路由流量?例如,让我们考虑以下内容:A、B、C、D 是 5 个 VNet,它们是对等互连的(双向,允许流量转发)。

现在如果A要给D发一个包,怎么判断走A-B-C-D路径还是A-E-D路径?

任何文档都会有所帮助。

根据 this article 你需要在某处使用 NVA,vnet 对等互连是不可传递的。

在同一篇文章的开头,他们对此进行了更多讨论。

总结一下。除非您修复网络设置,否则数据包不会从 A 到达 D

据我所知,VNet 对等连接是不可传递的。它似乎仍在路线图上。查看反馈here.

从你的图片来看,如果它们之间只有VNet Peering连接,那么A无法到达D,A也无法到达C。A只能到达直接连接的B和E。

如果要允许多个 VNet 通信。您可以实施 a hub-spoke network topology in Azure. 作为中心网络,您可以部署一个 VPN 网关,然后启用 允许网关传输 到其他分支 VNet 并启用 使用远程网关 在每个辐条 VNet 中。如果您需要分支之间的连接,请考虑在中心实施 NVA 路由,并在分支中使用 UDR(自定义路由)将流量转发到中心。在这种情况下,您必须将对等连接配置为 允许转发流量

VNet 对等互连使您能够通过 Azure backbone 网络连接 VNet。 Azure 自动为 Azure VNet 中的每个子网创建路由 table,并将系统默认路由添加到 table。您还可以使用 custom routes 覆盖某些 Azure 的系统路由。

If multiple routes contain the same address prefix, Azure selects the route type, based on the following priority:

  • User-defined

  • route BGP route

  • System route

您可以获得有关 Virtual network traffic routing

的更多详细信息