Forneça IPs estáticos para várias máquinas virtuais QEMU

Forneça IPs estáticos para várias máquinas virtuais QEMU

meu conhecimento de rede no Linux é bastante limitado e tenho tentado atribuir endereços IP estáticos a cada uma das minhas VMs, pois elas precisam se comunicar entre si.

Tenho lido alguma documentação de rede QEMU sobre interfaces TUN/TAP, bem como configurado br0 com qemu-ifup e qemu-ifdown. No entanto, acabei de me recuperar da perda completa da minha conexão wifi. Então decidi ver se consigo algumas dicas sobre o que exatamente fazer.

Essencialmente, a configuração precisa ser tal que 3 VMs sejam criadas a partir da máquina host e recebam IPs estáticos para que possam se comunicar entre si e também com o host. Atualmente, todas as VMs compartilham os mesmos endereços MAC e IP.

Estou iniciando todas as VMs essencialmente com os mesmos comandos e acho que os -netparâmetros precisam ser modificados.

Exemplo de inicialização da VM QEMU:

sudo ./qemu-system-x86_64 \
     -drive file=drive.img,format=raw \
    -boot d \
    -k en-us \
    -object can-bus,id=canbus0 \
    -object can-bus,id=canbus1 \
    -device mioe3680_pci,canbus0=canbus0,canbus1=canbus1 \
    -object can-host-socketcan,id=canhost0,if=can0,canbus=canbus0,if=vcan0 \
    -object can-host-socketcan,id=canhost1,if=can1,canbus=canbus1,if=vcan1 \
    -m size=2048 \
    -nic user,hostfwd=tcp::6022-:22 \
    -netdev bridge,id=hn0,  \           
    -smp 4 \
    -enable-kvm &

Consigo fazer ssh nesta VM com ssh user@localhost -p 6022a qual funciona. Mas para que o software que estou tentando escrever funcione, essas VMs precisam de endereços IP estáticos, pois deve haver comunicação TCP entre cada uma delas.

Meu host está executando o Ubuntu 20.04, e uma das minhas VMs está executando o Ubuntu 16.04 Xenial e a outra Centos 7.

Então, essencialmente, a configuração que eu gostaria é:

host = 192.168.1.80
vm1 = 192.168.1.2
vm2 = 192.168.1.22
vm3 = 192.168.1.3

informação relacionada