Nicolas Dichtel e837735ec4 ip6_tunnel: ensure to always have a link local address
When an Xin6 tunnel is set up, we check other netdevices to inherit the link-
local address. If none is available, the interface will not have any link-local
address. RFC4862 expects that each interface has a link local address.

Now than this kind of tunnels supports x-netns, it's easy to fall in this case
(by creating the tunnel in a netns where ethernet interfaces stand and then
moving it to a other netns where no ethernet interface is available).

RFC4291, Appendix A suggests two methods: the first is the one currently
implemented, the second is to generate a unique identifier, so that we can
always generate the link-local address. Let's use eth_random_addr() to generate
this interface indentifier.

I remove completly the previous method, hence for the whole life of the
interface, the link-local address remains the same (previously, it depends on
which ethernet interfaces were up when the tunnel interface was set up).

Signed-off-by: Nicolas Dichtel <nicolas.dichtel@6wind.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2013-08-20 23:45:42 -07:00
..
2013-02-15 15:10:37 -05:00
2013-08-15 01:00:20 -07:00
2013-05-27 22:50:59 -07:00
2013-03-26 12:27:19 -04:00
2013-08-01 14:16:20 -07:00
2013-03-17 14:35:13 -04:00
2013-05-11 16:26:38 -07:00
2013-07-10 17:08:27 -07:00
2013-05-11 16:26:38 -07:00
2012-11-01 12:41:35 -04:00