swann: kea/radvd if erbium is off
This commit is contained in:
parent
2e6ef07a23
commit
bb084d5aab
1 changed files with 170 additions and 1 deletions
|
@ -797,5 +797,174 @@ in {
|
||||||
Storage=volatile
|
Storage=volatile
|
||||||
'';
|
'';
|
||||||
systemd.services.tailscaled.environment.TS_LOGS_DIR = "/var/run/tailscale";
|
systemd.services.tailscaled.environment.TS_LOGS_DIR = "/var/run/tailscale";
|
||||||
|
} (lib.mkIf (!config.services.erbium.enable) {
|
||||||
|
services.radvd = {
|
||||||
|
enable = true;
|
||||||
|
config = ''
|
||||||
|
interface br-internal {
|
||||||
|
AdvSendAdvert on;
|
||||||
|
AdvLinkMTU 1420; # Wireguard
|
||||||
|
AdvManagedFlag on;
|
||||||
|
|
||||||
|
RDNSS 2a09:a443::1 {};
|
||||||
|
DNSSL house.as205479.net {};
|
||||||
|
|
||||||
|
prefix 2a09:a443::/64 {
|
||||||
|
AdvOnLink on;
|
||||||
|
AdvAutonomous on;
|
||||||
|
};
|
||||||
|
prefix 2a09:a443:1::/48 {
|
||||||
|
AdvOnLink on;
|
||||||
|
AdvAutonomous off;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
interface vl-eduroam {
|
||||||
|
AdvSendAdvert on;
|
||||||
|
AdvLinkMTU 1420; # Wireguard
|
||||||
|
AdvManagedFlag on;
|
||||||
|
|
||||||
|
RDNSS 2a09:a443:2::1 {};
|
||||||
|
DNSSL eduroam.as205479.net {};
|
||||||
|
|
||||||
|
prefix 2a09:a443:2::/64 {
|
||||||
|
AdvOnLink on;
|
||||||
|
AdvAutonomous on;
|
||||||
|
};
|
||||||
|
prefix 2a09:a443:3::/48 {
|
||||||
|
AdvOnLink on;
|
||||||
|
AdvAutonomous off;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
|
services.kea = {
|
||||||
|
dhcp4.enable = true;
|
||||||
|
dhcp4.settings = {
|
||||||
|
interfaces-config.interfaces = ["br-internal" "vl-eduroam"];
|
||||||
|
lease-database = {
|
||||||
|
type = "memfile";
|
||||||
|
persist = true;
|
||||||
|
name = "/var/lib/kea/dhcp4.leases";
|
||||||
|
};
|
||||||
|
reservations-global = true;
|
||||||
|
reservations = [{
|
||||||
|
hw-address = "40:8d:5c:1f:e8:68";
|
||||||
|
ip-address = "192.168.1.40";
|
||||||
|
hostname = "totoro";
|
||||||
|
} {
|
||||||
|
hw-address = "52:54:00:cf:cd:94";
|
||||||
|
ip-address = "192.168.1.41";
|
||||||
|
hostname = "totoro-pfsense";
|
||||||
|
} {
|
||||||
|
hw-address = "00:0d:5d:1b:14:ba";
|
||||||
|
ip-address = "192.168.1.50";
|
||||||
|
hostname = "kvm";
|
||||||
|
} {
|
||||||
|
hw-address = "9c:93:4e:ad:1f:7b";
|
||||||
|
ip-address = "192.168.1.51";
|
||||||
|
hostname = "printer-xerox";
|
||||||
|
} {
|
||||||
|
hw-address = "bc:33:29:26:01:5c";
|
||||||
|
ip-address = "92.118.30.18";
|
||||||
|
hostname = "ps5";
|
||||||
|
} {
|
||||||
|
hw-address = "84:39:be:77:65:52";
|
||||||
|
ip-address = "192.168.1.60";
|
||||||
|
hostname = "qvmpc6552";
|
||||||
}];
|
}];
|
||||||
|
subnet4 = [{
|
||||||
|
subnet = "192.168.1.0/24";
|
||||||
|
pools = [{
|
||||||
|
pool = "192.168.1.100 - 192.168.1.200";
|
||||||
|
}];
|
||||||
|
option-data = [{
|
||||||
|
name = "routers";
|
||||||
|
data = "192.168.1.1";
|
||||||
|
} {
|
||||||
|
name = "domain-name-servers";
|
||||||
|
data = "192.168.1.1";
|
||||||
|
} {
|
||||||
|
name = "domain-name";
|
||||||
|
data = "house.as205479.net";
|
||||||
|
} {
|
||||||
|
name = "interface-mtu";
|
||||||
|
data = "1420";
|
||||||
|
}];
|
||||||
|
} {
|
||||||
|
subnet = "92.118.30.16/28";
|
||||||
|
option-data = [{
|
||||||
|
name = "routers";
|
||||||
|
data = "92.118.30.17";
|
||||||
|
} {
|
||||||
|
name = "domain-name-servers";
|
||||||
|
data = "92.118.30.17";
|
||||||
|
} {
|
||||||
|
name = "domain-name";
|
||||||
|
data = "house-ext.as205479.net";
|
||||||
|
} {
|
||||||
|
name = "interface-mtu";
|
||||||
|
data = "1420";
|
||||||
|
}];
|
||||||
|
} {
|
||||||
|
subnet = "192.168.10.0/24";
|
||||||
|
pools = [{
|
||||||
|
pool = "192.168.10.100 - 192.168.10.200";
|
||||||
|
}];
|
||||||
|
option-data = [{
|
||||||
|
name = "routers";
|
||||||
|
data = "192.168.10.1";
|
||||||
|
} {
|
||||||
|
name = "domain-name-servers";
|
||||||
|
data = "192.168.10.1";
|
||||||
|
} {
|
||||||
|
name = "domain-name";
|
||||||
|
data = "eduroam.as205479.net";
|
||||||
|
} {
|
||||||
|
name = "interface-mtu";
|
||||||
|
data = "1420";
|
||||||
|
}];
|
||||||
|
}];
|
||||||
|
};
|
||||||
|
|
||||||
|
dhcp6.enable = true;
|
||||||
|
dhcp6.settings = {
|
||||||
|
interfaces-config.interfaces = ["br-internal" "vl-eduroam"];
|
||||||
|
lease-database = {
|
||||||
|
type = "memfile";
|
||||||
|
persist = true;
|
||||||
|
name = "/var/lib/kea/dhcp6.leases";
|
||||||
|
};
|
||||||
|
subnet6 = [{
|
||||||
|
subnet = "2a09:a443:1::/48";
|
||||||
|
pd-pools = [{
|
||||||
|
prefix = "2a09:a443:1:8000::";
|
||||||
|
prefix-len = 49;
|
||||||
|
delegated-len = 64;
|
||||||
|
}];
|
||||||
|
option-data = [{
|
||||||
|
name = "dns-servers";
|
||||||
|
data = "2a09:a443:1::1";
|
||||||
|
} {
|
||||||
|
name = "domain-search";
|
||||||
|
data = "house.as205479.net";
|
||||||
|
}];
|
||||||
|
} {
|
||||||
|
subnet = "2a09:a443:3::/48";
|
||||||
|
pd-pools = [{
|
||||||
|
prefix = "2a09:a443:3:8000::";
|
||||||
|
prefix-len = 49;
|
||||||
|
delegated-len = 64;
|
||||||
|
}];
|
||||||
|
option-data = [{
|
||||||
|
name = "dns-servers";
|
||||||
|
data = "2a09:a443:3::1";
|
||||||
|
} {
|
||||||
|
name = "domain-search";
|
||||||
|
data = "eduroam.as205479.net";
|
||||||
|
}];
|
||||||
|
}];
|
||||||
|
};
|
||||||
|
};
|
||||||
|
})];
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue