nix-config/config/basic/net.nix

47 lines
1.3 KiB
Nix
Raw Normal View History

2024-10-25 14:45:07 +02:00
{
lib,
config,
...
}:
2023-11-28 00:40:46 +01:00
{
networking = {
2024-12-16 21:28:08 +01:00
search = [ "local" ];
useNetworkd = true;
dhcpcd.enable = false;
2023-12-17 16:34:05 +01:00
useDHCP = false;
2023-09-03 13:26:08 +02:00
# allow mdns port
2024-07-26 22:12:48 +02:00
firewall.allowedUDPPorts = [ 5353 ];
renameInterfacesByMac = lib.mkIf (!config.boot.isContainer) (
2024-07-26 22:12:48 +02:00
lib.mapAttrs (_: v: v.mac) (config.secrets.secrets.local.networking.interfaces or { })
);
};
systemd.network = {
enable = true;
2024-12-04 22:47:40 +01:00
wait-online.enable = false;
};
2024-12-04 22:47:40 +01:00
systemd.services.NetworkManager-wait-online.enable = false;
# Do not take down the network for too long when upgrading,
# This also prevents failures of services that are restarted instead of stopped.
# It will use `systemctl restart` rather than stopping it with `systemctl stop`
# followed by a delayed `systemctl start`.
systemd.services.systemd-networkd.stopIfChanged = false;
# Services that are only restarted might be not able to resolve when resolved is stopped before
systemd.services.systemd-resolved.stopIfChanged = false;
system.nssDatabases.hosts = lib.mkMerge [
2024-07-26 22:12:48 +02:00
(lib.mkBefore [ "mdns_minimal [NOTFOUND=return]" ])
(lib.mkAfter [ "mdns" ])
];
services.resolved = {
enable = true;
2023-09-02 20:11:06 +02:00
# man I whish dnssec would be viable to use
2024-05-13 22:54:21 +02:00
dnssec = "false";
2023-09-02 20:11:06 +02:00
llmnr = "false";
extraConfig = ''
Domains=~.
MulticastDNS=true
'';
};
2024-10-25 14:45:07 +02:00
}