summaryrefslogtreecommitdiff
path: root/hosts
diff options
context:
space:
mode:
authorTim Keller <tjk@tjkeller.xyz>2026-09-21 13:15:38 -0500
committerTim Keller <tjk@tjkeller.xyz>2026-09-21 13:15:38 -0500
commita6416c92b24f86a0c317e4d8d392011029246094 (patch)
tree4649232a3452ff137b69aac7a3fe8d1875ac21df /hosts
parentfade62283a51cafa1549ecfdd245404f9f76defb (diff)
downloadnixos-a6416c92b24f86a0c317e4d8d392011029246094.tar.xz
nixos-a6416c92b24f86a0c317e4d8d392011029246094.zip
update dns-dhcp module to explicitly distinguish between local domain (dnsmasq) overrides and proper dns overrides with unbound. fixed dns overrides and imported them for poweredge and poweredge-pro. cleaned up router-hosts.nix on poweredgeHEADmaster
Diffstat (limited to 'hosts')
-rw-r--r--hosts/poweredge-pro/dhcp-hosts.nix26
-rw-r--r--hosts/poweredge-pro/dns-overrides.nix32
-rw-r--r--hosts/poweredge-pro/dns.nix1
-rw-r--r--hosts/poweredge/router-hosts.nix88
4 files changed, 58 insertions, 89 deletions
diff --git a/hosts/poweredge-pro/dhcp-hosts.nix b/hosts/poweredge-pro/dhcp-hosts.nix
new file mode 100644
index 0000000..643ae10
--- /dev/null
+++ b/hosts/poweredge-pro/dhcp-hosts.nix
@@ -0,0 +1,26 @@
+let
+ localResolution.localDomain = "pls.lan";
+ dhcp = {
+ inherit staticLeases;
+ defaultGateway = "192.168.77.1";
+ localhostIp = "192.168.77.2";
+ rangeStart = "192.168.77.50";
+ rangeEnd = "192.168.77.250";
+ };
+ staticLeases = {
+ devel = { macAddress = "00:a0:98:79:81:5a"; staticIp = "192.168.77.3"; };
+ mailcow = { macAddress = "00:a0:98:79:20:a2"; staticIp = "192.168.77.7"; };
+ tjkeller = { macAddress = "00:a0:98:62:cf:86"; staticIp = "192.168.77.8"; };
+ filebrowser = { macAddress = "02:00:00:00:77:12"; staticIp = "192.168.77.12"; };
+ WIN-BGBGC27B1PF = { macAddress = "d8:9e:f3:1c:f0:1c"; staticIp = "192.168.77.30"; }; # DACS
+ DESKTOP-CQ4UIF9 = { macAddress = "08:bf:b8:3f:bd:48"; staticIp = "192.168.77.31"; }; # Kyle
+ WIN-6FVMAFOID4G = { macAddress = "00:a0:98:58:10:85"; staticIp = "192.168.77.33"; }; # QB
+ office-precision = { macAddress = "48:4d:7e:f8:96:47"; staticIp = "192.168.77.34"; };
+ XRX9C934E85D0A3 = { macAddress = "9c:93:4e:85:d0:a3"; staticIp = "192.168.77.40"; }; # Xerox
+ nvr = { macAddress = "98:8b:0a:cf:4f:5e"; staticIp = "192.168.77.176"; };
+ };
+in {
+ services._router.dnsDhcpConfig = {
+ inherit localResolution dhcp;
+ };
+}
diff --git a/hosts/poweredge-pro/dns-overrides.nix b/hosts/poweredge-pro/dns-overrides.nix
index 3bcdb90..0ed161c 100644
--- a/hosts/poweredge-pro/dns-overrides.nix
+++ b/hosts/poweredge-pro/dns-overrides.nix
@@ -1,32 +1,12 @@
let
- localResolution.localDomain = "pls.lan";
- dhcp = {
- inherit staticLeases;
- defaultGateway = "192.168.77.1";
- localhostIp = "192.168.77.2";
- rangeStart = "192.168.77.50";
- rangeEnd = "192.168.77.250";
- };
- staticLeases = {
- devel = { macAddress = "00:a0:98:79:81:5a"; staticIp = "192.168.77.3"; };
- mailcow = { macAddress = "00:a0:98:79:20:a2"; staticIp = "192.168.77.7"; };
- tjkeller = { macAddress = "00:a0:98:62:cf:86"; staticIp = "192.168.77.8"; };
- filebrowser = { macAddress = "02:00:00:00:77:12"; staticIp = "192.168.77.12"; };
- WIN-BGBGC27B1PF = { macAddress = "d8:9e:f3:1c:f0:1c"; staticIp = "192.168.77.30"; }; # DACS
- DESKTOP-CQ4UIF9 = { macAddress = "08:bf:b8:3f:bd:48"; staticIp = "192.168.77.31"; }; # Kyle
- WIN-6FVMAFOID4G = { macAddress = "00:a0:98:58:10:85"; staticIp = "192.168.77.33"; }; # QB
- office-precision = { macAddress = "48:4d:7e:f8:96:47"; staticIp = "192.168.77.34"; };
- XRX9C934E85D0A3 = { macAddress = "9c:93:4e:85:d0:a3"; staticIp = "192.168.77.40"; }; # Xerox
- nvr = { macAddress = "98:8b:0a:cf:4f:5e"; staticIp = "192.168.77.176"; };
- };
- dns.hostOverrides = {
- "docs.chexx.net" = "192.168.77.3";
- "files.chexx.net" = "192.168.77.12";
- "vault.chexx.net" = "192.168.77.3";
- "wg-easy.chexx.net" = "192.168.77.3";
+ dns.overrides.records = {
+ "docs.chexx.net" = { recordType = "A"; value = "192.168.77.3"; };
+ "files.chexx.net" = { recordType = "A"; value = "192.168.77.12"; };
+ "vault.chexx.net" = { recordType = "A"; value = "192.168.77.3"; };
+ "wg-easy.chexx.net" = { recordType = "A"; value = "192.168.77.3"; };
};
in {
services._router.dnsDhcpConfig = {
- inherit localResolution dhcp dns;
+ inherit dns;
};
}
diff --git a/hosts/poweredge-pro/dns.nix b/hosts/poweredge-pro/dns.nix
index fb22afb..511f9e2 100644
--- a/hosts/poweredge-pro/dns.nix
+++ b/hosts/poweredge-pro/dns.nix
@@ -14,6 +14,7 @@
imports = [
../../nixos/services/router
#./router-hosts.nix # Contains dhcp config + static leases + overrides
+ ./dhcp-hosts.nix
./dns-overrides.nix
];
diff --git a/hosts/poweredge/router-hosts.nix b/hosts/poweredge/router-hosts.nix
index 2a08558..b53b2a1 100644
--- a/hosts/poweredge/router-hosts.nix
+++ b/hosts/poweredge/router-hosts.nix
@@ -9,76 +9,38 @@ let
};
staticLeases = {
# Network
- idrac-7N94GK2 = {
- macAddress = "50:9a:4c:5d:c3:7c";
- staticIp = "192.168.1.2";
- };
- OpenWrt-Attic = {
- macAddress = "34:98:b5:60:5e:be";
- staticIp = "192.168.1.3";
- };
- OpenWrt-Basement = {
- macAddress = "8c:3b:ad:35:c7:8c";
- staticIp = "192.168.1.4";
- };
- ArcherC54 = {
- macAddress = "12:eb:b6:13:f9:e2";
- staticIp = "192.168.1.5";
- };
+ idrac-7N94GK2 = { macAddress = "50:9a:4c:5d:c3:7c"; staticIp = "192.168.1.2"; };
+ OpenWrt-Attic = { macAddress = "34:98:b5:60:5e:be"; staticIp = "192.168.1.3"; };
+ OpenWrt-Basement = { macAddress = "8c:3b:ad:35:c7:8c"; staticIp = "192.168.1.4"; };
+ ArcherC54 = { macAddress = "14:eb:b6:13:f9:e0"; staticIp = "192.168.1.5"; };
# Desktops
- T495 = {
- macAddress = "04:33:c2:9d:34:74";
- staticIp = "192.168.1.11";
- };
- optiplex = {
- macAddress = "e4:54:e8:bc:ba:05";
- staticIp = "192.168.1.12";
- };
- X230 = {
- macAddress = "84:3a:4b:60:34:c4";
- staticIp = "192.168.1.13";
- };
+ T495 = { macAddress = "04:33:c2:9d:34:74"; staticIp = "192.168.1.11"; };
+ optiplex = { macAddress = "e4:54:e8:bc:ba:05"; staticIp = "192.168.1.12"; };
+ X230 = { macAddress = "84:3a:4b:60:34:c4"; staticIp = "192.168.1.13"; };
+ # Appliances
+ # TODO add epson printer
+ p1s = { macAddress = "3c:0f:02:d5:23:64"; staticIp = "192.168.1.39"; };
+ gnuslashprinter = { macAddress = "00:23:24:5b:f0:6d"; staticIp = "192.168.1.40"; };
# Services
- gnuslashprinter = {
- macAddress = "00:23:24:5b:f0:6d";
- staticIp = "192.168.1.40";
- };
- immich = {
- macAddress = "02:00:00:00:00:01";
- staticIp = "192.168.1.41";
- };
- jellyfin = {
- macAddress = "02:00:00:00:00:02";
- staticIp = "192.168.1.42";
- };
- gitea = {
- macAddress = "02:00:00:00:00:03";
- staticIp = "192.168.1.43";
- };
- bitcoind = {
- macAddress = "02:00:00:00:00:04";
- staticIp = "192.168.1.44";
- };
- filebrowser = {
- macAddress = "02:00:00:00:00:05";
- staticIp = "192.168.1.45";
- };
- grafana = {
- macAddress = "02:00:00:00:00:06";
- staticIp = "192.168.1.46";
- };
- transmission = {
- macAddress = "02:00:00:00:00:07";
- staticIp = "192.168.1.47";
- };
+ immich = { macAddress = "02:00:00:00:00:01"; staticIp = "192.168.1.41"; };
+ jellyfin = { macAddress = "02:00:00:00:00:02"; staticIp = "192.168.1.42"; };
+ gitea = { macAddress = "02:00:00:00:00:03"; staticIp = "192.168.1.43"; };
+ bitcoind = { macAddress = "02:00:00:00:00:04"; staticIp = "192.168.1.44"; };
+ filebrowser = { macAddress = "02:00:00:00:00:05"; staticIp = "192.168.1.45"; };
+ grafana = { macAddress = "02:00:00:00:00:06"; staticIp = "192.168.1.46"; };
+ transmission = { macAddress = "02:00:00:00:00:07"; staticIp = "192.168.1.47"; };
};
- dns.hostOverrides = {
- "router.${localDomain}" = "192.168.1.1";
+ localDomainOverrides = {
+ "router.${localDomain}" = "192.168.1.1"; # FIXME ping router on separate host returns 127.0.0.2
"poweredge.${localDomain}" = "192.168.1.10";
};
in {
+ imports = [ ../poweredge-pro/dns-overrides.nix ];
services._router.dnsDhcpConfig = {
- inherit localDomain dhcp dns;
+ inherit dhcp;
+ localResolution = {
+ inherit localDomain localDomainOverrides;
+ };
};
networking.hosts."192.168.1.1" = [ "router.${localDomain}" "router" ];
}