我尝试在 QEMU 上运行虚拟机,但虚拟机启动时没有与 eth0 关联的 IP 地址。我在主机上配置了网桥和 tap 接口,我可以看到:
brctl show bro
bridge name bridge id STP enabled interfaces
bro 8000.bedc8d16e7d8 no eno1
tap0
界面看起来不错:
ip addr show bro
3: bro: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether be:dc:8d:16:e7:d8 brd ff:ff:ff:ff:ff:ff
inet 192.168.100.112/24 brd 192.168.100.255 scope global dynamic bro
valid_lft 540129sec preferred_lft 540129sec
inet6 fe80::bcdc:8dff:fe16:e7d8/64 scope link
valid_lft forever preferred_lft forever
ip addr show eno1
2: eno1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel master bro state UP group default qlen 1000
link/ether 98:90:96:9d:d9:83 brd ff:ff:ff:ff:ff:ff
ip addr show tap0
8: tap0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel master bro state DOWN group default qlen 1000
link/ether d2:74:5b:04:81:f8 brd ff:ff:ff:ff:ff:ff
inet 192.168.100.222/24 brd 192.168.100.255 scope global tap0
valid_lft forever preferred_lft forever
这是我用来运行虚拟机的命令:
sudo qemu-system-aarch64 -m 1024 -cpu cortex-a57 -M virt -nographic -pflash flash0.img -pflash flash1.img -drive if=none,file=CentOS-7-aarch64-Minimal-1810.iso,id=hd0 -device virtio-blk-device,drive=hd0 -netdev type=tap,id=net0 -device virtio-net-device,netdev=net0,mac=bc:dc:8d:16:e7:d8, -hda centos7-arm.img
尽管 DHCP 没有生效,但客户机上却没有 IP:
[root@localhost ~]# ip link show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT group default qlen 1000
link/ether bc:dc:8d:16:e7:d8 brd ff:ff:ff:ff:ff:ff
在我尝试从 centos nmtui 进行配置后,服务网络重启失败。在日志中发现:
localhost.localdomain network[4058]: 启动接口 eth0: 错误:连接激活失败:无法保留 IP 配置(无可用地址、超时等)
你知道可能出了什么问题吗?