[2/2] fff-vpn-select: add fastd start/stop for various situations

Submitted by Robert Langhammer on July 24, 2016, 7:34 p.m.

Details

Message ID 1469388867-3240-3-git-send-email-rlanghammer@web.de
State Accepted
Commit 571239c78c5350f5896b33aa6288f7c97a20f870
Headers show

Commit Message

Robert Langhammer July 24, 2016, 7:34 p.m.
Signed-off-by: Robert Langhammer <rlanghammer@web.de>
---
 src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select | 8 ++++++++
 1 file changed, 8 insertions(+)

Patch hide | download patch | download mbox

diff --git a/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select b/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
index 2458a06..b071ff6 100755
--- a/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
+++ b/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
@@ -76,5 +76,13 @@  if ping -w5 -c3 "$test_ipv4_host1" &>/dev/null ||
         sumnew=$(sha256sum /etc/config/tunneldigger)
         [ "$sumnew" != "$sumold" ] && /etc/init.d/tunneldigger restart
         /etc/init.d/fastd reload
+
+        # fastd start/stop for various situations
+        if [ "$(ls /etc/fastd/${project}/peers/* 2>/dev/null)" ]; then
+            [ -d /proc/$(cat /tmp/run/fastd.${project}.pid) ] || /etc/init.d/fastd start
+        else
+            [ -d /proc/$(cat /tmp/run/fastd.${project}.pid) ] && /etc/init.d/fastd stop
+        fi
+
     fi
 fi

Comments

Moexe July 24, 2016, 8:05 p.m.
Moin Robert.

Genau das ist mir auch aufgefallen. 

Ich habe Alex gebeten, auf seinem GW wenigstens den Tunnel Broker für HassbergSued mal wieder zu aktivieren, damit man die neue Patchserie mal ausgiebig testen kann. 

Und da bei Alex ja immer der GW abschmiert, wollten wir auch mal schauen, ob das an L2tp. liegt.

Wie krieg ich jetzt die patches in das aktuelle build?

Oder hast du schon neu gebaut?

> Am 24.07.2016 um 21:34 schrieb Robert Langhammer <rlanghammer@web.de>:
> 
> Signed-off-by: Robert Langhammer <rlanghammer@web.de>
> ---
> src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select | 8 ++++++++
> 1 file changed, 8 insertions(+)
> 
> diff --git a/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select b/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> index 2458a06..b071ff6 100755
> --- a/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> +++ b/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> @@ -76,5 +76,13 @@ if ping -w5 -c3 "$test_ipv4_host1" &>/dev/null ||
>         sumnew=$(sha256sum /etc/config/tunneldigger)
>         [ "$sumnew" != "$sumold" ] && /etc/init.d/tunneldigger restart
>         /etc/init.d/fastd reload
> +
> +        # fastd start/stop for various situations
> +        if [ "$(ls /etc/fastd/${project}/peers/* 2>/dev/null)" ]; then
> +            [ -d /proc/$(cat /tmp/run/fastd.${project}.pid) ] || /etc/init.d/fastd start
> +        else
> +            [ -d /proc/$(cat /tmp/run/fastd.${project}.pid) ] && /etc/init.d/fastd stop
> +        fi
> +
>     fi
> fi
> -- 
> 2.8.0.rc3
> 
> -- 
> franken-dev mailing list
> franken-dev@freifunk.net
> http://lists.freifunk.net/mailman/listinfo/franken-dev-freifunk.net
Alex Gutfried July 26, 2016, 4:01 p.m.
Moin Leute,

Zwei Sachen :)

1:  @Robert: Hast du technisch an deiner aktuellen Firmware etwas
gravierendes geändert? Aus welchen Gründen auch immer verträgt mein Server
diese scheinbar problemlos ... er läuft jetzt immerhin "schon" seit über 3
Tagen ohne abzustürzen ... das war mit l2tp bisher undenkbar. ;)

