Hello,
dnsmasq on IPFire is great, but I have been using a local DNS caching server. It allows me to run a DNS ad and tracker blocker as well as allowing fine-grained control over which devices can resolve which categories (and custom block rules). I find this very helpful in combination with firewall rules in IPFire.
For example I can use a wide-ranging ad block rule but have an allow list for specific URLs on my media streaming device (an Apple TV) as those URLs appear to be required for specific streaming services.
Further along this tangent, it would be nice if IPFire could allow the option of applying rules for DNS names as many commercial Firewalls do. I recognise it would be only as secure as your downstream DNS source, but with DoT and (limited adoption of) DNSSEC hopefully it wouldn’t add much risk.
The name resolver ( DNS server) in IPFire is unbound!
If you use block and allow lists for name resolution with your local ‘DNS caching server’ ( what program? ), this can be done with Unbound also ( using RPZ lists ).
The solution with IPFire as DNS server is more straight-forward, IMO. The target for name resolution is mainly the ‘internet’ ( the device which provides access to it = IPFire ). A config with a separate DNS server in the local network may be more errorprone.