I have bond0 with two physical interfaces in it. Normally I used to assign static IP address to this bond0 to set up internet connectivity on the server.
Now, because of LXC virtual guests, I had to create a bridge br0 and put bond0 and virt0 (virtual interface of virtual guest) in the bridge.
Just creating the br0 and adding these two interfaces in it did not work and I had to assign static IP address to the br0 itself and do not assign IP addresses to bond0 nor virt0. In virtual guest itself there is public static IP assigned into the "virtual" eth0 inside the guest. And that works.
Question is - why it works this way and bond0 don't need to be configured when in a bridge? What happens when I have a bridge and assign an IP address to the bond0 instead of br0? I thought that bridge works just like a switch and switches are "dumb", work on MAC addresses and don't know anything about IP addresses.