I have a hub and spoke architecture where an azure firewall is in the hub and is our chosen NVA for traffic management. With appropriate routing tables in place all traffic passes through the Azure firewall to our on prem datacenter and back.
However, at the moment we are using on prem datacenter DNS servers for name resolution. When these requests go through the firewall I see ALLOW statements on the firewall logs, but the traffic gets dropped. I cannot do name resolution using an on prem DNS server.
I can't even psping a DNS server (eg psping -t 10.x.x.x:53 the packets say ALLOW from the VM doing the PSPING to the address on prem through the firewall logs, but I get NO response. I can psping the same DNS server on another port (3389) for example, and see ALLOW statements in the Azure firewall.
With no route tables in place, just the VPN connection on prem, I am able to PSPING the DNS servers on port 53 and able to get name resolution working. It's only when I have the Azure firewall as the NEXT hop for any traffic that the port 53 traffic gets dropped.
if I configure the Azure firewall to be DNS proxy, which is in PREVIEW, and use only the Azure DNS resolver (not my on prem DNS) I'm able to resolve internet addresses, but not on prem DNS names.
The only rule I have in place on the Azure firewall is a network rule, that allows sources to all destinations on all ports. I have also configured an all sources to all destinations rule on port 53 traffic, and still get no PSPING or NSLOOKUP response from clients going through the firewall.
We've destroyed and recreated this firewall twice now, same results.
Please tell me I'm missing something simple, and the problem is with my configuration and NOT azure firewall. I can find NO documentation that the azure firewall will drop traffic on port 53 if it sees it.