From f7c3edf779a2691474986f836a185989571c13d9 Mon Sep 17 00:00:00 2001 From: JuliusFreudenberger Date: Mon, 11 Aug 2025 23:34:35 +0200 Subject: [PATCH] Actually apply systemd-networkd configuration Also disable networking.* options --- hosts/nixos-server-test/default.nix | 63 ++++++++++++++++++++--------- 1 file changed, 43 insertions(+), 20 deletions(-) diff --git a/hosts/nixos-server-test/default.nix b/hosts/nixos-server-test/default.nix index f37aca5..b92920a 100644 --- a/hosts/nixos-server-test/default.nix +++ b/hosts/nixos-server-test/default.nix @@ -4,7 +4,6 @@ imports = [ ../../modules/nix.nix - ../../modules/network-server.nix ../../modules/locale.nix ../../modules/server-cli.nix ../../modules/sshd.nix @@ -43,28 +42,52 @@ bridges = [ "vmbr0" ]; }; - # Actually set up the vmbr0 bridge - systemd.network.networks."10-lan" = { - matchConfig.Name = [ "ens18" ]; - networkConfig = { - Bridge = "vmbr0"; - }; - }; + networking.useDHCP = false; - systemd.network.netdevs."vmbr0" = { - netdevConfig = { - Name = "vmbr0"; - Kind = "bridge"; - }; - }; + systemd.network = { + enable = true; - systemd.network.networks."10-lan-bridge" = { - matchConfig.Name = "vmbr0"; - networkConfig = { - IPv6AcceptRA = true; - DHCP = "ipv4"; + links."10-wan" = { + matchConfig.Path = "pci-0000:01:00.0"; + linkConfig.Name = "wan"; + }; + + networks."10-wan" = { + matchConfig.Name = "enp1s0"; + networkConfig = { + # start a DHCP Client for IPv4 Addressing/Routing + DHCP = "ipv4"; + # accept Router Advertisements for Stateless IPv6 Autoconfiguraton (SLAAC) + IPv6AcceptRA = true; + }; + # make routing on this interface a dependency for network-online.target + linkConfig.RequiredForOnline = "routable"; + }; + + + # Actually set up the vmbr0 bridge + networks."10-lan" = { + matchConfig.Name = [ "ens18" ]; + networkConfig = { + Bridge = "vmbr0"; + }; + }; + + netdevs."vmbr0" = { + netdevConfig = { + Name = "vmbr0"; + Kind = "bridge"; + }; + }; + + networks."10-lan-bridge" = { + matchConfig.Name = "vmbr0"; + networkConfig = { + IPv6AcceptRA = true; + DHCP = "ipv4"; + }; + linkConfig.RequiredForOnline = "routable"; }; - linkConfig.RequiredForOnline = "routable"; }; # This option defines the first version of NixOS you have installed on this particular machine,