nixos/network-interfaces-systemd: fix IPv6 privacy extensions
networkd seems to be buggy with IPv6PrivacyExtensions=kernel being set, and the addresses don't appear anymore. In fact, the corresponding sysctl seems to be set to -1 again. Fixes https://github.com/NixOS/nixpkgs/issues/106858. Upstream Issue: https://github.com/systemd/systemd/issues/18003
This commit is contained in:
parent
91b8237b48
commit
d349582c07
1 changed files with 11 additions and 1 deletions
|
@ -93,7 +93,17 @@ in
|
|||
(if i.useDHCP != null then i.useDHCP else false));
|
||||
address = forEach (interfaceIps i)
|
||||
(ip: "${ip.address}/${toString ip.prefixLength}");
|
||||
networkConfig.IPv6PrivacyExtensions = "kernel";
|
||||
# IPv6PrivacyExtensions=kernel seems to be broken with networkd.
|
||||
# Instead of using IPv6PrivacyExtensions=kernel, configure it according to the value of
|
||||
# `tempAddress`:
|
||||
networkConfig.IPv6PrivacyExtensions = {
|
||||
# generate temporary addresses and use them by default
|
||||
"default" = true;
|
||||
# generate temporary addresses but keep using the standard EUI-64 ones by default
|
||||
"enabled" = "prefer-public";
|
||||
# completely disable temporary addresses
|
||||
"disabled" = false;
|
||||
}.${i.tempAddress};
|
||||
linkConfig = optionalAttrs (i.macAddress != null) {
|
||||
MACAddress = i.macAddress;
|
||||
} // optionalAttrs (i.mtu != null) {
|
||||
|
|
Loading…
Reference in a new issue