Bridge on vlan on teaming for KVM
I am not familiar with NetworkManager. Personally I prefer "old-fashioned" direct approach with iproute2/brctl/vconfig tools. But I've found this bug report & errata: https://bugzilla.redhat.com/show_bug.cgi?id=1183420 which are very related to your problem. You are just having issue with adding VLAN to a bridge instead of bond interface like there. But a workaround from that bug report will work too.
Instead of adding br24-vlan24
(which will fail because you already have team0.24
device associated with vlan24-team
connection!), you must edit vlan24-team0
properties to make it slave to virb24
.
I've tried to reproduce a configuration similar to yours. But without teaming, because seems like you don't have issues with that part as you can ping from team0. I've created a bridge br24
and vlan id 24 on my NIC enp2s0. The link above suggests then to modify bonding (VLAN in our case) connection like like this:
# nmcli c mod bond-bond0 connection.master br0
# nmcli c mod bond-bond0 connection.slave-type bridge
But this failed for me on Linux Mint with following error:
$ nmcli c mod vlan24-enp2s0 connection.master vibr24
Error: Failed to modify connection 'vlan24-enp2s0': connection.slave-type: Cannot set 'master' without 'slave-type'
$ nmcli c mod vlan24-enp2s0 connection.slave-type bridge
Error: Failed to modify connection 'vlan24-enp2s0': connection.master: Slave connections need a valid 'master' property
But setting both properties at the same command worked:
$ nmcli c mod vlan24-enp2s0 connection.slave-type bridge connection.master vibr24
$ nmcli con up br24
Connection successfully activated (master waiting for slaves) (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/50)
$ nmcli con show
NAME UUID TYPE DEVICE
br24 502643a8-1fbd-4881-9251-7bf1599bf05f bridge vibr24
vlan24-enp2s0 70cb4491-0cfb-4f5c-a0b2-9cee71eb115a vlan enp2s0.24
Connection 1 1e65cdef-c819-3c30-8fc8-23f4d13f7fe1 802-3-ethernet enp2s0
Checking this with brctl to confirm the VLAN is up & bound to bridge:
$ brctl show
bridge name bridge id STP enabled interfaces
vibr24 8000.cafedefaced0 yes enp2s0.24
So adapting this for your configuration, this one should work for you:
nmcli con add con-name vlan24-team0 type vlan id 24 dev team0
nmcli con add con-name br24 type bridge ifname vibr24 stp yes
nmcli con mod vlan24-team0 connection.slave-type bridge connection.master vibr24
PS: Just noticed this question are actually from 2015 and was bumped due to bounty by other user. Still my answer solves this issue, as I did reproduced this situation and had the same "No suitable device found for this connection." issue as OP before I've tried this solution.