2: Wollt ich mal ne kleine Geschichte über die momentan aktuelle Beta von
Robert loswerden.
Am Freitag schreibt mich Johannes (der EDV Zuständige von Ebern) an und
erzählt das sie ja dieses Wochenende Altstadtfest haben, das gesamte
Freifunknetz in der Innenstadt aber bisher nur den einen Uplink (immerhin
100Mbit/s) hat und ob er Freifunk für dieses Wochenende nicht lieber
abstellen solle ... das schafft Freifunk doch nieee.
Ich hab Ihn dann auf Robert`s Beta gestoßen, er möge es doch einfach mal
probieren und im zweifel kann er ja immernoch den Stecker ziehen.
Johannes hat es dann so realisiert das er die Beta auf den Uplink Router
gespielt hat, von den Nanos das Client-Wlan auskommentiert hat und so viele
kleine Freifunk Ecken bei den 841gern entstanden sind.
Heute bekam ich ne begeisterte email, das er Abends oftmals in gesamt Ebern
problemlos 100-150 Clients gezählt hat und bei den zwischendurch getätigten
Tests hat er immer soffort eine IP zugeteilt bekommen und war nie
schlechter als mit 2-3 Mbit/s unterwegs ... und das bei nur einem Uplink
und weit über 100 Clients. :-)
Für mich hat diese Beta schon gezeigt was sie kann ... zumindest auf den
Routern ... was unsere Gateways machen sehen wir eh erst wenn der große
Ansturm der gesamten Community kommt. ;)

LG Alex



Am 24. Juli 2016 um 22:05 schrieb Moexe <moexe@freifunk-franken-hassfurt.de>
:

> Moin Robert.
>
> Genau das ist mir auch aufgefallen.
>
> Ich habe Alex gebeten, auf seinem GW wenigstens den Tunnel Broker für
> HassbergSued mal wieder zu aktivieren, damit man die neue Patchserie mal
> ausgiebig testen kann.
>
> Und da bei Alex ja immer der GW abschmiert, wollten wir auch mal schauen,
> ob das an L2tp. liegt.
>
> Wie krieg ich jetzt die patches in das aktuelle build?
>
> Oder hast du schon neu gebaut?
>
> > Am 24.07.2016 um 21:34 schrieb Robert Langhammer <rlanghammer@web.de>:
> >
> > Signed-off-by: Robert Langhammer <rlanghammer@web.de>
> > ---
> > src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select | 8 ++++++++
> > 1 file changed, 8 insertions(+)
> >
> > diff --git a/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> b/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> > index 2458a06..b071ff6 100755
> > --- a/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> > +++ b/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> > @@ -76,5 +76,13 @@ if ping -w5 -c3 "$test_ipv4_host1" &>/dev/null ||
> >         sumnew=$(sha256sum /etc/config/tunneldigger)
> >         [ "$sumnew" != "$sumold" ] && /etc/init.d/tunneldigger restart
> >         /etc/init.d/fastd reload
> > +
> > +        # fastd start/stop for various situations
> > +        if [ "$(ls /etc/fastd/${project}/peers/* 2>/dev/null)" ]; then
> > +            [ -d /proc/$(cat /tmp/run/fastd.${project}.pid) ] ||
> /etc/init.d/fastd start
> > +        else
> > +            [ -d /proc/$(cat /tmp/run/fastd.${project}.pid) ] &&
> /etc/init.d/fastd stop
> > +        fi
> > +
> >     fi
> > fi
> > --
> > 2.8.0.rc3
> >
> > --
> > franken-dev mailing list
> > franken-dev@freifunk.net
> > http://lists.freifunk.net/mailman/listinfo/franken-dev-freifunk.net
>
> --
> franken-dev mailing list
> franken-dev@freifunk.net
> http://lists.freifunk.net/mailman/listinfo/franken-dev-freifunk.net
>
>
Jan Kraus Aug. 5, 2016, 6:17 p.m.
Reviewed-by: Jan Kraus <mayosemmel@gmail.com>

Am Sonntag, den 24.07.2016, 21:34 +0200 schrieb Robert Langhammer:
> Signed-off-by: Robert Langhammer <rlanghammer@web.de>
> ---
>  src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select b/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> index 2458a06..b071ff6 100755
> --- a/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> +++ b/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> @@ -76,5 +76,13 @@ if ping -w5 -c3 "$test_ipv4_host1" &>/dev/null ||
>          sumnew=$(sha256sum /etc/config/tunneldigger)
>          [ "$sumnew" != "$sumold" ] && /etc/init.d/tunneldigger restart
>          /etc/init.d/fastd reload
> +
> +        # fastd start/stop for various situations
> +        if [ "$(ls /etc/fastd/${project}/peers/* 2>/dev/null)" ]; then
> +            [ -d /proc/$(cat /tmp/run/fastd.${project}.pid) ] || /etc/init.d/fastd start
> +        else
> +            [ -d /proc/$(cat /tmp/run/fastd.${project}.pid) ] && /etc/init.d/fastd stop
> +        fi
> +
>      fi
>  fi
> -- 
> 2.8.0.rc3
>
Steffen Pankratz Aug. 19, 2016, 4:53 p.m.
On 07/24/2016 09:34 PM, Robert Langhammer wrote:

Hi Robert

> Signed-off-by: Robert Langhammer <rlanghammer@web.de>
> ---
>  src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select | 8 ++++++++
>  1 file changed, 8 insertions(+)
> 
> diff --git a/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select b/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> index 2458a06..b071ff6 100755
> --- a/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> +++ b/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> @@ -76,5 +76,13 @@ if ping -w5 -c3 "$test_ipv4_host1" &>/dev/null ||
>          sumnew=$(sha256sum /etc/config/tunneldigger)
>          [ "$sumnew" != "$sumold" ] && /etc/init.d/tunneldigger restart
>          /etc/init.d/fastd reload
> +
> +        # fastd start/stop for various situations
> +        if [ "$(ls /etc/fastd/${project}/peers/* 2>/dev/null)" ]; then

Ist es Absicht, dass nur die stderr Ausgabe umgeleitet wird?
So listet das Skript den Inhalt des Verzeichnisses auf.
Ich waere dafuer alles umzuleiten (ls /etc/fastd/${project}/peers/*
&>/dev/null).


> +            [ -d /proc/$(cat /tmp/run/fastd.${project}.pid) ] || /etc/init.d/fastd start
> +        else
> +            [ -d /proc/$(cat /tmp/run/fastd.${project}.pid) ] && /etc/init.d/fastd stop
> +        fi

Was mir nicht gefaellt ist der Pfad zur PID-Datei.
Offiziell ist es /var/run/fastd.fff.pid, sieht man auch in der Ausgabe
von "ps".

Dein Ansatz ist nicht falsch, aber verwendet zwei Befehle (test und cat)

pidof fastd &> /dev/null && /etc/init.d/fastd start
pidof fastd &> /dev/null && /etc/init.d/fastd stop

Nachteil von der pidof Loesung es findet alle laufenden fastd Instanzen.
Aktuell haben wir afaik nur eine Instanz laufen.

Das fastd Skript (/etc/init.d/fastd) startet bzw. stoppt leider auch
alle Instanzen.

Kannst du dir ueberlegen, was du da machen willst :)

> +
>      fi
>  fi
> 

Generell ist es eine gute Idee Variablen und Command expansion Ausgaben
mit Doppelhochkommas zu versehen, da diese Leerzeichen und andere
Sonderzeichen enthalten koennen.


Gruss
-Steffen
Tim Niemeyer Aug. 20, 2016, 2:55 p.m.
Am Freitag, den 05.08.2016, 20:17 +0200 schrieb mayosemmel:
> Reviewed-by: Jan Kraus <mayosemmel@gmail.com>

Schließe mich an.

Reviewed-by: Tim Niemeyer <tim@tn-x.org>

Tim

> Am Sonntag, den 24.07.2016, 21:34 +0200 schrieb Robert Langhammer:
> > Signed-off-by: Robert Langhammer <rlanghammer@web.de>
> > ---
> >  src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select | 8 ++++++++
> >  1 file changed, 8 insertions(+)
> > 
> > diff --git a/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select b/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> > index 2458a06..b071ff6 100755
> > --- a/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> > +++ b/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> > @@ -76,5 +76,13 @@ if ping -w5 -c3 "$test_ipv4_host1" &>/dev/null ||
> >          sumnew=$(sha256sum /etc/config/tunneldigger)
> >          [ "$sumnew" != "$sumold" ] && /etc/init.d/tunneldigger restart
> >          /etc/init.d/fastd reload
> > +
> > +        # fastd start/stop for various situations
> > +        if [ "$(ls /etc/fastd/${project}/peers/* 2>/dev/null)" ]; then
> > +            [ -d /proc/$(cat /tmp/run/fastd.${project}.pid) ] || /etc/init.d/fastd start
> > +        else
> > +            [ -d /proc/$(cat /tmp/run/fastd.${project}.pid) ] && /etc/init.d/fastd stop
> > +        fi
> > +
> >      fi
> >  fi
> > -- 
> > 2.8.0.rc3
> > 
> 
> -- 
> franken-dev mailing list
> franken-dev@freifunk.net
> http://lists.freifunk.net/mailman/listinfo/franken-dev-freifunk.net
Jan Kraus Aug. 20, 2016, 3:23 p.m.
Und applied...

Jan
Am Samstag, den 20.08.2016, 16:55 +0200 schrieb Tim Niemeyer:
> Am Freitag, den 05.08.2016, 20:17 +0200 schrieb mayosemmel:
> > Reviewed-by: Jan Kraus <mayosemmel@gmail.com>
> 
> Schließe mich an.
> 
> Reviewed-by: Tim Niemeyer <tim@tn-x.org>
> 
> Tim
> 
> > Am Sonntag, den 24.07.2016, 21:34 +0200 schrieb Robert Langhammer:
> > > Signed-off-by: Robert Langhammer <rlanghammer@web.de>
> > > ---
> > >  src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select | 8 ++++++++
> > >  1 file changed, 8 insertions(+)
> > > 
> > > diff --git a/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select b/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> > > index 2458a06..b071ff6 100755
> > > --- a/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> > > +++ b/src/packages/fff/fff-vpn-select/files/usr/sbin/vpn-select
> > > @@ -76,5 +76,13 @@ if ping -w5 -c3 "$test_ipv4_host1" &>/dev/null ||
> > >          sumnew=$(sha256sum /etc/config/tunneldigger)
> > >          [ "$sumnew" != "$sumold" ] && /etc/init.d/tunneldigger restart
> > >          /etc/init.d/fastd reload
> > > +
> > > +        # fastd start/stop for various situations
> > > +        if [ "$(ls /etc/fastd/${project}/peers/* 2>/dev/null)" ]; then
> > > +            [ -d /proc/$(cat /tmp/run/fastd.${project}.pid) ] || /etc/init.d/fastd start
> > > +        else
> > > +            [ -d /proc/$(cat /tmp/run/fastd.${project}.pid) ] && /etc/init.d/fastd stop
> > > +        fi
> > > +
> > >      fi
> > >  fi
> > > -- 
> > > 2.8.0.rc3
> > > 
> > 
> > -- 
> > franken-dev mailing list
> > franken-dev@freifunk.net
> > http://lists.freifunk.net/mailman/listinfo/franken-dev-freifunk.net
>