That's what I needed to hear!
If you use the full domain name of a server behind a router/firewall that has a local address, there is a routing loop...
You send to mail.domain.biz (eg 123.456.789.111), the firewall finds the server and routes you to www01 at eg 10.x.x.1
www01 sees an incoming mail request from www002's local ip 10.x.x.2, knows it is local and sends it's reply locally, directly...
Problem occurs when www02 gets a reply from 10.x.x.1 rather than 123.456.789.111 & drops it...
I have tried various iptables snat/dnat rules to get around this, but found the easiest was to install dnsmasq
This uses the firewall/router's /etc/hosts file to help resolve names.
In there I place all the used url names against the local ip number of each www~ machine.
Then place a redirect rule for dns requests from local connections to use dnsmasq on 127.0.0.1
dnsmasq will use the dns nameservers listed in /etc/resolv.conf