tenkes
HEURÉKA!
A kísérleti Win11-es VM végre látja a hálózatot, megtalálja a samba megosztásokat, és -dobpergés....-
látja a hálózati nyomtatót DNS/SD kapcsolaton.
Ehhez pediglen a következőt kellett tennem, most már csak összefoglalva:
A VM hálózati kártya forrása Macvtap lesz.
XML:
<interface type="direct">
<mac address="52:54:00:a0:45:ab"/>
<source dev="enp5s0" mode="bridge"/>
<target dev="macvtap1"/>
<model type="virtio"/>
<link state="up"/>
<alias name="net0"/>
<address type="pci" domain="0x0000" bus="0x02" slot="0x00" function="0x0"/>
</interface>
Ez márelvileg jó is a qemu:system alatt futó VM-eknek, csakhogy én ragaszkodom a user session-höz.
Az meg olyanokat ír ilyenkor, hogy a macvtap eszköz létrehozása "operation not permitted".
Mert nincs joga hálózatot buzerálni 🙂
Ó, mire rájöttem! Ez sehol nincs leírva!
Rootként a
setcap 'cap_net_admin=+eip' /usr/sbin/libvirtd
parancs után a libvirtd jogosult lesz a hálózati eszközöket pitiszkálni.
A setcap után kell egy újraindítás.
Ezután jön a következő hiba, a létrehozott tap device nem hozzáférhető a szegény jogtalan VM-nek.
Hozzáadok egy udev szabályt, hogy amikor létrejön a "tap"-szerű izé a "net" subsystemben, a hozzáférést állítsa 666-ra.
Így effektíve bárki forgalmazhat rajta adatot.
echo 'KERNEL=="tap*", SUBSYSTEMS=="net", MODE="0666"' | tee /etc/udev/rules.d/98-net-tap.rules
Kész. Nem kell külön bridge-et konfigurálni.
Annyi hátulütője van, hogy a host és guest között nem működik hálózati kapcsolat, nincs ping, stb, de a VM és "külvilág" között minden a legnagyobb rendben.
Ez már a finis!
🤩