nixos/network-interfaces: make preferTempAddr=false work again

This commit is contained in:
rnhmjoj
2019-07-09 08:08:45 +02:00
committed by Linus Heckemann
parent ab225fc1ab
commit 1738283e6e
2 changed files with 33 additions and 5 deletions
+13 -3
View File
@@ -1089,12 +1089,22 @@ in
services.udev.packages = [
(pkgs.writeTextFile rec {
name = "99-ipv6-privacy-extensions.rules";
destination = "/etc/udev/rules.d/99-${name}";
name = "ipv6-privacy-extensions.rules";
destination = "/etc/udev/rules.d/98-${name}";
text = ''
# enable and prefer IPv6 privacy addresses by default
ACTION=="add", SUBSYSTEM=="net", RUN+="${pkgs.procps}/bin/sysctl net.ipv6.conf.%k.use_tempaddr=2"
'';
}) ] ++ lib.optional (cfg.wlanInterfaces != {})
})
(pkgs.writeTextFile rec {
name = "ipv6-privacy-extensions.rules";
destination = "/etc/udev/rules.d/99-${name}";
text = concatMapStrings (i: ''
# enable IPv6 privacy addresses but prefer EUI-64 addresses for ${i.name}
ACTION=="add", SUBSYSTEM=="net", RUN+="${pkgs.procps}/bin/sysctl net.ipv6.conf.${i.name}.use_tempaddr=1"
'') (filter (i: !i.preferTempAddress) interfaces);
})
] ++ lib.optional (cfg.wlanInterfaces != {})
(pkgs.writeTextFile {
name = "99-zzz-40-wlanInterfaces.rules";
destination = "/etc/udev/rules.d/99-zzz-40-wlanInterfaces.rules";