Ok, I am getting close on this, but am still puzzled about what is happening. The Windows boxes on my lan have their DNS reference pointing to the dnsmasq box (192.168.112.51), and the dnsmasq box only has the pfSense gateway/firewall box (192.168.112.11) listed in its /etc/resolve.conf file, and therefore is fowarding all DNS queries to the pfSense box. The pfSense box has DNS resolver enabled. In the System/General Setup there are two upstream DNS servers from my provider, and one public DNS server from Google. The Disable DNS Forwarder box on the General Setup page is not checked. Therefore 127.0.0.1 shows as the first DNS server on the dashboard page.
The EasyList sites are blocked when queried from the pfSense box.
nslookup ad.doubleclick.net
Server: 127.0.0.1
Address: 127.0.0.1#53
Name: ad.doubleclick.net
Address: 10.10.10.1
If I query the same site from a test Linux box on the local network I get the same results.
[root@disect ~]# nslookup ad.doubleclick.net
Server: 192.168.112.51
Address: 192.168.112.51#53
Name: ad.doubleclick.net
Address: 10.10.10.1
If I query the same site from a Windows box on the local network I get a different result. I even made sure to flush the Windows dns cache before doing the query.
C:\Users\jeffb> nslookup ad.doubleclick.net
Server: taxa.mei.lan
Address: 192.168.112.51
Name: dart.l.doubleclick.net
Address: 216.58.216.134
Aliases: ad.doubleclick.net
So I started a Wireshark trace on the Windows box to see what was happening. Below is the summary of the final two sets of packets from the query and response exchange.
1267 6.512617000 192.168.112.101 192.168.112.51 DNS 78 Standard query 0x0004 A ad.doubleclick.net
1269 6.513636000 192.168.112.51 192.168.112.101 DNS 94 Standard query response 0x0004 A 10.10.10.1
1271 6.524775000 192.168.112.101 192.168.112.51 DNS 78 Standard query 0x0005 AAAA ad.doubleclick.net
1273 6.525384000 192.168.112.51 192.168.112.101 DNS 78 Standard query response 0x0005
A traceroute to ad.doubleclick.net from the Windows box shows that it initially goes to the pfSense box, then goes out to an IP of my upstream provider, then on to obtain the correct DNS number.
From the Wireshark data it appears that DNS is returning the virtual IP of 10.10.10.1 for the DNS block list. Searching the Wireshark data I can not see the address that the Windows box is showing at the command line response to the nslookup (216.58.216.134) anywhere. So I don't understand why the Windows box is getting the correct DNS address for this site, while a Linux box on the lan, and the pfSense box are both returning the virtual IP for the block list. What else should I be looking for, or looking at? Thanks.
Jeff