{ ... }: { networking = { useDHCP = false; nameserver = [ "9.9.9.9" "149.112.112.112" ]; # Define VLANS vlans = { wan = { id = 10; interface = "enp1s0"; }; lan = { id = 1; interface = "enp2s0"; }; server = { id = 2; interface = "enp3s0"; }; multimedia = { id = 3; interface = "enp4s0"; }; smart = { id = 4094; interface = "enp4s0"; }; guest = { id = 100; interface = "enp4s0"; }; }; interfaces = { # Don't request DHCP on the physical interfaces enp1s0.useDHCP = false; enp2s0.useDHCP = false; enp3s0.useDHCP = false; enp4s0.useDHCP = false; # Handle the VLANs wan.useDHCP = true; lan = { ipv4.addresses = [{ address = "10.42.96.1"; prefixLength = 24; }]; }; server = { ipv4.addresses = [{ address = "10.42.97.1"; prefixLength = 24; }]; }; multimedia = { ipv4.addresses = [{ address = "10.42.99.1"; prefixLength = 24; }]; }; smart = { ipv4.addresses = [{ address = "10.42.100.1"; prefixLength = 24; }]; }; guest = { ipv4.addresses = [{ address = "10.42.254.1"; prefixLength = 24; }]; }; }; }; }