"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.
Here is how to solve the 'default' network stuck in "inactive" state.
Your first attempt can be simply trying to start the network with virsh.
If you encounter the following error, go to the next solution.
internal error: Network is already in use by interface virbr0
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 brctl delbr virbr0
Now start the 'default' network using virsh command.
This will automatically re-create the virbr0 bridge.
Verify the state of the default network.
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.
Did you find this tutorial helpful? Then please be generous and support Xmodulo!