We use the 2nd address from the subnet to serve Dnsmasq for IPv4 dns
queries. The problem is, dnsmasq also uses that address to communicate
with the upstream dns servers. That results in a packet with a source
address as the private ip (2nd address of the subnet) AND we were not
NATting it. Therefore, we never got the response back when we use the
IPv4 Upstream DNS server. This was not visible to the VM because it was
querying dnsmasq in parallel for all the available addresses AND Dnsmasq
was responding them, whichever comes first, was accepted.
Now, we start to properly NAT the DNS queries as well, this way, dnsmasq
can properly communicate with upstream dns servers.