With the caveat that I haven’t dealt with the OpenBSD feature in question here (only what I think is the corresponding Linux functionality), isn’t it more like a software-defined ethernet switch?
In general a bridge works like a hub, forwarding traffic from one interface to another. It differs from a hub in that it will “learn” which machines are on each of its attached segments by actively listening to incoming traffic and examining the headers of each frame. A table is built containing the MAC address and segment to which the MAC address is attached.
I thought having a forwarding database and learning mac/port associations (and using it for selective forwarding) was the main thing differentiating a switch from a hub?
I played with bridge in the past. It’s basically a software-defined ethernet cable.
With the caveat that I haven’t dealt with the OpenBSD feature in question here (only what I think is the corresponding Linux functionality), isn’t it more like a software-defined ethernet switch?
Indeed. However, hub is even closer:
This would be a “cable”: https://man.openbsd.org/pair.4
Hmm, now I’m confused…
veb(4)
states:bridge(4)
says:I thought having a forwarding database and learning mac/port associations (and using it for selective forwarding) was the main thing differentiating a switch from a hub?