gluon/package/gluon-radv-filterd
Sven Eckelmann 34daf35529
gluon-radv-filterd: Initialize router->originator after alloc
The memory returned after malloc is not initialized. It must be initialized
before it is accessed in update_tqs and compared against 00:00:00:00:00:00.
Otherwise the TQ retrievel could fail because the originator address is
never updated.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
2018-01-03 15:45:20 +01:00
..
files gluon-radv-filterd: Remove all UCI options except threshold 2018-01-03 14:59:48 +01:00
luasrc/lib/gluon/upgrade gluon-radv-filterd: Various small fixes due to NeoRaider 2018-01-03 14:59:48 +01:00
src gluon-radv-filterd: Initialize router->originator after alloc 2018-01-03 15:45:20 +01:00
check_site.lua gluon-radv-filterd: Various small fixes due to NeoRaider 2018-01-03 14:59:48 +01:00
Makefile gluon-radv-filterd: Various small fixes due to NeoRaider 2018-01-03 14:59:48 +01:00
README.md Add package gluon-radv-filterd 2018-01-03 14:59:35 +01:00

gluon-radv-filterd

This package drops all incoming router advertisements except for the default router with the best metric according to B.A.T.M.A.N. advanced.

Note that advertisements originating from the node itself (for example via gluon-radvd) are not affected and considered at all.

"Best" router

The best router is determined by the TQ that is reported for its originator by B.A.T.M.A.N. advanced. If, for some reason, another gateway with a better TQ appears or an existing gateway increases its TQ above that of the chosen gateway, the chosen gateway will remain selected until the better gateway has a TQ value at least X higher than the selected gateway. This is called hysteresis, and X can be specified on the commandline/via UCI/the site.conf and defaults to 20 (just as for the IPv4 gateway selection feature built into B.A.T.M.A.N. advanced).

"Local" routers

The package has functionality to assign "local" routers, i.e. those connected via cable or WLAN instead of via the mesh (technically: appearing in the transtable_local), a fake TQ of 512 so that they are always preferred. However, if used together with the gluon-ebtables-filter-ra-dhcp package, these router advertisements are filtered anyway and reach neither the node nor any other client. You currently have to disable the package or insert custom ebtables rules in order to use local routers.