Issues with CTRLD + NextDNS Profiles
All,
I have searched high and low to try to figure out why my ctrld.toml file is not working appropriately. ALL devices route to <no explicit policy matched, using default routing -> [upstream.0]>.
[service]
log_level = "debug" # "debug" for troubleshooting
log_path = "/tmp/ctrld_debug.log" # optional
discover_dhcp = true
discover_mdns = true
discover_arp = true # ← Explicitly enable discovery (helps MACs)
[listener.0]
ip = "::" # IPv6 wildcard (handles IPv4 too)
port = 5354
name = "Routing Policy"
networks = [
{ "network.4" = ["upstream.3"] }, # Kids first (MAC or CIDR)
{ "network.2" = ["upstream.1"] }, # IoT
{ "network.3" = ["upstream.2"] }, # Guest
{ "network.1" = ["upstream.0"] }, # Home/Parents
{ "network.0" = ["upstream.0"] } # Default
]
# Upstreams – using standard DoH3 for NextDNS
[upstream.0]
name = "Parents"
type = "doh3" # or "doh" if you want to test
endpoint = "https://dns.nextdns.io/####"
timeout = 5000 # ms, optional but good default
[upstream.1]
name = "IoT"
type = "doh3"
endpoint = "https://dns.nextdns.io/####"
timeout = 5000
[upstream.2]
name = "Guest"
type = "doh3"
endpoint = "https://dns.nextdns.io/####"
timeout = 5000
[upstream.3]
name = "Kids"
type = "doh3"
endpoint = "https://dns.nextdns.io/####"
timeout = 5000
# Networks
[network.0]
name = "Default"
cidrs = ["0.0.0.0/0"]
[network.1]
name = "Home-Parents"
cidrs = ["192.168.10.0/24"]
[network.2]
name = "IoT"
cidrs = ["192.168.21.0/24"]
[network.3]
name = "Guest"
cidrs = ["192.168.98.0/24"]
[network.4]
name = "Kids"
macs = [
"AA:BB:CC:DD:EE:FF"
]
# Policy – first match wins
[policy]
networks = [
{ network = "Kids", upstreams = ["upstream.3"] },
{ network = "Home-Parents", upstreams = ["upstream.0"] },
{ network = "IoT", upstreams = ["upstream.1"] },
{ network = "Guest", upstreams = ["upstream.2"] },
{ network = "Default", upstreams = ["upstream.0"] }
]Please sign in to leave a comment.
Comments
0 comments