Man hat in einem Host ganz viele Netzwerk-Interfaces (in diesem Beispiel gehen wir mal von 4 aus) und hat diese zu einem LACP-Etherchannel (bond-Interface) zusammengefasst und möchte nun eine virtuelle Umgebung (KVM/QEMU über vde2) in das physikalische LAN (über den Etherchannel) integrieren
Das Geheimnis liegt darin, über das bond-Interface und den virtuellen Switch (qemutap) eine Bridge zu etablieren.
Hier mal ein Beispiel einer /etc/network/interfaces aus Debian 10.2 (Buster):
root@imhotep:~ # cat /etc/network/interfaces # This file describes the network interfaces available on your system # and how to activate them. For more information, see interfaces(5). #source /etc/network/interfaces.d/* # The loopback network interface auto lo iface lo inet loopback # The primary network interface #allow-hotplug enp0s25 enp10s0 ens4f0 ens4f1 iface enp0s25 inet manual iface enp10s0 inet manual iface ens4f0 inet manual iface ens4f1 inet manual auto qemutap iface qemutap inet manual vde2-switch -t qemutap auto bond0 iface bond0 inet manual bond-mode 4 bond-miimon 500 bond-lacp-rate 1 bond-updelay 4000 bond-downdelay 3000 bond-ad-select 1 bond-xmit_hash_policy 0 bond-use_carrier 1 bond-slaves enp0s25 enp10s0 ens4f0 ens4f1 auto br0 iface br0 inet static address 192.168.80.27 netmask 255.255.255.0 gateway 192.168.80.3 broadcast 192.168.80.255 bridge_ports bond0 qemutap bridge_fd 0 bridge_hello 2 bridge_maxage 12 bridge_stp off iface br0 inet6 static address fd99:78a3:d6c6:0:21e:67ff:fe1b:9565/64 privext 1 accept_ra 2 autoconf 1
Die QEMU-Hosts werden dann an den virtuellen Switch (qemutap) verbunden:
root@imhotep:~ # /usr/bin/qemu-system-x86_64 -name kali -daemonize -pidfile /var/run/qemu_kali.pid -monitor unix:/tmp/kali.sock,server,nowait -enable-kvm -m 2048 -vga virtio -hda /export/daten/ablage/eltern/oliver/qemu/kali/disk.qcow2 -vnc :1 -k de -cpu host -net nic,model=rtl8139,macaddr=52:54:00:01:00:01 -net vde,sock=/var/run/vde2/qemutap.ctl
Zu beachten ist, dass jeder Host eine eigene MAC-Adresse bekommen sollte, um Netzwerkprobleme zu verhindern ;)