0

I tried to run a VM on QEMU, but the VM is up without an IP address associated with eth0. I configured the bridge and tap interface on the host, and I can see that:

brctl show bro
bridge name     bridge id               STP enabled     interfaces
bro             8000.bedc8d16e7d8       no              eno1
                                                        tap0

The interfaces look good:

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

Here is the command I use to run the VM:

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

At the guest there is no IP, even though DHCP is no:

[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

After I tried to config from CentOS nmtui, service network restart failed. Found in log:

localhost.localdomain network[4058]: Bringing up interface eth0: Error: Connection activation failed: IP configuration could not be reserved (no available address, timeout, etc.)

Do you have any idea what could be going wrong?

0

It's been a while since I ran kvm guests directly from the command line (I prefer libvirt, or more recently Proxmox).

However, looking at the interface definitions at the host, and comparing it to my working configuration, the most obvious difference is that your tap0 interface has IP address 192.168.100.222/24 whereas mine has no IP address. (The guest defines an IP address, obtained from DHCP. The host interface should not have one.)

# brctl show br0
bridge name     bridge id               STP enabled     interfaces
br0             8000.009c029758d6       no              eth0
                                                        vnet5

# ip addr show vnet5
12: vnet5: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UNKNOWN group default qlen 1000
    link/ether fe:54:00:3c:75:33 brd ff:ff:ff:ff:ff:ff
    inet6 fe80::fc54:ff:fe3c:7533/64 scope link
       valid_lft forever preferred_lft forever


# ssh vmguest ip addr show eth0
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
    link/ether 52:54:00:3c:75:33 brd ff:ff:ff:ff:ff:ff
    inet 192.168.1.15/24 brd 192.168.1.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::5054:ff:fe3c:7533/64 scope link
       valid_lft forever preferred_lft forever

Did you set that IP address on tap0 yourself, or was it a side-effect of your kvm command?

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.