{ lib, ... }: {
  # This file was populated at runtime with the networking
  # details gathered from the active system.
  networking = {
    firewall = {
      enable = true;
      allowedTCPPorts = [ 22 80 12345 53 443 ];
    };
    defaultGateway = "172.31.1.1";
    defaultGateway6 = {
      address = "fe80::1";
      interface = "eth0";
    };
    dhcpcd.enable = false;
    usePredictableInterfaceNames = lib.mkForce false;
    interfaces = {
      eth0 = {
        ipv4.addresses = [
          { address="157.180.47.84"; prefixLength=32; }
        ];
        ipv6.addresses = [
          { address="2a01:4f9:c012:93f::1"; prefixLength=64; }
{ address="fe80::9400:4ff:fe37:15e3"; prefixLength=64; }
        ];
        ipv4.routes = [ { address = "172.31.1.1"; prefixLength = 32; } ];
        ipv6.routes = [ { address = "fe80::1"; prefixLength = 128; } ];
      };

    };
  };
  services.udev.extraRules = ''
    ATTR{address}=="96:00:04:37:15:e3", NAME="eth0"

  '';
}
