network/config/net/serv.nix

200 lines
7.1 KiB
Nix
Raw Normal View History

2021-11-13 03:18:30 +01:00
{ lib, ... }:
2021-11-13 01:44:14 +01:00
{
site.net.serv = {
domainName = "serv.zentralwerk.org";
subnet4 = "172.20.73.0/25";
2021-11-13 01:44:14 +01:00
hosts4 = {
2021-11-13 03:18:30 +01:00
serv-gw = "172.20.73.1";
2021-11-13 01:44:14 +01:00
dns = "172.20.73.2";
2021-11-13 03:18:30 +01:00
stats = "172.20.73.3";
2023-05-26 22:30:17 +02:00
tlms-elastic = "172.20.73.7"; # tlms
2021-11-13 01:44:14 +01:00
dnscache = "172.20.73.8";
2022-12-19 20:19:08 +01:00
buzzrelay = "172.20.73.15";
2021-11-13 01:44:14 +01:00
matemat = "172.20.73.21";
2021-11-13 03:18:30 +01:00
spaceapi = "172.20.73.25";
mucbot = "172.20.73.27";
scrape = "172.20.73.32";
2023-05-26 22:30:17 +02:00
tram-borzoi = "172.20.73.38"; # tlms
borken-data-hoarder = "172.20.73.39"; # tlms
2023-03-23 23:47:13 +01:00
matrix = "172.20.73.40";
2023-05-26 22:15:19 +02:00
# "172.20.73.41"
2023-01-18 18:46:47 +01:00
luulaatsch-asterisk = "172.20.73.42";
2021-11-13 03:18:30 +01:00
grafana = "172.20.73.43";
2023-05-26 22:15:19 +02:00
# "172.20.73.44"
2021-11-13 03:18:30 +01:00
public-access-proxy = "172.20.73.45";
marenz = "172.20.73.46";
2022-10-22 21:18:47 +02:00
network-homepage = "172.20.73.47";
2023-04-03 20:41:43 +02:00
home-assistant = "172.20.73.48";
2021-11-13 03:18:30 +01:00
hydra = "172.20.73.49";
2022-11-21 19:28:37 +01:00
owncast = "172.20.73.50";
2022-06-07 19:40:51 +02:00
nfsroot = "172.20.73.51";
2021-11-13 03:18:30 +01:00
ticker = "172.20.73.52";
gitea = "172.20.73.53";
stream = "172.20.73.54";
jabber = "172.20.73.55";
mobilizon = "172.20.73.56";
radiobert = "172.20.73.57";
mail = "172.20.73.58";
2023-05-26 22:15:19 +02:00
# "172.20.73.59"
2021-11-13 03:18:30 +01:00
sdrweb = "172.20.73.60";
bind = "172.20.73.61";
2021-12-23 23:44:33 +01:00
blogs = "172.20.73.62";
2023-05-26 22:15:19 +02:00
# "172.20.73.63"
2023-05-26 22:30:17 +02:00
staging-data-hoarder = "172.20.73.64"; # tlms
2022-05-27 22:57:04 +02:00
oparl = "172.20.73.65";
2022-06-21 20:13:55 +02:00
hedgedoc = "172.20.73.66";
mediawiki = "172.20.73.67";
2022-07-06 20:57:39 +02:00
gnunet = "172.20.73.68";
2023-05-26 22:30:17 +02:00
data-hoarder = "172.20.73.69"; # tlms
2022-07-16 00:42:38 +02:00
broker = "172.20.73.70";
2022-07-16 18:54:20 +02:00
ftp = "172.20.73.71";
2022-07-22 21:51:13 +02:00
auth = "172.20.73.72";
2023-05-26 22:15:19 +02:00
# "172.20.73.73"
# "172.20.73.74"
2022-11-27 01:08:19 +01:00
prometheus = "172.20.73.75";
2023-05-26 22:15:19 +02:00
# "172.20.73.76"
2023-01-29 20:53:08 +01:00
drone = "172.20.73.77";
2021-11-13 01:44:14 +01:00
};
ipv6Router = "serv-gw";
2021-11-13 03:18:30 +01:00
subnets6.dn42 = "fd23:42:c3d2:582::/64";
subnets6.up4 = "2a00:8180:2c00:282::/64";
hosts6.dn42 = {
bind = "fd23:42:c3d2:582:cd7:56ff:fe69:6366";
2021-12-23 23:44:33 +01:00
blogs = "fd42:42:c3d2:582:b8a8:7dff:fee8:5ac2";
2021-11-13 03:18:30 +01:00
dns = "fd23:42:c3d2:582:2:0:0:2";
dnscache = "fd23:42:c3d2:582:f096:dbff:fee8:427d";
grafana = "fd23:42:c3d2:582:4042:fbff:fe4b:2de8";
2022-05-05 22:33:59 +02:00
hydra = "fd23:42:c3d2:582:e2cb:4eff:fe3b:f94b";
2021-11-13 03:18:30 +01:00
jabber = "fd23:42:c3d2:582:b869:ccff:fe46:902a";
keycloak = "fd23:42:c3d2:582:c48:bbff:fe87:721d";
logging = "fd23:42:c3d2:582:6811:edff:fe40:89c6";
mail = "fd23:42:c3d2:582:88c0:41ff:fe70:d6cd";
2021-11-15 03:32:10 +01:00
matemat = "fd23:42:c3d2:582:f82b:1bff:fedc:8572";
2021-11-13 03:18:30 +01:00
minetest = "fd23:42:c3d2:582:c3a:42ff:fe5d:b20c";
mobilizon = "fd23:42:c3d2:582:48d1:5cff:fea7:1676";
mongo = "fd23:42:c3d2:582:14ec:c8ff:fe0a:fc5c";
2021-11-15 03:32:10 +01:00
mucbot = "fd23:42:c3d2:582:28db:dff:fe6b:e89a";
2021-11-13 03:18:30 +01:00
radiobert = "fd23:42:c3d2:582:e65f:1ff:fe5d:1679";
radius = "fd23:42:c3d2:582:2:0:0:4";
2021-11-15 03:32:10 +01:00
sdrweb = "fd23:42:c3d2:582:3078:bbff:fe76:e9ef";
2021-11-13 03:18:30 +01:00
serv-gw = "fd23:42:c3d2:582::1";
spaceapi = "fd23:42:c3d2:582:1457:adff:fe93:62e9";
stats = "fd23:42:c3d2:582:2:0:0:3";
zeit = "fd23:42:c3d2:582:2:0:0:5";
2022-03-06 20:25:42 +01:00
direkthilfe = "fd23:42:c3d2:582:1cde:c5ff:fe47:8c2a";
2022-03-16 01:58:05 +01:00
nix-build = "fd23:42:c3d2:582:683d:a9ff:fe45:3d1f";
staging-data-hoarder = "fd23:42:c3d2:582:2de:5bff:fef9:e23d";
2022-05-28 03:39:11 +02:00
oparl = "fd23:42:c3d2:582:2de:9aff:fece:3879";
2022-07-06 20:57:39 +02:00
gnunet = "fd23:42:c3d2:582:44";
2022-07-16 00:42:38 +02:00
broker = "fd23:42:c3d2:582:46";
2022-07-16 18:54:20 +02:00
ftp = "fd23:42:c3d2:582:47";
2022-09-15 20:07:14 +02:00
zengel = "fd23:42:c3d2:582:4a";
2022-10-22 21:18:47 +02:00
network-homepage = "fd23:42:c3d2:582:2f";
2022-11-21 19:28:37 +01:00
owncast = "fd23:42:c3d2:582:32";
2022-11-27 01:08:19 +01:00
prometheus = "fd23:42:c3d2:582:4b";
2022-12-19 20:19:08 +01:00
buzzrelay = "fd23:42:c3d2:582:f";
2023-01-20 22:16:01 +01:00
oxigraph = "fd23:42:c3d2:582:4c";
2023-01-16 23:49:10 +01:00
tmppleroma = "fd23:42:c3d2:582:2c";
2023-01-18 18:46:47 +01:00
luulaatsch-asterisk = "fd23:42:c3d2:582:2a";
2021-11-13 01:44:14 +01:00
};
2021-11-13 03:18:30 +01:00
hosts6.up4 = {
bind = "2a00:8180:2c00:282:cd7:56ff:fe69:6366";
2021-12-23 23:44:33 +01:00
blogs = "2a00:8180:2c00:282:b8a8:7dff:fee8:5ac2";
2021-11-13 03:18:30 +01:00
dns = "2a00:8180:2c00:282:2:0:0:2";
dnscache = "2a00:8180:2c00:282:f096:dbff:fee8:427d";
grafana = "2a00:8180:2c00:282:4042:fbff:fe4b:2de8";
2022-05-05 22:33:59 +02:00
hydra = "2a00:8180:2c00:282:e2cb:4eff:fe3b:f94b";
2021-11-13 03:18:30 +01:00
jabber = "2a00:8180:2c00:282:b869:ccff:fe46:902a";
keycloak = "2a00:8180:2c00:282:c48:bbff:fe87:721d";
logging = "2a00:8180:2c00:282:6811:edff:fe40:89c6";
mail = "2a00:8180:2c00:282:88c0:41ff:fe70:d6cd";
2021-11-15 03:32:10 +01:00
matemat = "2a00:8180:2c00:282:f82b:1bff:fedc:8572";
2021-11-13 03:18:30 +01:00
minetest = "2a00:8180:2c00:282:c3a:42ff:fe5d:b20c";
mobilizon = "2a00:8180:2c00:282:48d1:5cff:fea7:1676";
mongo = "2a00:8180:2c00:282:14ec:c8ff:fe0a:fc5c";
2021-11-15 03:32:10 +01:00
mucbot = "2a00:8180:2c00:282:28db:dff:fe6b:e89a";
2021-11-13 03:18:30 +01:00
public-access-proxy = "2a00:8180:2c00:282:1024:5fff:febd:9be7";
radiobert = "2a00:8180:2c00:282:e65f:1ff:fe5d:1679";
radius = "2a00:8180:2c00:282:2:0:0:4";
scrape = "2a00:8180:2c00:282:e073:50ff:fef5:eb6e";
2021-11-15 03:32:10 +01:00
sdrweb = "2a00:8180:2c00:282:3078:bbff:fe76:e9ef";
2021-11-13 03:18:30 +01:00
spaceapi = "2a00:8180:2c00:282:1457:adff:fe93:62e9";
stats = "2a00:8180:2c00:282:2:0:0:3";
2021-11-15 03:32:10 +01:00
stream = "fd23:42:c3d2:583:dc91:c7ff:fe51:d1c5";
2021-11-13 03:18:30 +01:00
ticker = "2a00:8180:2c00:282:b407:40ff:fec1:81f2";
zeit = "2a00:8180:2c00:282:2:0:0:5";
2022-03-08 16:55:39 +01:00
direkthilfe = "2a00:8180:2c00:282:1cde:c5ff:fe47:8c2a";
2022-03-16 01:58:05 +01:00
nix-build = "2a00:8180:2c00:282:683d:a9ff:fe45:3d1f";
staging-data-hoarder = "2a00:8180:2c00:282:2de:5bff:fef9:e23d";
2022-05-28 03:39:11 +02:00
oparl = "2a00:8180:2c00:282:2de:9aff:fece:3879";
serv-gw = "2a00:8180:2c00:282::1";
luulaatsch-asterisk = "2a00:8180:2c00:282::2a";
drone = "2a00:8180:2c00:282::2b";
tmppleroma = "2a00:8180:2c00:282::2c";
matrix = "2a00:8180:2c00:282::2d";
network-homepage = "2a00:8180:2c00:282::2f";
mediawiki = "2a00:8180:2c00:282::43";
owncast = "2a00:8180:2c00:282::32";
2022-07-06 20:57:39 +02:00
gnunet = "2a00:8180:2c00:282::44";
2022-07-09 23:58:44 +02:00
data-hoarder = "2a00:8180:2c00:282::45";
2022-07-16 00:42:38 +02:00
broker = "2a00:8180:2c00:282::46";
2022-07-16 18:54:20 +02:00
ftp = "2a00:8180:2c00:282::47";
2022-07-22 21:51:13 +02:00
auth = "2a00:8180:2c00:282::48";
2022-09-15 20:07:14 +02:00
zengel = "2a00:8180:2c00:282::4a";
2022-11-27 01:08:19 +01:00
prometheus = "2a00:8180:2c00:282::4b";
2023-01-20 22:16:01 +01:00
oxigraph = "2a00:8180:2c00:282::4c";
hedgedoc = "2a00:8180:2c00:282::6";
buzzrelay = "2a00:8180:2c00:282::f";
2021-11-13 01:44:14 +01:00
};
};
2021-11-13 03:18:30 +01:00
site.hosts =
let
makeContainer = lib.recursiveUpdate {
role = "container";
interfaces = {
serv = {
gw4 = "serv-gw";
gw6 = "serv-gw";
type = "veth";
};
2021-11-13 01:44:14 +01:00
};
};
2021-11-13 03:18:30 +01:00
in {
dns = makeContainer {
interfaces.serv.hwaddr = "0A:14:48:01:23:00";
2021-11-13 01:44:14 +01:00
services.dns.enable = true;
};
2021-11-13 03:18:30 +01:00
dnscache = makeContainer {
2021-11-13 01:44:14 +01:00
services.dnscache.enable = true;
};
2021-11-13 03:18:30 +01:00
serv-gw = makeContainer {
2021-11-13 01:44:14 +01:00
interfaces = {
core = {
type = "veth";
2021-11-13 03:18:30 +01:00
hwaddr = "0A:14:48:01:06:01";
gw4 = null;
gw6 = null;
2021-11-13 01:44:14 +01:00
};
serv = {
hwaddr = "0A:14:48:01:06:00";
2021-11-13 03:18:30 +01:00
gw4 = null;
gw6 = null;
2021-11-13 01:44:14 +01:00
};
};
ospf.allowedUpstreams =
[ "upstream4" "upstream3" "anon1" "freifunk" ];
2021-11-13 01:44:14 +01:00
};
2021-11-13 03:18:30 +01:00
stats = makeContainer {
interfaces.serv.hwaddr = "0A:14:48:01:15:00";
2021-11-13 01:44:14 +01:00
};
2022-06-23 19:07:31 +02:00
hydra = {
2022-06-23 22:31:07 +02:00
role = "client";
2022-06-23 19:07:31 +02:00
model = "nixos";
interfaces.serv.type = "phys";
};
2021-11-13 01:44:14 +01:00
};
}