[PATCH] fff-gateway: Add script to load vlan defaults

Christian Dresel freifunk at dresel.systems
Do Dez 10 14:35:37 CET 2020


With this script a user can load easy a vlan default setting to
/etc/config/gateway

We use the same port configuration as the node firmware except
the Batman-adv ports are use as Babel ports

With this script it is easier to use the layer 3 firmware for user
without knowledge for openwrt vlan settings

Signed-off-by: Christian Dresel <freifunk at dresel.systems>
---
 .../files/usr/sbin/loadvlandefault            | 49 +++++++++++++++++++
 1 file changed, 49 insertions(+)
 create mode 100644 src/packages/fff/fff-gateway/files/usr/sbin/loadvlandefault

diff --git a/src/packages/fff/fff-gateway/files/usr/sbin/loadvlandefault b/src/packages/fff/fff-gateway/files/usr/sbin/loadvlandefault
new file mode 100644
index 0000000..1c2f1a4
--- /dev/null
+++ b/src/packages/fff/fff-gateway/files/usr/sbin/loadvlandefault
@@ -0,0 +1,49 @@
+#!/bin/sh
+
+echo "This script might remove all existing vlans and babelpeers and load a default vlan setup."
+read -r -p "Do you really want to continue? (y/n) " response
+if ! ( [ "$response" == "y" ] || [ "$response" == "Y" ] ); then
+	exit 1
+fi
+
+# load uci functions
+. /lib/functions.sh
+
+# load board specific properties
+BOARD="$(uci get board.model.name)"
+. /etc/network.$BOARD
+
+remove_vlan() {
+	local name="$1"
+	uci del gateway.$name
+}
+remove_babelpeer() {
+	local name="$1"
+
+	# remove interface
+	uci -q del gateway.$name
+}
+
+config_load gateway
+config_foreach remove_vlan vlan
+
+config_load gateway
+config_foreach remove_babelpeer babelpeer
+
+uci batch <<EOF
+	set gateway.1=vlan
+	set gateway.1.comment='client'
+	set gateway.1.ports='$CLIENT_PORTS'
+	set gateway.2=vlan
+	set gateway.2.comment='wan'
+	set gateway.2.ports='$WAN_PORTS'
+	set gateway.3=vlan
+	set gateway.3.comment='babelpeer'
+	set gateway.3.ports='$BATMAN_PORTS'
+	set gateway.vlan3=babelpeer
+	set gateway.vlan3.vlan='3'
+	set gateway.vlan3.type='wired'
+	set gateway.vlan3.rxcost='96'
+EOF
+
+uci commit gateway
-- 
2.28.0



Mehr Informationen über die Mailingliste franken-dev