diff options
author | Manuel Munz <freifunk@somakoma.de> | 2013-03-25 16:36:36 +0000 |
---|---|---|
committer | Manuel Munz <freifunk@somakoma.de> | 2013-03-25 16:36:36 +0000 |
commit | 8e9cdbea1411a68645d5e82caa7232c7f0ef2d61 (patch) | |
tree | c16e72876e36c5a079289224d563eaa3a1e082ac /contrib/package/freifunk-policyrouting/files/etc/init.d | |
parent | 7f3b0af6d90e260ea119cd0a81786a97501c9541 (diff) |
contrib/freifunk-policyrouting: Use a new table 'localnets' for locally attached networks and populate it
Diffstat (limited to 'contrib/package/freifunk-policyrouting/files/etc/init.d')
-rwxr-xr-x | contrib/package/freifunk-policyrouting/files/etc/init.d/freifunk-policyrouting | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/contrib/package/freifunk-policyrouting/files/etc/init.d/freifunk-policyrouting b/contrib/package/freifunk-policyrouting/files/etc/init.d/freifunk-policyrouting index a8e44244b4..f31821a240 100755 --- a/contrib/package/freifunk-policyrouting/files/etc/init.d/freifunk-policyrouting +++ b/contrib/package/freifunk-policyrouting/files/etc/init.d/freifunk-policyrouting @@ -33,12 +33,16 @@ olsrd_intalltables() { rt_tables() { tables="/etc/iproute2/rt_tables" + if [ -z "`grep "110" $tables`" ]; then + echo "110 localnets" >> $tables + fi if [ -z "`grep "111" $tables`" ]; then echo "111 olsr" >> $tables fi if [ -z "`grep "112" $tables`" ]; then echo "112 olsr-default" >> $tables fi + } disable_dyngw() { @@ -80,6 +84,9 @@ start() { for p in $proto; do if [ ! "$(ip -$p ru s | grep "1000: from all lookup olsr")" ]; then ip -$p rule add lookup olsr prio 1000 + # add table for routes to local networks + ip -$p rule add lookup localnets prio 2000 + if [ "$?" = "0" ]; then logger -s -t policyrouting "Added rule: lookup olsr prio 1000 (IPv$p)" else |