summaryrefslogtreecommitdiffstats
path: root/makefu/1systems/latte/1blu/network.nix
blob: 0a0eac9728e40c3070fc3b0d051eaa199ce67bf2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
{ 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;
    nameservers = [ "1.1.1.1" ];
  };
}