mirror of
https://gerrit.hackerspace.pl/hscloud
synced 2024-10-18 12:17:46 +00:00
Serge Bazanski
957d91180a
Change-Id: I038f9518e090aecc90f464475f29c5b3c1570eff Reviewed-on: https://gerrit.hackerspace.pl/c/hscloud/+/1339 Reviewed-by: implr <implr@hackerspace.pl>
101 lines
3.5 KiB
Nix
101 lines
3.5 KiB
Nix
# Functionality that used to live in bootstrap.hswaw.net, a VMm now moved back
|
|
# into edge01.waw.bgp.wtf
|
|
|
|
{ config, pkgs, ... }: {
|
|
networking.bridges.bootstrap.interfaces = [];
|
|
networking.interfaces.bootstrap.ipv4.addresses = [
|
|
{ address = "185.236.240.18"; prefixLength = 32; }
|
|
];
|
|
systemd.network.networks."40-bootstrap".networkConfig.IgnoreCarrierLoss = true;
|
|
systemd.network.networks."40-bootstrap".networkConfig.ConfigureWithoutCarrier = true;
|
|
services.atftpd = {
|
|
enable = true;
|
|
root = (let
|
|
# netboot.xyz.kpxe retrieved from netboot.xyz at 2021/03/15.
|
|
netbootxyz-kpxe = pkgs.fetchurl {
|
|
url = https://object.ceph-waw3.hswaw.net/q3k-personal/b0b99ab84eb973c8a3818ec9fd11e17b75494ad8b5e6976aebbe8b162052da47.kpxe;
|
|
sha256 = "0iysa8h1d2xyxdm9grmmv154jxbvw48zvjcfh6iwhwxr9sw9mfdh";
|
|
};
|
|
# netboot.xyz-undionly.kpxe retrieved from netboot.xyz at 2021/03/15.
|
|
netbootxyz-undionly-kpxe = pkgs.fetchurl {
|
|
url = https://object.ceph-waw3.hswaw.net/q3k-personal/42ca97fe5219899e208cf466cb04d2cd4fe7f7b30e0db30ef63cafabcc95b989.kpxe;
|
|
sha256 = "12drjp6apbrwyq7b638fngvyfkyds82cnrplihh9x28rabz9gjj2";
|
|
};
|
|
in pkgs.stdenv.mkDerivation {
|
|
name = "atftp-root";
|
|
unpackPhase = "true";
|
|
buildPhase = "true";
|
|
installPhase = ''
|
|
mkdir -p $out
|
|
cp ${netbootxyz-kpxe} $out/netboot.xyz.kpxe
|
|
cp ${netbootxyz-undionly-kpxe} $out/netboot.xyz-undionly.kpxe
|
|
'';
|
|
});
|
|
};
|
|
services.dhcpd4 = {
|
|
enable = true;
|
|
interfaces = [ "bootstrap" "vl-dcsw-l3" ];
|
|
extraConfig = ''
|
|
# ISC DHCP is trash. We only use it in relay mode, yet we have to do
|
|
# this.
|
|
subnet 185.236.240.18 netmask 255.255.255.255 {}
|
|
|
|
subnet 185.236.240.6 netmask 255.255.255.254 {}
|
|
|
|
subnet 185.236.240.24 netmask 255.255.255.248 {
|
|
option routers 185.236.240.25;
|
|
range 185.236.240.29 185.236.240.30;
|
|
option domain-name-servers 8.8.8.8;
|
|
}
|
|
|
|
subnet 185.236.240.32 netmask 255.255.255.240 {
|
|
range 185.236.240.45 185.236.240.46;
|
|
option routers 185.236.240.33;
|
|
option domain-name-servers 8.8.8.8;
|
|
}
|
|
|
|
host bc01n01 {
|
|
hardware ethernet 00:23:ae:fe:83:20;
|
|
fixed-address 185.236.240.35;
|
|
option host-name "bc01n01";
|
|
}
|
|
host bc01n02 {
|
|
hardware ethernet 00:23:ae:fe:83:c4;
|
|
fixed-address 185.236.240.36;
|
|
option host-name "bc01n02";
|
|
}
|
|
host bc01n03 {
|
|
hardware ethernet 00:23:ae:fe:42:80;
|
|
fixed-address 185.236.240.37;
|
|
option host-name "bc01n03";
|
|
filename "netboot.xyz-undionly.kpxe";
|
|
}
|
|
host bc01n04 {
|
|
hardware ethernet 00:23:ae:fe:7e:a8;
|
|
fixed-address 185.236.240.41;
|
|
option host-name "bc01n04";
|
|
filename "netboot.xyz-undionly.kpxe";
|
|
}
|
|
host boston-packets {
|
|
hardware ethernet 00:23:ae:fe:45:8c;
|
|
fixed-address 185.236.240.38;
|
|
option host-name "boston-packets.hackerspace.pl";
|
|
}
|
|
host dcr01s22 {
|
|
hardware ethernet 90:1b:0e:08:12:b8;
|
|
fixed-address 185.236.240.39;
|
|
option host-name "dcr01s22";
|
|
}
|
|
host dcr01s24 {
|
|
hardware ethernet 90:1b:0e:31:bb:6a;
|
|
fixed-address 185.236.240.40;
|
|
option host-name "dcr01s24";
|
|
}
|
|
host dcr03s32b1 {
|
|
hardware ethernet 02:01:87:4a:9a:b9;
|
|
fixed-address 185.236.240.26;
|
|
option host-name "dcr03s32b1";
|
|
}
|
|
'';
|
|
};
|
|
}
|