🏡 my personal home lab
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

static ipv6

+28 -8
+4 -4
flake.nix
··· 43 43 hosts = { 44 44 cm4-node-1 = { 45 45 ipv4 = "10.0.0.11"; 46 - ipv6 = "2a02:168:7353::68f"; 46 + ipv6 = "2a02:168:7353::11"; 47 47 hardware = nixos-hardware.nixosModules.raspberry-pi-4; 48 48 }; 49 49 cm4-node-2 = { 50 50 ipv4 = "10.0.0.12"; 51 - ipv6 = "2a02:168:7353::6f8"; 51 + ipv6 = "2a02:168:7353::12"; 52 52 hardware = nixos-hardware.nixosModules.raspberry-pi-4; 53 53 }; 54 54 rk1-node-1 = { 55 55 ipv4 = "10.0.0.13"; 56 - ipv6 = "2a02:168:7353::7bf"; 56 + ipv6 = "2a02:168:7353::13"; 57 57 hardware = turing-rk1.nixosModules.turing-rk1; 58 58 }; 59 59 rk1-node-2 = { 60 60 ipv4 = "10.0.0.14"; 61 - ipv6 = "2a02:168:7353::708"; 61 + ipv6 = "2a02:168:7353::14"; 62 62 hardware = turing-rk1.nixosModules.turing-rk1; 63 63 }; 64 64 };
+24 -4
modules/common.nix
··· 3 3 name, 4 4 lib, 5 5 hosts, 6 + host, 6 7 pkgs, 7 8 ... 8 9 }: ··· 41 42 }; 42 43 43 44 networking = { 44 - networkmanager.enable = true; 45 + useNetworkd = true; 46 + useDHCP = false; 45 47 46 48 # set name from flake host list 47 49 hostName = name; 48 50 49 51 # generate /etc/hosts entries for all nodes 50 52 hosts = lib.mkMerge ( 51 - lib.mapAttrsToList (hostname: host: { 52 - ${host.ipv4} = [ hostname ]; 53 - ${host.ipv6} = [ hostname ]; 53 + lib.mapAttrsToList (hostname: h: { 54 + ${h.ipv4} = [ hostname ]; 55 + ${h.ipv6} = [ hostname ]; 54 56 }) hosts 55 57 ); 56 58 ··· 58 60 firewall = { 59 61 enable = true; 60 62 allowedTCPPorts = [ 22 ]; 63 + }; 64 + }; 65 + 66 + systemd.network = { 67 + enable = true; 68 + networks."10-lan" = { 69 + matchConfig.Name = "end0"; 70 + address = [ 71 + "${host.ipv4}/24" 72 + "${host.ipv6}/64" 73 + ]; 74 + gateway = [ "10.0.0.1" ]; 75 + networkConfig = { 76 + IPv6AcceptRA = true; 77 + }; 78 + ipv6AcceptRAConfig = { 79 + UseDNS = true; 80 + }; 61 81 }; 62 82 }; 63 83