У меня есть гостевой ubuntu 14.04, установленный в kvm, хост - это Fedora 20. Гость eth1 находится в режиме моста macvtap. По умолчанию Ubuntu включает расширение конфиденциальности ipv6 и предпочитает временный адрес:
$ ip -6 addr show dev eth1
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qlen 1000
inet6 2001:da8:207:e216:a935:a562:3102:7e00/64 scope global temporary dynamic
valid_lft 599380sec preferred_lft 80380sec
inet6 2001:da8:207:e216:5054:ff:fed5:8cae/64 scope global dynamic
valid_lft 2591548sec preferred_lft 604348sec
inet6 fe80::5054:ff:fed5:8cae/64 scope link
valid_lft forever preferred_lft forever
$ sysctl net.ipv6.conf.all.use_tempaddr
net.ipv6.conf.all.use_tempaddr = 2
Однако я не могу подключиться к Интернету по ipv6:
ping6 ipv6.google.com
PING ipv6.google.com(hkg03s10-in-x06.1e100.net) 56 data bytes
^C
--- ipv6.google.com ping statistics ---
4 packets transmitted, 0 received, 100% packet loss, time 3023ms
Если я удалю временный адрес 2001:da8:207:e216:a935:a562:3102:7e00/64
или установить net.ipv6.conf.all.use_tempaddr
до 1, это будет работать:
# sysctl net.ipv6.conf.eth1.use_tempaddr=1
net.ipv6.conf.eth1.use_tempaddr = 1
# ifdown eth1
# ifup eth1
# ping6 ipv6.google.com
PING ipv6.google.com(hkg03s10-in-x06.1e100.net) 56 data bytes
64 bytes from hkg03s10-in-x06.1e100.net: icmp_seq=1 ttl=47 time=305 ms
64 bytes from hkg03s10-in-x06.1e100.net: icmp_seq=2 ttl=47 time=305 ms
И ОС хоста (Fedora 20) могла получить доступ ipv6.google.com
даже если я установлю net.ipv6.conf.all.use_tempaddr
к 2.
Мне кажется, что приватный адрес в kvm guest не может получить доступ к ipv6 Internet. Почему это?