[Battlemesh] [B.A.T.M.A.N.] Battlemesh v5 tests

Andrew Lunn andrew at lunn.ch
Fri Mar 9 15:15:31 CET 2012

On Fri, Mar 09, 2012 at 02:49:28PM +0100, Gabriel Kerneis wrote:
> Andrew,
> On Fri, Mar 09, 2012 at 01:09:26PM +0000, andrew.lunn at ascom.com wrote:
> > Remember that BATMAN is a Layer 2 mesh, not layer 3. 
> Sorry, I just recalled what it implies. 


> You can ignore my previous answer, I was focused on babel-like,
> layer 3 examples.

       l0        l1
    A ---- B ---------- C  Example:
           \           /   I want to restrict the link l1 to communication
            D -- E -- F    between A??and C. (Nice frying-pan, isn???t it? ;-)

It is still possible, but requires more configuration effort. But
anybody who can setup iptable rules should be able to achieve it.

Create a mesh with B, D, E, F, C, but leave out the interfaces for
B-l0, B-l1 and C-l1. Setup a bridge on B. Add to the bridge the interfaces
bat0, b-l1, b-l0. Add ebtable rules to the bridge to bridge A<->C
frames between b-l0 and b-bl1 interfaces, the rest of the traffic from
A is bridged into the bat0 interface. You need a similar bridge on C,
with ebtable rules to pass the frames over the correct interfaces.

You also need to take a little bit of care with multicast frames, or
the spanning tree protocol might get upset and block some of the
interfaces in order to break the loops it sees.


More information about the Battlemesh mailing list