summaryrefslogtreecommitdiff
path: root/hosts/poweredge-pro/dns.nix
diff options
context:
space:
mode:
Diffstat (limited to 'hosts/poweredge-pro/dns.nix')
-rw-r--r--hosts/poweredge-pro/dns.nix56
1 files changed, 56 insertions, 0 deletions
diff --git a/hosts/poweredge-pro/dns.nix b/hosts/poweredge-pro/dns.nix
new file mode 100644
index 0000000..fb22afb
--- /dev/null
+++ b/hosts/poweredge-pro/dns.nix
@@ -0,0 +1,56 @@
+{ pkgs, config, ... }: {
+ networking.nameservers = [ "192.168.77.2" ];
+
+ # Router container
+ containers.dnsdhcp = {
+ autoStart = true;
+ ephemeral = true;
+ privateNetwork = true;
+ hostBridge = "br-lan1";
+ #hostBridge = "br-lan1";
+ #localMacAddress = "02:00:00:00:77:01";
+
+ config = { lib, config, ... }: {
+ imports = [
+ ../../nixos/services/router
+ #./router-hosts.nix # Contains dhcp config + static leases + overrides
+ ./dns-overrides.nix
+ ];
+
+ # Network
+ networking = {
+ enableIPv6 = false;
+ defaultGateway = "192.168.77.1";
+ interfaces.eth0.ipv4.addresses = [{
+ address = "192.168.77.2";
+ prefixLength = 24;
+ }];
+ firewall = {
+ # DNS+DHCP ports
+ allowedTCPPorts = [ 53 ];
+ allowedUDPPorts = [ 53 67 ];
+ };
+ };
+
+ # Setup dns server
+ services._router = {
+ dnsDhcpConfig = {
+ enable = true;
+ #localResolution = {
+ # localDomain = "pls.lan";
+ # localDnsAddress = "192.168.77.1@53";
+ # localReverseZone = "77.168.192.in-addr.arpa";
+ #};
+ };
+ routing.enable = false;
+ };
+
+ services.unbound._blocklists = {
+ enable = true;
+ hageziBlocklists = [ "pro" "nsfw" ];
+ };
+
+ system.stateVersion = "26.05";
+ };
+ };
+}