This rewrites the MAC address generation logic to distinguish between
MAC addresses assigned to a wireless interface or virtual / wired
interfaces.
Each radio is now assigned a range of SSIDs, allowing for up to 8 SSIDs
per radio. Previosuly, there were 8 MAC addresses total for the entire
device.
To keep compatibility on already deployed nodes, MAC addresses for wired
/ virtual interfaces stay unchanged.
This change is required to support nodes with more than 2 radios.
It also allows us to increase the number of VAPs per radio.
The new routing_algo site.conf value BATMAN_IV_LEGACY is introduced. With
these changes, the routing_algo setting becomes mandatory.
Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
We now create bat0 and primary0 independently of the lower mesh interfaces,
making the whole setup a lot more robust. In particular:
- we can't accidentially destroy primary0 because of concurrent setup and
teardown runs of different interfaces
- bat0 will always exist, even when no mesh interfaces are up (e.g. no link
on wired mesh)
- interfaces going down and up again will never tear down the whole of
batman-adv
- we can enable and disable bat0 independently of the lower interface
states