65 lines
1.5 KiB
Nix
65 lines
1.5 KiB
Nix
{ config, pkgs, ...}:
|
|
|
|
{
|
|
networking.vlans."net-technik" = {
|
|
id = 202;
|
|
interface = "ens18";
|
|
};
|
|
|
|
networking.interfaces.net-technik.ipv6.addresses = [
|
|
{ address = "fe80::1"; prefixLength = 64; }
|
|
{ address = "fd00:10:42:202::1"; prefixLength = 64; }
|
|
];
|
|
networking.interfaces.net-technik.ipv4.addresses = [
|
|
{ address = "10.42.202.1"; prefixLength = 24; }
|
|
];
|
|
|
|
services.radvd.config = ''
|
|
interface net-technik {
|
|
AdvSendAdvert on;
|
|
prefix ::/64 {};
|
|
RDNSS 2a01:4f8:1c0c:8221::8 {};
|
|
DNSSL bula22.de {};
|
|
};
|
|
'';
|
|
|
|
services.kea.dhcp4 = {
|
|
settings = {
|
|
interfaces-config = {
|
|
interfaces = [ "net-technik" ];
|
|
};
|
|
subnet4 = [
|
|
{
|
|
id = 202;
|
|
subnet = "10.42.202.1/24";
|
|
pools = [
|
|
{
|
|
pool = "10.42.202.100 - 10.42.202.240";
|
|
}
|
|
];
|
|
option-data = [
|
|
{
|
|
name = "routers";
|
|
data = "10.42.202.1";
|
|
}
|
|
];
|
|
reservations = [
|
|
{ # drucker container
|
|
hw-address = "20:cd:a7:f2:1b:ad";
|
|
ip-address = "10.42.202.11";
|
|
}
|
|
];
|
|
}
|
|
];
|
|
};
|
|
};
|
|
|
|
clerie.forward-filter.interfaces.net-technik.rules = [
|
|
{ incomingInterface = "net-ikt"; }
|
|
# Give the toys access to technik
|
|
{ incomingInterface = "net-technik-iot"; }
|
|
];
|
|
|
|
clerie.uplink-selector.interfaces.net-technik.uplink = "uplink-b";
|
|
}
|