Disclaimer

This VPN is mainly used to connect network islands when it is very difficult to build a wired/wireless link ( for example two community networks in very distant city ). It is not intended to connect single persons that wants access internal services via VPN. It is recommended to avoid data traffic over the VPN because it will slow down troubleshooting operation that is one of main use of the VPN itself.

OLSRd configuration for Babeld

1) Install git, build-essentials, flex and bison for compile the olsrd version with ad-hoc plugin that permit intercomunication between olsrd and babeld.

2) download ninux.org gihub repository:

git clone git://github.com/ninuxorg/olsrd.git

3) when enter olsrd folder and switch to new plugin branch:

git checkout proto_plugin_rc3

4) compile olsrd and his plugins:

make
make libs

5) install olsrd and plugins:

make install
make install_libs

6) now go to /etc/olsrd.conf and insert RtProto 157 inside the config on top, before hna4 entries. (this mark all routes learned from olsr network with proto 157, in this way babeld can recognize olsr routes)

CAUTION AT THIS POINT

7) If you want that olsrd redistribute routes from babeld you need to insert this configuration inside the file:

LoadPlugin "olsrd_proto.so.0.2"
{
PlParam "proto_no" "42"
}

IF BABELD IS IMPROPERLY CONFIGURED THIS OPTION CAN CREATE A BLACKHOLE! WATCH OUT!

8) now you only need to configure olsrd to start on boot with babeld and tincd.