32 lines
873 B
Nix
32 lines
873 B
Nix
|
{ config, lib, pkgs, modulesPath, ... }:
|
||
|
let
|
||
|
external-mac = "c4:37:72:55:4e:1c";
|
||
|
external-gw = "178.254.28.1";
|
||
|
external-ip = "178.254.30.202";
|
||
|
external-ip6 = "2a00:6800:3:18c::2";
|
||
|
external-gw6 = "2a00:6800:3::1";
|
||
|
external-netmask = 22;
|
||
|
external-netmask6 = 64;
|
||
|
internal-ip = config.krebs.build.host.nets.retiolum.ip4.addr;
|
||
|
ext-if = "et0"; # gets renamed on the fly
|
||
|
in
|
||
|
{
|
||
|
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 = { address = external-gw6; interface = ext-if; };
|
||
|
defaultGateway = external-gw;
|
||
|
};
|
||
|
}
|