BGP 在连接的虚拟网络上发布路由

BGP 在连接的虚拟网络上发布路由

我有 2 个虚拟网络(相同订阅),一个位于澳大利亚(10.2.0.0/18),另一个位于英国(10.2.64.0/18)。虚拟网络相互连接,连接到每个虚拟网络的虚拟 PC 可以相互 ping 通。

单击此处查看拓扑

我的 AU vnet 也通过 ExpressRoute 电路连接到我的本地路由器,并且我可以从我的本地网络 ping 我的 AU vnet 中的虚拟 PC,并且连接到 ExpressRoute 的本地路由器的路由表显示通过 ExpressRoute 到我的 AU vnet 的路由。

但是,我的本地路由器根本没有学习到通往英国虚拟网络的路由。我希望它能通过澳大利亚虚拟网络学习到通往英国虚拟网络的路由。而英国虚拟网络似乎没有学习我的本地路由器所公布的任何路由。

现在有趣的是,如果我通过 ExpressRoute 线路在我的本地路由器上创建到英国虚拟网络的静态路由,并尝试 ping 或跟踪到英国虚拟网络,则 ExpressRoute 线路 Azure 端的路由器只会向 ping 或跟踪发送“无法访问”回复。因此,看起来 ExpressRoute 线路维护着与所连接虚拟网络不同的路由表,并且路由未在路由表之间分布。

有人知道如何将英国虚拟网络发布的路由发布到我的本地路由器,以及如何将我的本地路由器发布的路由发布到我的英国虚拟网络吗?

答案1

在 AU 和 UK Vnet 之间使用 Vnet 对等连接,这最终将帮助您在两个方向上进行路由广告,并且您的 Vnet 之间的通信将保持不变。

https://docs.microsoft.com/en-us/azure/vpn-gateway/vpn-gateway-peering-gateway-transit

笔记:请删除 UK Vnet 中的 Vnet 网关,以通过 Vnet 对等使用 Transit 路由。

答案2

我的内部部署路由器根本没有学习到英国虚拟网络的路由。

这是一个设计行为,我们不能以这种方式使用 ExpressRoute。因为 Azure 没有路由条目来将外部 IP 路由到另一个 Vnet。(目前,Azure 无法将外部流量路由到另一个 Vnet)

有人知道如何将英国虚拟网络发布的路由发布到我的本地路由器,以及如何将我的本地路由器发布的路由发布到我的英国虚拟网络吗?

我们可以在本地和英国虚拟网络之间建立侧到站 VPN。

相关内容