{ lib, config, ... }: { services = { dnsmasq = { enable = false; # try some other options first settings = { cache-size = 10000; # Specifies the size of the DNS query cache. It will store up to n cached DNS queries to improve response times for frequently accessed domains. server = [ "9.9.9.9" "149.112.112.112" ]; domain-needed = true; # Ensures that DNS queries are only forwarded for domains that are not found in the local configuration. bogus-priv = true; # Blocks DNS queries for private IP address ranges to prevent accidental exposure of private resources. no-resolv = true; # Prevents dnsmasq from using /etc/resolv.conf for DNS server configuration. # configure DHCP server; get leases by running: `cat /var/lib/dnsmasq/dnsmasq.leases` dhcp-range = [ "br-lan,172.16.10.50,172.16.10.254,24h" ]; interface = "br-lan"; dhcp-host = "172.16.10.1"; # local sets the local domain name to "n". Combinded with expand-hosts = true, it will add a .local suffix to any local defined name when trying to resolve it. local = "/local/"; domain = "local"; expand-hosts = true; no-hosts = true; # Prevents the use of /etc/hosts. This ensures that the local hosts file is not used to override DNS resolution. address = "/booping.local/172.16.10.1"; }; }; }; }