It's needed for RFC6724 rule 5.5, which as it turns out is more important than was initially discernible. Signed-off-by: David 'equinox' Lamparter --- net/ipv6/Kconfig | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/net/ipv6/Kconfig b/net/ipv6/Kconfig index c3806c6ac96f..39659e9b53a3 100644 --- a/net/ipv6/Kconfig +++ b/net/ipv6/Kconfig @@ -243,16 +243,26 @@ config IPV6_MULTIPLE_TABLES config IPV6_SUBTREES bool "IPv6: source address based routing" depends on IPV6_MULTIPLE_TABLES + default y help Enable routing by source address or prefix. The destination address is still the primary routing key, so mixing normal and source prefix specific routes in the same routing table - may sometimes lead to unintended routing behavior. This can be - avoided by defining different routing tables for the normal and - source prefix specific routes. + may sometimes lead to unintended routing behavior if the order of + lookups is misunderstood. To achieve full separation based on source + address, different routing tables should be defined for each source + prefix. - If unsure, say N. + Subtrees specifically address scenarios where local connectivity + between source prefixes is shared and unrestricted, but some + destinations (e.g. the default route) have more fine-grained rules. + + This feature is required to correctly support RFC6724 rule 5.5 in + source address selection. Rule 5.5 is a necessity for good + multihoming, renumbering and source prefix liveliness checks. + + If unsure, say Y. config IPV6_MROUTE bool "IPv6: multicast routing" -- 2.53.0