website: demo household and the admin screenshots it produced

This commit is contained in:
2026-10-20 09:57:49 +02:00
parent 4ef795a8a9
commit 2697adfa27
27 changed files with 805 additions and 0 deletions
+52
View File
@@ -0,0 +1,52 @@
.{
.dns = .{ .rate_limit = 100000, .rate_window_seconds = 60 },
.web = .{ .port = 8080, .password = "nxdns-demo", .api_rate_limit_per_min = 5000 },
.logging = .{ .query_log_flush_interval_s = 5 },
.groups = .{
.{ .name = "default" },
.{ .name = "kids", .safe_search = true },
},
.upstreams = .{
.{ .url = "https://cloudflare-dns.com/dns-query", .priority = 10 },
.{ .url = "tls://9.9.9.9:853", .priority = 20, .tls_name = "dns.quad9.net" },
},
.clients = .{
.{ .ip = "192.168.50.41", .name = "Living room TV" },
.{ .ip = "192.168.50.52", .name = "iPhone" },
.{ .ip = "192.168.50.53", .name = "Pixel" },
.{ .ip = "192.168.50.54", .name = "Kids' phone", .group = "kids" },
.{ .ip = "192.168.50.20", .name = "Desktop PC" },
.{ .ip = "192.168.50.21", .name = "MacBook Air" },
},
.blocklist_sources = .{
.{ .url = "https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts", .name = "StevenBlack unified hosts" },
.{ .url = "https://raw.githubusercontent.com/hagezi/dns-blocklists/main/adblock/pro.txt", .name = "HaGeZi Multi PRO" },
.{ .url = "https://raw.githubusercontent.com/hagezi/dns-blocklists/main/adblock/gambling.txt", .name = "HaGeZi Gambling" },
.{ .url = "https://nsfw-small.oisd.nl/domainswild2", .name = "OISD NSFW small" },
},
.group_sources = .{
.{ .group = "default", .source_url = "https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts" },
.{ .group = "default", .source_url = "https://raw.githubusercontent.com/hagezi/dns-blocklists/main/adblock/pro.txt" },
.{ .group = "kids", .source_url = "https://raw.githubusercontent.com/StevenBlack/hosts/master/hosts" },
.{ .group = "kids", .source_url = "https://raw.githubusercontent.com/hagezi/dns-blocklists/main/adblock/pro.txt" },
.{ .group = "kids", .source_url = "https://raw.githubusercontent.com/hagezi/dns-blocklists/main/adblock/gambling.txt" },
.{ .group = "kids", .source_url = "https://nsfw-small.oisd.nl/domainswild2" },
},
.rules = .{
.{ .group = "default", .pattern = "s.youtube.com", .kind = .exact, .action = .allow },
.{ .group = "default", .pattern = "*.samsungacr.com", .kind = .wildcard, .action = .block },
.{ .group = "kids", .pattern = "s.youtube.com", .kind = .exact, .action = .allow },
.{ .group = "kids", .pattern = "*.tiktokv.com", .kind = .wildcard, .action = .block },
},
.local_records = .{
.{ .name = "nas.lan", .rtype = .a, .value = "192.168.50.5" },
.{ .name = "printer.lan", .rtype = .a, .value = "192.168.50.8" },
.{ .name = "files.lan", .rtype = .cname, .value = "nas.lan" },
},
}