So here's my current setup:
Home:
RV220W
Office:
RV042
I have an IPSEC VPN running fine and dandy. Everything pings. I can manually nslookup to my dns servers over the VPN just fine.
Now, despite what Cisco may claim, RV220W doesn't have a working split DNS. I'm abandoning even trying that method. It's a buggy router, but the VPN works, so I'm going to work with what I have. It's one of only Cisco routers that has Gigabit WAN, Wireless and IPSEC connectivity. The other has slower VPN performance, so I'm staying with it.
At home, I have two Windows 8 desktops that I want to add to the domain to make things easier. Let's ignore PPTP/L2TP/SSDP for now and I just want to work with IPSEC.
I don't have a server here to home to use as a DNS server with conditional forwarding or to replicate the Server 2008 R2 DNS.
I figured it's probably easier to do the split DNS on the two local machines than start killing one of my machine's resources to run a VM.
Now, all I would want is to if a DNS requests *.mydomainname.com, then query 10.0.0.1 and/or 10.0.0.6 (my work's DNS servers).
I haven't found anything in windows that'll let me do that. I came up with is write a service that will query my DNS servers for my domain's forward lookup zone and write that into windows\system32\drivers\etc\hosts
Theoretically, it would work.
I think looked into BIND, but to be honest, I find it far too confusing to use.
I would just want (in pseudocode):
if (domainsuffix == "mydomainname.com")
return: requestedHostname from 10.0.0.1;
else
return: default;
Best Answer
I use dnsmasq for my DNS (and DHCP) server at home; configuration is very straightforward:
server=/somedomain.local/<ip.of.your.work.dns.server>
You can build a tiny Linux virtual machine with
dnsmasq
running on VirtualBox, leave it running all the time; you'll never notice it.