{ config, ... }: let net = { gateway = "10.13.0.1"; subnet = "10.13.0.0/16"; }; in { virtualisation.podman = { autoPrune = { enable = true; }; defaultNetwork.settings = { ipv6_enabled = true; dns_enabled = true; subnets = [ net ]; }; }; virtualisation.containers.containersConf = { settings = { network = { default_subnet = net.subnet; }; }; }; services.resolved.dnsDelegates.podman = { Delegate = { DNS = net.gateway; Domains = [ "dns.podman" ]; }; }; assertions = [ { assertion = (config.virtualisation.podman.defaultNetwork.settings.dns_enabled && config.services.dnsmasq.enable) -> config.services.dnsmasq.settings.bind-interfaces != true; message = "Need to use bind-interfaces in dnsmasq when using dns in a podman network"; } ]; }