Coming back to this after I had to re-build my machine...
My config files:
/etc/dnsmasq.conf
interface=tun0
server=/MYDOMAIN.com/10.8.0.1
server=/mail.MYDOMAIN.com/10.8.0.1
listen-address=127.0.0.1,10.8.0.1
bind-interfaces
no-dhcp-interface=tun0
/etc/openvpn/server.conf:
push "dhcp-option DNS 10.8.0.1"
/etc/resolv.conf
domain MYDOMAIN.com
search MYDOMAIN.com
nameserver 127.0.0.1
nameserver 10.8.0.1
nameserver PUBLIC IP OF NS
nameserver PUBLIC IP OF NS
/etc/hosts
127.0.0.1 localhost localhost.localdomain
<PUBLICIP> MYDOMAIN.com MYDOMAIN
10.8.0.1 MYDOMAIN.com mail.MYDOMAIN.com MYDOMAIN
From the Windows client, while connected to VPN:
nslookup mail.MYDOMAIN.com
Server: UnKnown
Address: 10.8.0.1
*** UnKnown can't find mail.MYDOMAIN.com: No response from server
nslookup google.com
Server: UnKnown
Address: 10.8.0.1
*** UnKnown can't find google.com: No response from server
from the server:
root@MYDOMAIN:/etc/apache2# nslookup mail.MYDOMAIN.com
Server: 127.0.0.1
Address: 127.0.0.1#53
Name: mail.MYDOMAIN.com
Address: 10.8.0.1
root@MYDOMAIN:/etc/apache2# nslookup google.com
Server: 127.0.0.1
Address: 127.0.0.1#53
Non-authoritative answer:
Name: google.com
Address: 74.125.225.16
Name: google.com
Address: 74.125.225.17
Name: google.com
Address: 74.125.225.18
Name: google.com
Address: 74.125.225.19
Name: google.com
Address: 74.125.225.20
From the Windows client, if I ping mail.MYDOMAIN.com, I get the public IP of the machine. If I change my c:\windows\system32\drivers\etc\hosts file to add:
10.8.0.1 mail.MYDOMAIN.com, everythign works. However, I'd like to get it to work without having to modify my hosts file.