How to fix “network ‘default’ is not active” error in libvirt

Question: When I am trying to start a guest VM on QEMU/KVM via virt-manager, it fails to start with the error:

"Error starting domain: Requested operation is not valid: network 'default' is not active"

How can I fix this error?

When you install QEMU/KVM in Linux, the 'default' NAT network is created automatically by libvirtd daemon. The properties of the 'default' network are defined in the libvirt's default network template (located at /etc/libvirt/qemu/networks/default.xml). This 'default' network is used to interconnect guest VMs's virtual NICs in NAT mode.

If, for whatever reason, the 'default' network is deactivated, you won't be able to start any guest VMs which are configured to use the network.

When you check the state of existing networks, you will see "inactive" state for the 'default' network.

$ sudo virsh net-list --all

Here is how to solve the 'default' network stuck in "inactive" state.

Solution One

Your first attempt can be simply trying to start the network with virsh.

$ sudo virsh net-start default

If you encounter the following error, go to the next solution.

internal error: Network is already in use by interface virbr0

Solution Two

Identify the name of the bridge associated with the 'default' network. You can find out the bridge name in the default network template (/etc/libvirt/qemu/networks/default.xml). In most cases, the bridge name is virbr0.

Remove that bridge as follows.

$ sudo ifconfig virbr0 down
$ sudo brctl delbr virbr0

Now start the 'default' network using virsh command.

$ sudo virsh net-start default

This will automatically re-create the virbr0 bridge.

Verify the state of the default network.

$ sudo virsh net-list --all

Download this article as ad-free PDF (made possible by your kind donation): 
Download PDF

Subscribe to Ask Xmodulo

Do you want to receive Linux related questions & answers published at Ask Xmodulo? Enter your email address below, and we will deliver our Linux Q&A straight to your email box, for free. Delivery powered by Google Feedburner.

Support Xmodulo

Did you find this tutorial helpful? Then please be generous and support Xmodulo!

2 thoughts on “How to fix “network ‘default’ is not active” error in libvirt

  1. Thanks for this post, was very useful. I went with

    sudo virsh net-autostart default

    as I had to manually start the network at every host reboot.

Leave a comment

Your email address will not be published. Required fields are marked *