Install NixOS on Hetzner Online: Difference between revisions

imported>Mic92
fixup network configuration
imported>Makefu
Add alternative way to handle networking via networking.interfaces
Line 29: Line 29:
       Gateway = fe80::1
       Gateway = fe80::1
     '';
     '';
  };
}
</syntaxHighlight>
Another possibility is to use <code>networking.interfaces</code>:
<syntaxHighlight lang=nix>
let
  external-mac = "00:11:22:33:44:55";
  ext-if = "et0";
  external-ip = "144.x.x.x";
  external-ip6 = "2a01:XXXX:XXXX::1";
  external-gw6 = "fe80::1";
  external-netmask = 27;
  external-netmask6 = 64;
in {
  # rename the external interface based on the MAC of the interface
  services.udev.extraRules = ''SUBSYSTEM=="net", ATTR{address}=="${external-mac}", NAME="${ext-if}"'';
  networking = {
    interfaces."${ext-if}" = {
      ipv4.addresses = [{
        address = external-ip;
        prefixLength = external-netmask;
      }];
      ipv6.addresses = [{
        address = external-ip6;
        prefixLength = external-netmask6;
      }];
    };
    defaultGateway6 = external-gw6;
    defaultGateway = external-gw;
   };
   };
}
}
</syntaxHighlight>
</syntaxHighlight>