I'm running libvirt on ArchLinux using its default network with manually created nftables rules.

I noticed that libvirt's DHCP server wasn't assigning IP addresses to VMs:

journalctl -u libvirtd

Sep 06 17:46:19 laptop dnsmasq-dhcp[8083]: no address range available for DHCP request via virbr0

I did some investigating and found that when I take a look at

ip addr

The virbr0 bridge only has the IP range assigned to it. It's missing the range, which is why libvirt's dnsmasq instance is refusing to assign IPs to VMs.

Now, libvirt automatically reconfigures the virbr0 bridge when I start/stop a VM, so I always have to manually run

sudo ip address add dev virbr0 broadcast

to get networking to work.

Is there a configuration issue on my end, or is there something off with how libvirt is treating the bridge?

I'd like to find a way to continue using as much of libvirt's out-of-the-box networking as possible and not have to manually manage the bridge or its IP ranges.

  • What is the libvirt configuration for that virtual network? – Michael Hampton Sep 7 at 22:10

Your Answer

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

Browse other questions tagged or ask your own question.