summaryrefslogtreecommitdiffhomepage
path: root/module
diff options
context:
space:
mode:
Diffstat (limited to 'module')
-rw-r--r--module/admin-core/contrib/init.d/luci_freifunk14
1 files changed, 12 insertions, 2 deletions
diff --git a/module/admin-core/contrib/init.d/luci_freifunk b/module/admin-core/contrib/init.d/luci_freifunk
index dbb346f0eb..6b18e14425 100644
--- a/module/admin-core/contrib/init.d/luci_freifunk
+++ b/module/admin-core/contrib/init.d/luci_freifunk
@@ -29,14 +29,24 @@ start() {
### Lan to Freifunk
[ -n "$lanif" ] && {
+ config_get ipaddr lan ipaddr
+ config_get netmask lan netmask
+
+ eval "$(ipcalc.sh $ipaddr $netmask)"
+
iptables -A forwarding_rule -i "$lanif" -o "$ffif" -j ACCEPT
- iptables -t nat -A postrouting_rule -i "$lanif" -o "$ffif" -j MASQUERADE
+ iptables -t nat -A postrouting_rule -s "$NETWORK/$PREFIX" -o "$ffif" -j MASQUERADE
}
### Freifunk to Wan
[ "$internet" -gt 0 ] && {
+ config_get ipaddr ff ipaddr
+ config_get netmask ff netmask
+
+ eval "$(ipcalc.sh $ipaddr $netmask)"
+
iptables -A forwarding_rule -i "$ffif" -o "$wanif" -j ACCEPT
- iptables -t nat -A postrouting_rule -i "$ffif" -o "$wanif" -j MASQUERADE
+ iptables -t nat -A postrouting_rule -s "$NETWORK/$PREFIX" -o "$wanif" -j MASQUERADE
}
}