summaryrefslogtreecommitdiff
path: root/Biz/Dev/Networking.nix
blob: c45cecb21261a9509d58a3c5c81134625c8d761e (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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
{ ... }:

let
  ports = import ../Cloud/Ports.nix;
in {
  networking = {
    nameservers = [ "1.1.1.1" ];
    hostName = "lithium";
    hosts = {
      "::1" = [ "localhost" "ipv6-localhost" "ipv6-loopback" ];
    };

    firewall = {
      allowedTCPPorts = [
        ports.bitcoind
        ports.delugeWeb
        ports.et
        ports.gemini
        ports.git
        ports.http
        ports.https
        ports.jellyfin
        ports.jupyter
        ports.k3s
        ports.mpd
        ports.mpd-stream
        ports.murmur
        ports.radicale
        ports.sabten
        ports.ssh
        ports.stableDiffusion
        ports.tor
      ];
      allowedTCPPortRanges = [
        ports.torrents
        ports.httpdev
      ];
      allowedUDPPorts = [
        ports.dns
        ports.et
        ports.murmur
      ];
      allowedUDPPortRanges = [
        ports.torrents
      ];
      checkReversePath = false;
      #extraCommands = lib.mkMerge [ (lib.mkAfter ''
      #  iptables -w -t filter -A nixos-fw -s 192.168.0.0/24 -p udp --dport 53 -i enp1s0 -j nixos-fw-accept
      #  iptables -w -t filter -A nixos-fw -s 192.168.0.0/24 -p tcp --dport 53 -i enp1s0 -j nixos-fw-accept
      #'') ];
    };

    # The global useDHCP flag is deprecated, therefore explicitly set to false here.
    # Per-interface useDHCP will be mandatory in the future, so this generated config
    # replicates the default behaviour.
    useDHCP = false;
    interfaces.enp2s0.useDHCP = true;
  };

}