Моя установка:
Debian Wheezy x64 на хосте и в гостевой системе.
Я использую настройку tun / tap для подключения виртуальной машины к хосту.
Я использую следующие параметры сети KVM:
-net nic,macaddr=DE:AD:BE:EF:1A:DC
-net tap,ifname=tap3,script=no,downscript=no
Сеть IPv4 работает с использованием NAT, поэтому я могу подключиться к машине по ssh извне.
IPv6 - это отдельная история.
Хост имеет полное соединение IPv6, я могу связаться с ним извне, и я могу подключиться к внешним хостам IPv6.
Хост / etc / network / interfaces (часть IPv6)
iface eth0 inet6 static
address 2a01:...::2
netmask 64
gateway fe80::1
Гость / etc / network / interfaces (часть IPv6)
iface eth0 inet6 static
address 2a01:...::3
netmask 64
gateway route add 2a01:...::1:3
В tap3
интерфейс настраивается так:
ip -6 addr add 2a01:...::1:3/64 dev tap3 # The tap3 address
ip -6 route add 2a01:...::3 dev tap3 # The guest eth0 address
ip -6 route add 2a01:...::2 dev tap3 # The host eth0 address
Хост может достичь 2a01:...:3
.
Гость может достичь 2a01:...::1:3
и даже 2a01:...::2
, но нет адреса вне хоста.
ping6 www.google.de
PING www.google.de(fra07s32-in-x1f.1e100.net) 56 data bytes
^C
--- www.google.de ping statistics ---
4 packets transmitted, 0 received, 100% packet loss, time 3024ms
Пакеты теряются, ответа ICMP нет. (От хоста все работает как положено)
Я включил пересылку по sysctl:
net.ipv6.conf.eth0.forwarding = 1
net.ipv6.conf.eth0.mc_forwarding = 0
net.ipv6.conf.tap3.forwarding = 1
net.ipv6.conf.tap3.mc_forwarding = 0
Как я могу получить пакеты через хост?
редактировать: "..." - это всегда одно и то же значение для всех адресов в приведенном выше списке файлов и команд. Это сеть / 64, которую я получил от RIPE.