无法使用网络,但虚拟机中存在网络接口

无法使用网络,但虚拟机中存在网络接口

我正在尝试获取具有用户模式网络设置的虚拟机,但网络似乎不起作用,甚至无法 ping localhost 或 wget localhost。当我运行 ifconfig 时,存在环回“lo”和以太网“eth0”设备,但两者都没有 IP 地址。

对于上下文,我遵循本指南:https://mergeboard.com/blog/2-qemu-microvm-docker/

这是我用来启动虚拟机的命令:

qemu-system-x86_64 \
-M microvm,x-option-roms=off,isa-serial=off,rtc=off \
-no-acpi \
-enable-kvm \
-cpu host \
-nodefaults \
-no-user-config \
-nographic \
-no-reboot \
-device virtio-serial-device \
-chardev stdio,id=virtiocon0 \
-device virtconsole,chardev=virtiocon0 \
-drive id=root,file=alpine.qcow2,format=qcow2,if=none \
-device virtio-blk-device,drive=root \
-kernel kernel/bzImage \
-append "console=hvc0 root=/dev/vda rw acpi=off reboot=t panic=-1" -m 512 \
-smp 2 \
-device virtio-rng-device \
-netdev user,id=mynet0 \
-device virtio-net-device,netdev=mynet0

这是 ifconfig 的输出

/ # ifconfig -a
eth0      Link encap:Ethernet  HWaddr 52:54:00:12:34:56  
          BROADCAST MULTICAST  MTU:1500  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

lo        Link encap:Local Loopback  
          LOOPBACK  MTU:65536  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

到目前为止,我已经尝试过运行 Alpine 和 Ubuntu 作为来宾操作系统。我尝试在 VirtualBox VM 中从头开始运行相同的设置,看看我的问题是否来自于主机操作系统或 Qemu 安装配置错误。两次尝试都给出了完全相同的结果,即具有两个没有 IP 地址的网卡的虚拟机。并且机器无法访问本地主机或互联网。

相关内容