#
# USAGI Linux - IPv6 Privacy Extensions (RFC 3041) support -
#
# $USAGI: PrivacyExtensions,v 1.4 2002/06/07 16:59:08 yoshfuji Exp $
#

Nodes use IPv6 stateless address auto-configuration to generate
address. The address contain embedded IEEE Identifiers (cf. MAC
Address)
If you don't want to disclose your IEEE identifier to anybody,
you can use Privacy Extensions (RFC3041).
Please enable following kernel option (if you want).

   Networking options  --->  
     [*]     IPv6: Privacy Extensions (RFC 3041) support
                   CONFIG_IPV6_PRIVACY

With this option, additional periodically-alter pseudo-random
global-scope unicast address(es) will assigned to your interface(s).

By default (if you enable it), kernel generates temporary addresses.
However it won't use them unless application explicitly bind them.

To prefer temporary addresses over public addresses, do
  # echo 2 >/proc/sys/net/ipv6/conf/all/use_tempaddr
or
  # sysctl -w net.ipv6.conf.all.use_tempaddr=2

NOTE: Per-interface setting will be ignored.

If you want to return the value to the initial, set it to 1.


Temporary addresses have valid and preferred lifetimes. You can
know it by the following commands. Temporary addresses are going
to be regenerated according to these value (the unit is one second)

To get the preferred life time:
 # cat /proc/sys/net/ipv6/conf/all/temp_prefered_lft
 or
 # sysctl net.ipv6.conf.all.temp_prefered_lft

To get the valid life time:
 # cat /proc/sys/net/ipv6/conf/all/temp_valid_lft
  or
 # sysctl net.ipv6.conf.all.temp_valid_lft

You can change these value like use_tempaddr.


USAGI supports per-connection configuration mechanism,
using IPV6_PRIVACY socket option.  
	option type: int
	option value:
		< 0: prefer public addresses.
		= 0: use system-wide preference. (default)
		> 0: prefer temporary addresses.

NOTE: IPV6_PRIVACY is not officially assigned; the name/value may change.

