Thanks for the update, I finally got back to this today. The most recent available resinOS was v2.9.6+rev1(prod)
. I plugged in a USB-Ethernet adaptor which was assigned the name enp0s20u3u3
. I then used the “Host OS” console to execute the following commands:
# nmcli c add ifname br0 type bridge con-name br0
# nmcli c add type bridge-slave ifname eno2 master br0 con-name eno2-bridge
# nmcli c add type bridge-slave ifname enp0s20u3u3 master br0 con-name adapter-bridge
This created the connection entries I expected. I then disabled the default connections for the two interfaces and tried to bring up the bridge:
# nmcli c down "Wired connection 2"
Connection 'Wired connection 2' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/3)
# nmcli c down "Wired connection 3"
Connection 'Wired connection 3' successfully deactivated (D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/4)
# nmcli c up br0
Error: Connection activation failed: Connection 'br0' is not available on the device br0 at this time.
These commands resulted in files in /etc/NetworkManager/system-connections
with the same options as when I tried manually creating the files in my other tests. It looks to me like I am doing something fundamentally wrong, hopefully someone here can spot the error.