Saya mencoba mengatur perangkat jaringan NAT virtual tanpa DHCP untuk libvirt pada host Linux Arch.
Apa yang saya coba:
# 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>
Laptop saya menampilkan yang berikut saat start-up:
# virsh net-start default
error: Failed to start network default
error: internal error: Failed to initialize a valid firewall backend
Semua utas lain mengenai topik ini berbicara tentang peningkatan perangkat lunak - Saya menggunakan versi terbaru:
$ 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
Apa yang bisa menjadi alasan untuk itu internal error
dan apa yang bisa saya lakukan melawan?
networking
virtual-machine
linux-kvm
qemu
libvirt
testandby
sumber
sumber
firewalld
, itu juga tidak terdaftar di ArchLinux wiki , hanya perlu untuk memulaiebtables
dandnsmasq
, denganlibvirtd
/virtlogd
sesudahnya.ebtables
dandnsmasq
firewalld
, seperti dicatat oleh @pepper_chico (komentar) dan Stuart P. Bentley (jawaban lain).Ini adalah kesalahan yang muncul jika libvirtd dimulai tanpa
ebtables
dan / ataudnsmasq
diinstal. Jika Anda menginstalnya dan Anda masih mengalami masalah ini, Anda mungkin perlu memulai kembalilibvirtd
layanan:Kredit untuk para komentar pada jawaban lain untuk pertanyaan ini untuk menerangi ini. Saya mengirimkannya sebagai jawaban baru dan terpisah untuk pertanyaan awal karena menginstal dan mulai
firewalld
menyelesaikan masalah awal dapat menyebabkan masalah baru : begitu firewall daemon berjalan, sebagian besar layanan yang Anda inginkan dalam mesin virtual Anda , termasuk DHCP, akan diblokir secara default , artinya VM Anda tidak akan dapat mencapai jaringan saat inisialisasi.Saya kehilangan lebih dari satu jam dalam hidup saya mencoba melacak masalah ini, dan melacaknya ke firewall yang baru saja saya aktifkan adalah salah satu sumber bug terbodoh yang pernah saya temui. Jangan biarkan waktu dari Anda .
sumber