I am building pretty much a similar setup to Proxmox which is a host running a VM router for traffic for the LAN and WAN. As Proxmox uses KVM, I thought it should work direct from my machine's KVM?
My setup:
1 bridged router.
1 machine running Debian based OS Ubuntu 22.04.
2 physical LAN and WAN wired NICs.
1 host/hypervisor/VMM KVM/Qemu/Virtual Machine Manager 4.0.0.
1 guest/VM router OPNsense 23.1.
I need the LAN (including the host machine) and WAN to route traffic via the VM router only.
The machine recognises the 2 NICs.
I think the host needs 1 or 2 bridges to the machine's physical LAN and WAN NICs?
Here's my network topology which may not be the right setup, attached.
Configuring the network has a few options like
GUI: Virtual Manager.
TUI: Network scripts, Nmcli tool or Virsh command.
I tried the host GUI: New VM > Create a new virtual machine > Step 5 of 5 > Ready to begin the installation > Network selection > Bridge device... > Device name: enp3s0 > Finish > Unable to complete install: 'Unable to add bridge enp3s0 port vnet0: Operation not supported'.
Details:
Unable to complete install: 'Unable to add bridge enp3s0 port vnet0: Operation not supported'
Traceback (most recent call last):
File "/usr/share/virt-manager/virtManager/asyncjob.py", line 72, in cb_wrapper
callback(asyncjob, *args, **kwargs)
File "/usr/share/virt-manager/virtManager/createvm.py", line 2008, in _do_async_install
installer.start_install(guest, meter=meter)
File "/usr/share/virt-manager/virtinst/install/installer.py", line 695, in start_install
domain = self._create_guest(
File "/usr/share/virt-manager/virtinst/install/installer.py", line 637, in _create_guest
domain = self.conn.createXML(initial_xml or final_xml, 0)
File "/usr/lib/python3/dist-packages/libvirt.py", line 4400, in createXML
raise libvirtError('virDomainCreateXML() failed')
libvirt.libvirtError: Unable to add bridge enp3s0 port vnet0: Operation not supported
The host has an option for Macvtap device, but I don't know what this is?