Use DHCP across the board

This commit is contained in:
Greg Hellings
2025-12-02 21:34:13 -06:00
parent 035bd48635
commit 98d188bf0b
4 changed files with 51 additions and 98 deletions
+2 -15
View File
@@ -37,6 +37,7 @@
kubernetes = {
enable = true;
vipInterface = "enp38s0";
vip = "10.42.1.6";
priority = 255;
};
tailscale = {
@@ -59,27 +60,13 @@
};
networking = {
defaultGateway = {
address = " 10.42.1.1";
interface = "enp38s0";
};
firewall = {
enable = true;
allowedTCPPorts = [ 80 ];
checkReversePath = lib.mkForce false;
};
hostName = "isaiah";
interfaces = {
enp38s0 = {
ipv4.addresses = [
{
address = "10.42.1.6";
prefixLength = 16;
}
];
};
};
nameservers = [ "10.42.1.5" ];
interfaces.enp38s0.useDHCP = true;
useDHCP = false;
};
+5 -13
View File
@@ -22,8 +22,9 @@
initrd.kernelModules = [
"amdgpu"
];
kernelParams = [
];
kernelParams =
[
];
loader = {
systemd-boot.enable = true;
efi.canTouchEfiVariables = true;
@@ -73,6 +74,7 @@
kubernetes = {
enable = true;
vipInterface = "br0";
vip = "10.42.1.8";
priority = 254;
};
tailscale = {
@@ -103,17 +105,7 @@
interface = "br0";
};
firewall.allowedTCPPorts = [ 3389 ];
interfaces = {
br0 = {
ipv4.addresses = [
{
address = "10.42.1.8";
prefixLength = 16;
}
];
};
};
nameservers = [ "10.42.1.5" ];
interfaces.br0.useDHCP = true;
};
programs.steam = {
+5 -26
View File
@@ -53,37 +53,16 @@
networkmanager.enable = lib.mkForce true;
enableIPv6 = false;
useDHCP = false;
interfaces = {
# This seems to be direct mother board interface
enp12s0.useDHCP = true;
enp12s0.ipv4.addresses = [
{
address = "10.42.1.13";
prefixLength = 16;
}
];
};
defaultGateway = {
address = "10.42.1.1";
interface = "enp12s0";
};
nameservers = [
"10.42.1.5"
"10.42.1.1"
];
interfaces.enp12s0.useDHCP = true;
};
# Let's do a sound thing
services = {
k3s = {
extraFlags =
let
ip = (builtins.head config.networking.interfaces.enp12s0.ipv4.addresses).address;
in
[
"--tls-san ${ip}"
#"--bind-address ${ip}"
];
extraFlags = [
"--tls-san 10.42.1.13"
#"--bind-address ${ip}"
];
};
xserver.videoDrivers = [ "nvidia" ];
};
+39 -44
View File
@@ -29,6 +29,11 @@ in
default = 1;
description = "VIP priority";
};
vip = lib.mkOption {
type = lib.types.str;
default = null;
description = "The IP address of this host";
};
vipInterface = lib.mkOption {
type = lib.types.str;
default = null;
@@ -56,22 +61,22 @@ in
];
networking.firewall = {
allowedTCPPorts = [
80
443
5432
6443
10250
]
++ (
if cfg.agentOnly then
[ ]
else
[
2379
2380
]
);
allowedTCPPorts =
[
80
443
5432
6443
]
++ (
if cfg.agentOnly then
[ ]
else
[
2379
2380
]
);
allowedUDPPorts = [ 8472 ];
};
@@ -137,35 +142,25 @@ in
serverAddr = lib.mkIf (config.networking.hostName != "isaiah") "https://isaiah.home:6443";
tokenFile = config.age.secrets.kubernetesToken.path;
};
keepalived =
let
ip = (builtins.head config.networking.interfaces."${cfg.vipInterface}".ipv4.addresses).address;
in
{
enable = true;
openFirewall = true;
vrrpInstances.kubernetes = {
interface = cfg.vipInterface;
priority = cfg.priority;
state = if (config.networking.hostName == "isaiah") then "MASTER" else "BACKUP";
virtualIps = [
{
addr = "10.42.5.1/16";
dev = cfg.vipInterface;
}
];
virtualRouterId = 77;
unicastPeers = lib.filter (v: v != ip) [
"10.42.1.6"
"10.42.1.8"
"10.42.1.13"
];
unicastSrcIp = ip;
extraConfig = ''
advert_int 1
'';
};
keepalived = {
enable = true;
openFirewall = true;
vrrpInstances.kubernetes = {
interface = cfg.vipInterface;
priority = cfg.priority;
state = if (config.networking.hostName == "isaiah") then "MASTER" else "BACKUP";
virtualIps = [
{
addr = "10.42.5.1/16";
dev = cfg.vipInterface;
}
];
virtualRouterId = 77;
extraConfig = ''
advert_int 1
'';
};
};
openiscsi = {
enable = true;
name = "${config.networking.hostName}-initiatorhost";