使用 NVA 的 Azure Expressroute 强制隧道

Azure Express route forced-tunneling with NVA

我想在 Azure 中设置强制隧道。所有发往互联网的流量都应路由到本地并从那里退出互联网。

来自 Azure 子网的所有流量都将转到 NVA,然后从那里路由到本地或另一个 vNET。

问题是从本地到 Azure 的流量如何?我希望该流量也通过 NVA cisco 防火墙。由于网关子网不支持具有 Express 路由设置的 0.0.0.0/0 UDR,因此如何实现。

您对设置的初步理解是正确的。您必须通过 BGP 将默认路由 0.0.0.0/0 从您的本地发布到 Azure,以便您的所有 Azure 流量都通过 ExpressRoute 发送到您的本地。为了通过 NVA 过滤所有流量,您可以在所有子网(NVA 子网除外)上添加带有 0.0.0.0/0 的 UDR,下一跃点作为您的 Cisco 防火墙 NVA。

此设置将负责从 Azure 到本地的路由,如下所示: 所有子网 --> Cisco NVA --> ExpressRoute 网关 --> 本地。

现在回到您关于 return 流量的问题,是的,GatewaySubnet 不支持 0.0.0.0/0 UDR,但它支持具有其他地址前缀的 UDR。

因此,您可以将 UDR 添加到 ExpressRoute GatewaySubnet,其中包含您的 Vnet 范围的地址前缀以及下一跃点类型虚拟设备和 Cisco NVA 的 IP 地址。这将确保任何来自本地的 Azure Vnet 范围的流量在到达 ExpressRoute 网关时都将转发到 Cisco NVA。

例如:如果您的 Vnet 地址范围是 10.0.0.0/16,那么您可以将 UDR 添加到您的 ExpressRoute GatewaySubnet,如下所示: 地址前缀:10.0.0.0/16 --> Next hop = Virtual Appliance --> Next hop = Cisco NVA 的 IP 地址 因此,从本地到 Azure 的路由将如下所示: 本地 --> ExpressRoute 网关 --> Cisco NVA --> 所有子网。