Hello Manni Negi
Current Traffic Flow
- Forward Path:
- Internet User → WAF → Azure Public Load Balancer → VM1
- The source and destination change as expected since the WAF acts as a reverse proxy.
- Return Path:
- VM1 → WAF → Internet User This works because the WAF expects return traffic at its IP address (3.3.3.3).
What Does the UDR Do?
You mentioned the VM’s route table has 0.0.0.0/0 → Internet.
This means all outbound traffic from VM1 bypasses Azure’s default system routes and goes directly to the Internet via the default gateway, such as the Azure fabric or a specified next hop like a firewall/NVA.
Impact on Return Path
- Normally, VM1 would send return traffic to the Azure LB frontend IP (10.10.10.10) due to SNAT and session persistence.
- With the UDR set to Internet, VM1 will not send traffic through the Azure LB or WAF. Instead:
- It attempts to route directly to 3.3.3.3 (WAF public IP) over the Internet.
This disrupts the expected flow because:
- The source IP is VM1’s private IP (192.168.1.1), which isn’t routable on the Internet.
- The WAF will drop the packet since it expects return traffic from the LB, not directly from VM1.
Result
- Traffic will not go to the Azure LB frontend IP.
- It will attempt to go out to the Internet, causing asymmetric routing and session issues.
- RDP/HTTP sessions may break due to the inconsistent return path.
Best Practice
- Do not set 0.0.0.0/0 → Internet on the VM unless a NAT gateway or firewall is handling SNAT.
- If outbound Internet access is needed, use:
- Azure NAT Gateway or
- Keep the default system route so return traffic flows through the LB/WAF as expected.
- Azure NAT Gateway or
Reference Article:
- https://v4.hkg1.meaqua.org/en-us/azure/load-balancer/load-balancer-outbound-connections
- https://v4.hkg1.meaqua.org/en-us/azure/virtual-network/virtual-networks-udr-overview
Would you like me to create a diagram illustrating the correct routing for forward and return paths with and without UDR?
Or should I also add a recommended UDR configuration for WAF and LB scenarios?
I hope this has been helpful!
If the above is unclear or you are unsure about something, please add a comment below.