Better addressing?

This commit is contained in:
Yaro Kasear 2026-05-01 13:07:30 -05:00
parent b5c1a43863
commit f35e402b4d
3 changed files with 394 additions and 261 deletions

218
meta.nix
View file

@ -3,22 +3,23 @@
locations = {
cloud = {
owner = "yaro";
dmz = {
hosts = {
domain = "kasear.net";
networks.default.subnets = {
dmz.hosts = {
eris = {
role = "router";
aliases = [ "frontend.kasear.net" ];
aliases = [
"frontend.kasear.net"
];
};
deimos-cloud = {
role = "server";
};
};
};
infra = {
hosts = {
infra.hosts = {
metatron = {
role = "coreServer";
};
@ -26,15 +27,28 @@
loki-cloud = {
role = "adminWorkstation";
};
io-cloud = {
role = "router";
};
europa-cloud = {
role = "router";
};
vpn-container = {
role = "server";
dns = false;
};
};
};
};
home = {
dmz = {
vlan = 1;
norfolk = {
domain = "kasear.net";
hosts = {
networks.default.subnets = {
dmz.hosts = {
io = {
role = "router";
aliases = [ "external.kasear.net" ];
@ -58,7 +72,6 @@
"test.kasear.net"
"vault.kasear.net"
"vikali.kasear.net"
"vpn.kasear.net"
"www.kasear.net"
"yaro.kasear.net"
];
@ -69,27 +82,60 @@
dns = false;
};
cloud-container = { role = "server"; dns = false; };
default-container = { role = "server"; dns = false; };
foregejo-container = { role = "server"; dns = false; };
majike-container = { role = "server"; dns = false; };
media-container = { role = "server"; dns = false; };
vault-container = { role = "server"; dns = false; };
vikali-container = { role = "server"; dns = false; };
vpn-container = { role = "server"; dns = false; };
yaro-container = { role = "server"; dns = false; };
};
};
cloud-container = {
role = "server";
dns = false;
};
main = {
vlan = 10;
default-container = {
role = "server";
dns = false;
};
dhcp = {
start = 1;
end = 250;
foregejo-container = {
role = "server";
dns = false;
};
majike-container = {
role = "server";
dns = false;
};
media-container = {
role = "server";
dns = false;
};
vault-container = {
role = "server";
dns = false;
};
vikali-container = {
role = "server";
dns = false;
};
yaro-container = {
role = "server";
dns = false;
};
norfolk-dmz-dhcp-start = {
role = "pool";
hostId = 1;
dns = false;
};
norfolk-dmz-dhcp-end = {
role = "pool";
hostId = 250;
dns = false;
};
};
hosts = {
main.hosts = {
europa = {
role = "router";
aliases = [ "internal.kasear.net" ];
@ -106,6 +152,11 @@
hw-address = "54:af:97:02:2f:15";
};
loki = {
role = "adminWorkstation";
hw-address = "70:85:c2:f4:1a:58";
};
luna = {
role = "infraDevice";
hw-address = "30:23:03:48:4c:75";
@ -114,7 +165,6 @@
phobos = {
role = "server";
hw-address = "10:98:36:a9:4a:26";
interface = "eno2";
aliases = [
"pbx.kasear.net"
"private.kasear.net"
@ -137,28 +187,39 @@
role = "phone";
hw-address = "80:5e:c0:de:3d:66";
};
};
};
guest = {
vlan = 20;
norfolk-main-dhcp-start = {
role = "pool";
hostId = 1;
dns = false;
};
dhcp = {
start = 1;
end = 250;
norfolk-main-dhcp-end = {
role = "pool";
hostId = 250;
dns = false;
};
};
hosts = {
guest.hosts = {
europa-guest = {
role = "router";
};
norfolk-guest-dhcp-start = {
role = "pool";
hostId = 1;
dns = false;
};
norfolk-guest-dhcp-end = {
role = "pool";
hostId = 250;
dns = false;
};
};
};
iot = {
vlan = 30;
hosts = {
iot.hosts = {
europa-iot = {
role = "router";
};
@ -183,6 +244,11 @@
hw-address = "08:84:9d:74:4d:c6";
};
loki-iot = {
role = "adminWorkstation";
hw-address = "70:85:c2:f4:1a:58";
};
camera1 = {
role = "camera";
hw-address = "9c:8e:cd:38:95:1f";
@ -204,18 +270,26 @@
role = "appliance";
hw-address = "04:e4:b6:23:81:fc";
};
};
};
storage = {
vlan = 40;
mercury-iot = {
role = "mobile";
hw-address = "ac:3e:b1:77:65:2e";
};
dhcp = {
start = 1;
end = 250;
norfolk-iot-dhcp-start = {
role = "pool";
hostId = 1;
dns = false;
};
norfolk-iot-dhcp-end = {
role = "pool";
hostId = 250;
dns = false;
};
};
hosts = {
storage.hosts = {
europa-storage = {
role = "router";
};
@ -224,13 +298,30 @@
role = "nas";
aliases = [ "storage.kasear.net" ];
};
loki-storage = {
role = "adminWorkstation";
hw-address = "00:07:43:13:c4:90";
};
norfolk-storage-dhcp-start = {
role = "pool";
hostId = 1;
dns = false;
};
norfolk-storage-dhcp-end = {
role = "pool";
hostId = 250;
dns = false;
};
};
};
management = {
vlan = 70;
management.hosts = {
europa-management = {
role = "router";
};
hosts = {
deimos-idrac = {
role = "oobMgmt";
hw-address = "10:98:36:a0:2c:b3";
@ -245,13 +336,20 @@
role = "oobMgmt";
hw-address = "14:18:77:51:4b:b5";
};
norfolk-management-dhcp-start = {
role = "pool";
hostId = 1;
dns = false;
};
norfolk-management-dhcp-end = {
role = "pool";
hostId = 250;
dns = false;
};
};
};
};
};
# You can add these later if you want to match the bigger design:
# systems = { };
# consumers = { };
# policy = { };
}