many changes and more modularizing

This commit is contained in:
2024-12-12 22:30:24 +01:00
parent df50e70f3e
commit c96c24f864
109 changed files with 20900 additions and 278 deletions

View File

@@ -1,4 +1,5 @@
{ ... }: {
{ config, ... }:
{
services.kea.dhcp4 = {
enable = true;
settings = {
@@ -23,15 +24,15 @@
{
pools = [
{
pool = "10.42.96.100 - 10.42.96.240";
pool = "${config.networkPrefix}.96.100 - ${config.networkPrefix}.96.240";
}
];
subnet = "10.42.96.0/24";
subnet = "${config.networkPrefix}.96.0/24";
interface = "lan";
option-data = [
{
name = "routers";
data = "10.42.96.1";
data = "${config.networkPrefix}.96.1";
}
{
name = "domain-name";
@@ -43,23 +44,23 @@
}
{
name = "domain-name-servers";
data = "10.42.96.1";
data = "${config.networkPrefix}.96.1";
}
];
reservations = [
{
hw-address = "04:7c:16:d5:63:5e";
ip-address = "10.42.96.5";
ip-address = "${config.networkPrefix}.96.5";
server-hostname = "omada.cloonar.com";
}
{
hw-address = "30:05:5c:56:62:37";
ip-address = "10.42.96.100";
ip-address = "${config.networkPrefix}.96.100";
server-hostname = "brn30055c566237.cloonar.com";
}
{
hw-address = "24:df:a7:b1:1b:74";
ip-address = "10.42.96.101";
ip-address = "${config.networkPrefix}.96.101";
server-hostname = "rmproplus-b1-1b-74.cloonar.com";
}
];
@@ -68,15 +69,15 @@
{
pools = [
{
pool = "10.42.97.100 - 10.42.97.240";
pool = "${config.networkPrefix}.97.100 - ${config.networkPrefix}.97.240";
}
];
subnet = "10.42.97.0/24";
subnet = "${config.networkPrefix}.97.0/24";
interface = "server";
option-data = [
{
name = "routers";
data = "10.42.97.1";
data = "${config.networkPrefix}.97.1";
}
{
name = "domain-name";
@@ -84,38 +85,38 @@
}
{
name = "domain-name-servers";
data = "10.42.97.1";
data = "${config.networkPrefix}.97.1";
}
];
reservations = [
{
hw-address = "1a:c4:04:6e:29:bd";
ip-address = "10.42.97.2";
ip-address = "${config.networkPrefix}.97.2";
server-hostname = "omada.cloonar.com";
}
{
hw-address = "02:00:00:00:00:03";
ip-address = "10.42.97.5";
ip-address = "${config.networkPrefix}.97.5";
server-hostname = "web-02.cloonar.com";
}
{
hw-address = "02:00:00:00:00:04";
ip-address = "10.42.97.6";
ip-address = "${config.networkPrefix}.97.6";
server-hostname = "matrix.cloonar.com";
}
{
hw-address = "ea:db:d4:c1:18:ba";
ip-address = "10.42.97.50";
ip-address = "${config.networkPrefix}.97.50";
server-hostname = "git.cloonar.com";
}
{
hw-address = "c2:4f:64:dd:13:0c";
ip-address = "10.42.97.20";
ip-address = "${config.networkPrefix}.97.20";
server-hostname = "home-assistant.cloonar.com";
}
{
hw-address = "1a:c4:04:6e:29:02";
ip-address = "10.42.97.25";
ip-address = "${config.networkPrefix}.97.25";
server-hostname = "deconz.cloonar.com";
}
];
@@ -123,15 +124,15 @@
{
pools = [
{
pool = "10.42.101.100 - 10.42.101.240";
pool = "${config.networkPrefix}.101.100 - ${config.networkPrefix}.101.240";
}
];
subnet = "10.42.101.0/24";
subnet = "${config.networkPrefix}.101.0/24";
interface = "infrastructure";
option-data = [
{
name = "routers";
data = "10.42.101.1";
data = "${config.networkPrefix}.101.1";
}
{
name = "domain-name";
@@ -139,12 +140,12 @@
}
{
name = "domain-name-servers";
data = "10.42.101.1";
data = "${config.networkPrefix}.101.1";
}
{
name = "capwap-ac-v4";
code = 138;
data = "10.42.97.2";
data = "${config.networkPrefix}.97.2";
}
];
reservations = [
@@ -153,15 +154,15 @@
{
pools = [
{
pool = "10.42.99.100 - 10.42.99.240";
pool = "${config.networkPrefix}.99.100 - ${config.networkPrefix}.99.240";
}
];
subnet = "10.42.99.0/24";
subnet = "${config.networkPrefix}.99.0/24";
interface = "multimedia";
option-data = [
{
name = "routers";
data = "10.42.99.1";
data = "${config.networkPrefix}.99.1";
}
{
name = "domain-name";
@@ -169,43 +170,43 @@
}
{
name = "domain-name-servers";
data = "10.42.99.1";
data = "${config.networkPrefix}.99.1";
}
];
reservations = [
{
hw-address = "c4:a7:2b:c7:ea:30";
ip-address = "10.42.99.10";
ip-address = "${config.networkPrefix}.99.10";
hostname = "metz.cloonar.multimedia";
}
{
hw-address = "f0:2f:9e:d4:3b:21";
ip-address = "10.42.99.11";
ip-address = "${config.networkPrefix}.99.11";
hostname = "firetv-living";
}
{
hw-address = "bc:33:29:ed:24:f0";
ip-address = "10.42.99.12";
ip-address = "${config.networkPrefix}.99.12";
hostname = "ps5";
}
{
hw-address = "e4:2a:ac:32:3f:79";
ip-address = "10.42.99.13";
ip-address = "${config.networkPrefix}.99.13";
hostname = "xbox";
}
{
hw-address = "98:b6:e9:b6:ef:f4";
ip-address = "10.42.99.14";
ip-address = "${config.networkPrefix}.99.14";
hostname = "switch";
}
{
hw-address = "f0:2f:9e:c1:74:72";
ip-address = "10.42.99.21";
ip-address = "${config.networkPrefix}.99.21";
hostname = "firetv-bedroom";
}
{
hw-address = "30:05:5c:56:62:37";
ip-address = "10.42.99.100";
ip-address = "${config.networkPrefix}.99.100";
server-hostname = "brn30055c566237";
}
];
@@ -213,15 +214,15 @@
{
pools = [
{
pool = "10.42.254.10 - 10.42.254.254";
pool = "${config.networkPrefix}.254.10 - ${config.networkPrefix}.254.254";
}
];
subnet = "10.42.254.0/24";
subnet = "${config.networkPrefix}.254.0/24";
interface = "guest";
option-data = [
{
name = "routers";
data = "10.42.254.1";
data = "${config.networkPrefix}.254.1";
}
{
name = "domain-name-servers";
@@ -232,15 +233,15 @@
{
pools = [
{
pool = "10.42.100.100 - 10.42.100.240";
pool = "${config.networkPrefix}.100.100 - ${config.networkPrefix}.100.240";
}
];
subnet = "10.42.100.0/24";
subnet = "${config.networkPrefix}.100.0/24";
interface = "smart";
option-data = [
{
name = "routers";
data = "10.42.100.1";
data = "${config.networkPrefix}.100.1";
}
{
name = "domain-name";
@@ -248,29 +249,29 @@
}
{
name = "domain-name-servers";
data = "10.42.100.1";
data = "${config.networkPrefix}.100.1";
}
];
reservations = [
{
hw-address = "fc:ee:28:03:63:e9";
ip-address = "10.42.100.148";
ip-address = "${config.networkPrefix}.100.148";
server-hostname = "k1c";
}
{
hw-address = "cc:50:e3:bc:27:64";
ip-address = "10.42.100.112";
ip-address = "${config.networkPrefix}.100.112";
server-hostname = "Nuki_Bridge_1A753F72";
}
{
hw-address = "34:6f:24:f3:af:ad";
ip-address = "10.42.100.137";
ip-address = "${config.networkPrefix}.100.137";
server-hostname = "daikin86604";
}
{
hw-address = "34:6f:24:c1:f8:54";
ip-address = "10.42.100.139";
ip-address = "${config.networkPrefix}.100.139";
server-hostname = "daikin53800";
}
];