[Babel-users] two gateways using babeld on an adhoc network?

Harshal Vora harshal at amideeptech.com
Wed Mar 26 16:36:09 UTC 2014


Hi,

We are setting up a wifi adhoc network where one of the device that is 
connected to the ethernet (master) works as the gateway for other 
devices (slaves) within the adhoc network.

On both master and slaves the wifi interface runs in adhoc mode. We also 
create a virtual interface from this wifi interface which runs in 
monitor mode.

We are using babeld on the wifi interface to create a mesh on top of 
this adhoc network because these devices (slaves) are spread across a 
large area and they do not have direct connection to the master.
All these devices capture and transmit data to our servers

We are trying to setup two gateways so that there is no single point of 
failure within the adhoc network and the devices can still transmit the 
captured data to the servers.

But we are seeing some strange behaviour.

Assume that for now we have two devices connected to ethernet, m1 and m2 
and s1..s6 are slaves.
When we first start all these devices we see that m1 is the gateway for 
all slaves s1..s3  and m2 is the gateway for slave s4..s6
When we pull the ethernet plug for m1, we see that all the routes that 
were present in s1..s3 do not correct themselves to use m2 as gateway. 
Neither does m1 correct itself to use m2 as the gateway.

Also, when we disable the wifi  interface on m1, slaves s1..s3 get all 
negative routes and they are completely our of the network until the 
wifi interface on m1 comes up again.


Is this the expected behaviour?

Command to start babeld on master:
start-stop-daemon --start --pidfile /var/run/babeld.pid --exec 
/usr/local/bin/babeld -- -C 'redistribute metric 128' -C 'redistribute 
proto 3 allow' -d 3 -L /var/log/babeld.log -D -I /var/run/babeld.pid -r 
-g 33123 wlan0

'redistribute proto 3 allow' is used to distribute routes generated for 
the ethernet interface.

Command to start babeld on slaves

start-stop-daemon --start --pidfile /var/run/babeld.pid --exec 
/usr/local/bin/babeld -- -d 3 -L /var/log/babeld.log -D -I 
/var/run/babeld.pid -r -g 33123 wlan0


Regards,



More information about the Babel-users mailing list