ipv6: Implement draft-ietf-6man-rfc4941bis
authorFernando Gont <fgont@si6networks.com>
Fri, 1 May 2020 03:51:47 +0000 (00:51 -0300)
committerDavid S. Miller <davem@davemloft.net>
Thu, 7 May 2020 00:00:02 +0000 (17:00 -0700)
commit969c54646af0d7d94a5f0f37adbbfe024e85466e
tree3f2d7c20f1959013ddc4a0467941bdf039fb594d
parenta7defa758dfce680d3a33d64598715589c00cb5f
ipv6: Implement draft-ietf-6man-rfc4941bis

Implement the upcoming rev of RFC4941 (IPv6 temporary addresses):
https://tools.ietf.org/html/draft-ietf-6man-rfc4941bis-09

* Reduces the default Valid Lifetime to 2 days
  The number of extra addresses employed when Valid Lifetime was
  7 days exacerbated the stress caused on network
  elements/devices. Additionally, the motivation for temporary
  addresses is indeed privacy and reduced exposure. With a
  default Valid Lifetime of 7 days, an address that becomes
  revealed by active communication is reachable and exposed for
  one whole week. The only use case for a Valid Lifetime of 7
  days could be some application that is expecting to have long
  lived connections. But if you want to have a long lived
  connections, you shouldn't be using a temporary address in the
  first place. Additionally, in the era of mobile devices, general
  applications should nevertheless be prepared and robust to
  address changes (e.g. nodes swap wifi <-> 4G, etc.)

* Employs different IIDs for different prefixes
  To avoid network activity correlation among addresses configured
  for different prefixes

* Uses a simpler algorithm for IID generation
  No need to store "history" anywhere

Signed-off-by: Fernando Gont <fgont@si6networks.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Documentation/networking/ip-sysctl.rst
include/net/if_inet6.h
net/ipv6/addrconf.c