I’m using a mini pc with 6 NIC, connected to a router on one port. I want to use this as both a hypervisor and a network switch while keeping the network flat (no NAT).
So even if only port 1 is physically connected to the router, any device connected to port 2-6 should behave as if it were directly connected to the router, as well as the incus os host and any container / vm running on the mini pc.
Disabling NAT for container and vm seems pretty straightforward, but I’m having trouble rerouting the NIC.
I could do physical interface passthru + bridge interface to some VM but doing that just for routing seems wasteful so I was trying to get the host to do the routing but I keep getting the error too many levels of symbolic links: can not enslave a bridge to a bridge
Here’s what I’ve tried via install seed:
# incus.yaml
apply_defaults: true
preseed:
certificates: [...]
networks:
- name: "host-switch"
type: bridge
config:
bridge.external_interfaces: "enp1s0,enp2s0,enp3s0,enp4s0,enp5s0,enp6s0"
ipv4.nat: "false"
ipv4.dhcp: "true"
Tried disabling bridge wrapping in network.yaml but couldn’t get around the auto created per-interface bridge
# network.yaml
config:
interfaces: # Also tried empty list but no difference
- name: "enp1s0"
ethernet: {}
- name: "enp2s0"
ethernet: {}
- name: "enp3s0"
ethernet: {}
- name: "enp4s0"
ethernet: {}
- name: "enp5s0"
ethernet: {}
- name: "enp6s0"
ethernet: {}
Is it just me doing it wrong, or is this something not possible with Incus OS right now?