2022-01-25 18:12:54 +01:00
|
|
|
|
{ lib, ... }:
|
|
|
|
|
let mkAddress = addr: let
|
|
|
|
|
splitted = lib.splitString "/" addr;
|
|
|
|
|
elemAt = builtins.elemAt splitted;
|
|
|
|
|
in
|
|
|
|
|
{ address = (elemAt 0); prefixLength = lib.toInt (elemAt 1); };
|
|
|
|
|
in {
|
2022-09-14 01:59:59 +02:00
|
|
|
|
systemd.network = {
|
|
|
|
|
enable = true;
|
|
|
|
|
networks."ens18" = {
|
|
|
|
|
DHCP = "no";
|
|
|
|
|
addresses = [
|
|
|
|
|
{ addressConfig.Address = "2001:470:1f13:187:c08e:feff:fe4d:f5f5"; }
|
|
|
|
|
];
|
|
|
|
|
};
|
|
|
|
|
};
|
|
|
|
|
|
2021-11-13 00:59:59 +01:00
|
|
|
|
networking = {
|
|
|
|
|
hostName = "public-cof";
|
2022-09-14 01:59:59 +02:00
|
|
|
|
useNetworkd = true;
|
|
|
|
|
|
|
|
|
|
useDHCP = false;
|
|
|
|
|
|
|
|
|
|
firewall.allowedTCPPorts = [ 22 ];
|
|
|
|
|
firewall.enable = true;
|
2021-11-13 00:59:59 +01:00
|
|
|
|
|
2022-09-14 01:59:59 +02:00
|
|
|
|
/*
|
2022-01-25 18:12:54 +01:00
|
|
|
|
# Default IPv4 exit route
|
|
|
|
|
defaultGateway = {
|
|
|
|
|
address = "";
|
|
|
|
|
interface = "ens20";
|
|
|
|
|
};
|
|
|
|
|
localCommands = "ip route add default dev ens20 metric 10";
|
|
|
|
|
|
2022-01-24 22:04:43 +01:00
|
|
|
|
interfaces.ens19 = {
|
2022-03-05 23:16:54 +01:00
|
|
|
|
useDHCP = false;
|
|
|
|
|
ipv4.addresses = [{
|
|
|
|
|
address = "10.1.1.21";
|
|
|
|
|
prefixLength = 22;
|
|
|
|
|
}];
|
2022-01-24 22:04:43 +01:00
|
|
|
|
};
|
2021-11-13 00:59:59 +01:00
|
|
|
|
|
2022-01-25 18:12:54 +01:00
|
|
|
|
interfaces.ens20 = {
|
2022-09-10 15:29:51 +02:00
|
|
|
|
# 1st is for public-cof
|
|
|
|
|
# 2nd is for IPv4 → IPv6 proxy in v6proxy/
|
|
|
|
|
ipv4.addresses = map mkAddress [ "45.13.104.27/32" "45.13.104.29/32" ];
|
2022-01-25 18:12:54 +01:00
|
|
|
|
};
|
2022-09-14 01:59:59 +02:00
|
|
|
|
*/
|
2021-11-13 00:59:59 +01:00
|
|
|
|
};
|
2022-09-10 16:17:01 +02:00
|
|
|
|
|
|
|
|
|
services.nginx.defaultListenAddresses = [ "[::0]" "45.13.104.27" ];
|
2021-11-13 00:59:59 +01:00
|
|
|
|
}
|