{ config, lib, ... }: { options.ngp.lan.networks = lib.mkOption { type = lib.types.listOf lib.types.str; description = "systemd-networkd units that use Misaki for LAN DNS."; }; config = { services.resolved.enable = true; # Route CoreDNS zones to Misaki instead of DHCP or Tailscale DNS. systemd.network.networks = lib.genAttrs config.ngp.lan.networks (_: { dns = [ "192.168.1.3" ]; domains = [ "~packetlost.dev" "~ngp.computer" "~plex.bz" "~steamcontent.com" ]; dhcpV4Config.UseDNS = false; dhcpV6Config.UseDNS = false; ipv6AcceptRAConfig.UseDNS = false; }); }; }