I have Pi-Hole running on an IP within my LAN network. In order for Pi-Hole to record the client ips and not just pFsense, I have specified the Pi-Hole ip for the DNS in the LAN DHCP DHCP interface.
I would assume your pi-hole isn’t the LAN address and it is a specific IP address. You’ll need to set your allow DNS rule to the destination IP of your pi-hole.
Also instead of having 2 rules you can have 1 rule. All you need to do is on your block rule do an invert on the destination IP of your pi-hole. Then remove the allow DNS rule.
So basically you are saying in your rule “block LAN NET to access to anything that is not your pi-hole IP.”
You can ignore what I said. The above rule does work. In all my testing I had removed Pi Hole from the DHCP dns setting so ofcourse I was been blocked,