I've set up a test domain to experiment with windows server 2012.
Initially I kept my test machines on a isolated network, but today I installed a pfsense machine to route some traffic to the internet.
Upon establishing the internet connection I realized that recursive DNS lookups did not work in my brand new domain, even though 'Use root hints if no forwarders are available' was checked and I could use nslookup to connect to (one of) the root hints.
I tried adding google's resolvers (188.8.131.52 and 184.108.40.206) as forwarders and that got DNS working for non-local records.
I removed the forwarders to google. I then removed the three default forwarders (fec0:0:0:ffff::1, fec0:0:0:ffff::2, fec0:0:0:ffff::3) and the server was able to use the root hints properly.
My router/internet access is only ipv4, so the only ipv6 traffic I'd expect is domain local.
Is it supposed to be necessary to remove the ipv6 forwarders for the server to do recursive lookups, or is there some configuration I am missing?