networking-interfaces.nix: remove broken NDP bits from proxyARP
The `networking.interfaces.<name?>.proxyARP` option previously mentioned it would also enable IPv6 forwarding and `proxy_ndp`. However, the `proxy_ndp` option was never actually set (the non-existing `net.ipv6.conf.proxy_arp` sysctl was set instead). In addition `proxy_ndp` also needs individual entries for each ip to proxy for. Proxy ARP and Proxy NDP are two different concepts, and enabling the latter should be a conscious decision. This commit removes the broken NDP support, and disables explicitly enabling IPv6 forwarding (which is the default in most cases anyways) Fixes #62339.
This commit is contained in:
parent
32b8ed7380
commit
5d3a72f683
|
@ -283,7 +283,7 @@ let
|
||||||
default = false;
|
default = false;
|
||||||
type = types.bool;
|
type = types.bool;
|
||||||
description = ''
|
description = ''
|
||||||
Turn on proxy_arp for this device (and proxy_ndp for ipv6).
|
Turn on proxy_arp for this device.
|
||||||
This is mainly useful for creating pseudo-bridges between a real
|
This is mainly useful for creating pseudo-bridges between a real
|
||||||
interface and a virtual network such as VPN or a virtual machine for
|
interface and a virtual network such as VPN or a virtual machine for
|
||||||
interfaces that don't support real bridging (most wlan interfaces).
|
interfaces that don't support real bridging (most wlan interfaces).
|
||||||
|
@ -1055,11 +1055,11 @@ in
|
||||||
optionalString hasBonds "options bonding max_bonds=0";
|
optionalString hasBonds "options bonding max_bonds=0";
|
||||||
|
|
||||||
boot.kernel.sysctl = {
|
boot.kernel.sysctl = {
|
||||||
|
"net.ipv4.conf.all.forwarding" = mkDefault (any (i: i.proxyARP) interfaces);
|
||||||
"net.ipv6.conf.all.disable_ipv6" = mkDefault (!cfg.enableIPv6);
|
"net.ipv6.conf.all.disable_ipv6" = mkDefault (!cfg.enableIPv6);
|
||||||
"net.ipv6.conf.default.disable_ipv6" = mkDefault (!cfg.enableIPv6);
|
"net.ipv6.conf.default.disable_ipv6" = mkDefault (!cfg.enableIPv6);
|
||||||
"net.ipv6.conf.all.forwarding" = mkDefault (any (i: i.proxyARP) interfaces);
|
|
||||||
} // listToAttrs (flip concatMap (filter (i: i.proxyARP) interfaces)
|
} // listToAttrs (flip concatMap (filter (i: i.proxyARP) interfaces)
|
||||||
(i: forEach [ "4" "6" ] (v: nameValuePair "net.ipv${v}.conf.${replaceChars ["."] ["/"] i.name}.proxy_arp" true)))
|
(i: [(nameValuePair "net.ipv4.conf.${replaceChars ["."] ["/"] i.name}.proxy_arp" true)]))
|
||||||
// listToAttrs (forEach interfaces
|
// listToAttrs (forEach interfaces
|
||||||
(i: let
|
(i: let
|
||||||
opt = i.tempAddress;
|
opt = i.tempAddress;
|
||||||
|
|
Loading…
Reference in New Issue