Qemu VM зависает при использовании интерфейса Tap в Windows

Qemu VM зависает при использовании интерфейса Tap в Windows

Когда я пробую TAP Interface в qemu, виртуальная машина зависает, не знаю почему. Но с -netdev userним не зависает, но вообще не может подключиться к виртуальной машине.

Я протестировал с помощью ESXiи Centos 7обе виртуальные машины зависают при использовании Tapинтерфейса. Centos 7Виртуальная машина запускается нормально, но при перезапуске eth0зависает и не восстанавливается. ESXiзависает во время загрузки при использовании Tapinterace.

Я использовал OpenVPN для создания Tap-интерфейса на Windows 10, переименовал интерфейс в Ethernet7 и использовал следующую команду при запуске Qemuвиртуальной машины.

-netdev tap,ifname=Ethernet7,script=no,downscript=no,id=hostnet0 -device e1000,netdev=hostnet0,id=net0,mac=DE:AD:BE:EF:16:B6

Я скачал последнюю версию Qemu для Windows с qemu.org

решение1

Обновление: интерфейс TAP не работал из-за того, что интерфейс Tap в Windows 10 использовал старый драйвер 2014 года. Я создал новый интерфейс (используя hdwwiz.exe) и у меня была возможность выбрать драйвер 2019 года вместо старого драйвера. Интерфейс TAP работает нормально и не замораживает виртуальную машину.

User modeСетевое соединение также работает нормально, если вам не нужен интерфейс TAP.

qemu-system-x86_64 -boot d -hda centos.img -m 2048 -smp cpus=2,cores=2 -netdev user,id=n1,hostfwd=tcp::2222-:22 -device e1000,netdev=n1

В Centosмне пришлось запустить команду, dhclient eth0так как она не назначает автоматически IP-адрес dhcp. После запуска команды виртуальная машина получает IP-адрес, 10.0.2.15и я могу подключиться к ней по SSH, используя ssh -p 2222 root@localhost.

Для ESXi мне пришлось включить SSHD в настройках ESXi и использовать localhost для подключения. ICMP не работает для обоих в User modeсети.

qemu-system-x86_64 -boot d -hda esxi.img -m 4096 -cpu Westmere -machine q35 -smp cpus=2,cores=2 -accel tcg -netdev user,id=n1,hostfwd=tcp::2223-:22,hostfwd=tcp::9443-:443,hostfwd=tcp::8085-:80 -device e1000,netdev=n1

Связанный контент