Estou tentando configurar um dispositivo de rede NAT virtual sem DHCP para libvirt em um host do Arch Linux.
O que eu tentei:
# virsh net-define network.xml
Network default defined from network.xml
[ network.xml
]:
<network>
<name>default</name>
<bridge name="maas0" />
<forward mode="nat" />
<ip address="10.137.0.1" netmask="255.255.255.0" />
</network>
Meu laptop produz o seguinte na inicialização:
# virsh net-start default
error: Failed to start network default
error: internal error: Failed to initialize a valid firewall backend
Todos os outros tópicos relacionados a este tópico estão relacionados à atualização de software - estou usando as versões mais recentes:
$ pacman -Q ebtables dnsmasq libvirt iptables
ebtables 2.0.10_4-5
dnsmasq 2.75-1
libvirt 1.3.3-1
iptables 1.4.21-3
Qual poderia ser a razão disso internal error
e o que posso fazer contra?
fonte
firewalld
, também não está listado no ArchLinux wiki , é apenas necessário iniciarebtables
ednsmasq
, comlibvirtd
/virtlogd
depois.ebtables
ednsmasq
firewalld
, como observado por @pepper_chico (comentário) e Stuart P. Bentley (outra resposta).Este é o erro que surge se o libvirtd foi iniciado sem
ebtables
e / oudnsmasq
instalado. Se você os tiver instalado e ainda tiver esse problema, provavelmente precisará reiniciar olibvirtd
serviço:Agradecemos os comentários da outra resposta a esta pergunta por esclarecer isso. Estou enviando-o como uma resposta nova e separada para a pergunta original, porque a instalação e o início
firewalld
da solução do problema original podem causar novos problemas : assim que o daemon do firewall estiver em execução, a maioria dos serviços que você deseja na sua máquina virtual , incluindo DHCP, será bloqueado por padrão , o que significa que suas VMs não poderão acessar a rede na inicialização.Perdi mais de uma hora da minha vida tentando rastrear esse problema, e rastreá-lo para um firewall que eu havia acabado de ativar era uma das fontes mais idiotas de um bug em que já encontrei. Não deixe que demore algum tempo para você .
fonte