An Azure networking service that is used to provision private networks and optionally to connect to on-premises datacenters.
Hello Viktor Garai
Yes, the observed behavior is expected.
With Private Endpoint route-table policies enabled, a UDR covering the PE address can override the normal /32 InterfaceEndpoint route. UDR with Next hop = VirtualNetwork does not restore Private Endpoint reachability, while Next hop = NVA/Azure Firewall does.
That explains:
-
PE /32 -> VirtualNetwork→ fails -
PE /32 -> Firewall→ works - disabling PE route policies → restores the
InterfaceEndpointpath
However, you do not necessarily need per-PE /32 routes.
Instead of:
VNet CIDR -> Firewall Own subnet -> VirtualNetwork
use routes only for the other subnets that must be inspected:
Other-app-subnet-A -> Firewall Other-app-subnet-B -> Firewall
and have no UDR covering the local subnet.
Then:
- same-subnet VM → VM uses the normal VNet system route;
- same-subnet VM → PE keeps the
/32 InterfaceEndpointroute; - traffic to a PE in another subnet is overridden by that destination-subnet UDR and sent through Azure Firewall.
So this same pattern is typical for forcing traffic between subnets in the same vWAN-connected VNet: use UDRs for the specific remote subnet prefix, rather than a VNet-wide route plus a VirtualNetwork exception.
Also, adding the PE /32 to the secured hub Private Traffic Prefixes does not create a same-subnet local exception. Microsoft states that same-VNet PE inspection is controlled with subnet UDRs and Private Endpoint network policies.
And the recommended design is:
Do not use VNet CIDR -> Firewall + own subnet -> VirtualNetwork when VMs and PEs share that subnet. Use destination-subnet routes to the firewall only for the subnets that require inspection.
For PE traffic that actually traverses Azure Firewall, also review SNAT requirements; Microsoft recommends SNAT when inspecting Private Endpoint traffic to avoid asymmetric return-path issues.Yes, the observed behavior is expected.
https://learn.microsoft.com/en-us/azure/private-link/disable-private-endpoint-network-policy
https://learn.microsoft.com/en-us/answers/questions/2183987/network-policy-fails-for-private-endpoint