An Azure service that enables network appliances to exchange route information with Azure virtual networks dynamically.
Hi Peter Stieber,
Welcome to Microsoft Q&A and thank you for posting your query here!
Thank you for detailing your multi-hub Azure Route Server setup. Based on your described architecture, Hub1 with a VPN Gateway connected to a remote site, spoke VNets peered to each hub, and NVAs deployed in both Hub1 and Hub2, you’re seeing correct routing to all spokes and remote networks except direct reachability from Hub1 to the NVA in Hub2.
Root Cause and Azure Routing Limitations
- User-defined routes (UDRs) that use “Virtual Network Gateway” as the next hop type are not supported on subnets within the same VNet as an Azure Route Server or on NVA subnets. When configured, the effective routes show the next hop as None, resulting in blackholed traffic.
- When you enabled BGP propagation on the NVA subnet in Hub1, it restored return routing and connectivity to spokes and remote sites because BGP dynamically learned the correct routes. However, Azure’s internal routing design prevents direct forwarding to the NVA subnet in Hub2, since that subnet’s route isn’t being advertised through a supported next hop. Azure Route Server does not propagate routes learned from a Virtual Network Gateway to other peers or other Route Servers, which is why only the NVA in Hub2 remains unreachable.
- Everything else is reachable because those routes (for spokes and remote networks) are learned via BGP or system routing. The NVA subnet in Hub2 isn’t covered by either and is effectively excluded from the propagation path.
Recommendations
- Ensure each NVA advertises its own subnet and next hop via BGP to the local Route Server. (Use the NVA’s internal IP or load balancer front-end IP as the next hop.)
- Avoid configuring “Virtual Network Gateway” as the next hop in any UDR associated with Route Server or NVA subnets.
- For cross-hub NVA-to-NVA communication, use dedicated overlay tunnels (e.g., IPsec, VXLAN, or GRE) between NVAs, and exchange routes via BGP. This is the recommended approach for multi-hub scenarios to avoid asymmetric paths and blackholing.
- Limit custom UDRs to supported next hop types: VirtualAppliance, VirtualNetwork, or Internet.
References:
i hope the above response is helps, please do let me know if you have any questions on this!
if this response helps clarify your query, kindly consider accepting the answer so others can benefit as well.
Thanks,
Harish.