ping in configurehood bei instabilem Internet

robert rlanghammer at web.de
Di Jul 23 18:38:31 CEST 2019


Hallo Adrian,

hab jetzt echt ne Weile gebraucht um die configurhood Logik wieder zu
erfassen. Wir Fragen sogar zwei mal unabhängig nach Internet. Wenn da
die Antwort unterschiedlich ausfällt, kann man sich lustige Effekte
ausdenken.

Die Frage ist doch, ob wir mit 2/3 packet-loss noch zufrieden sind und
die Tunnel an machen. Man könnte es noch Abhängig vom Erfolg des wget
machen und dafür das -w5 raus nehmen. Auf jeden Fall sollte man nicht
für vpn-select nochmal testen.  Irgendwie sowas:

# if we have Internet, we download the Hoodfile from the keyxchangev2
if hasInternet ; then
  if getKeyserverHoodfile "$hoodfiletmp";then
    cp "$hoodfiletmp""$hoodfilewww"
    hasInternet=1
  else
    hasInternet=0
....
und dann vpn-select in Abhängigkeit von $hasInternet

Was Besseres fällt mit dazu jetzt auch nicht ein.

Grüße
Robert



Am 20.07.19 um 22:24 schrieb mail at adrianschmutzler.de:
> Hallo zusammen,
>
> mein Internet hat z.Zt. wieder Aussetzer, und dabei habe ich eine interessante Entdeckung gemacht.
>
> In configurehood haben wir eine Funktion, die bestimmt, ob der KeyXchange erreichbar ist:
>
> https://github.com/FreifunkFranken/firmware/blob/master/src/packages/fff/fff-hoods/files/usr/sbin/configurehood#L33
>
> hasInternet() {
> 	test_ipv4_host1="keyserver.freifunk-franken.de" # Freifunk-Franken keyserver
> 	test_ipv4_host2="8.8.8.8"        # Google DNS
> 	test_ipv6_host1="heise.de"       # heise Zeitschriftenverlag
> 	if ping -w5 -c3 "$test_ipv4_host1" &>/dev/null ||
> 		ping -w5 -c3 "$test_ipv4_host2" &>/dev/null ||
> 		ping6 -w5 -c3 "$test_ipv6_host1" &>/dev/null ; then
> 		return 0
> 	fi
> 	return 1
> }
>
> Dort verwenden wir "ping" mit der Option -w5. Diese sorgt dafür, dass nur dann der jeweilige Ping "true" ist, wenn alle drei pings PRO PING COMMAND ("-c3") in den 5 sec. zurück kommen.
> Bei meiner flackernden Verbindung kamen jedoch immer nur 1-2 von 3 zurück. Damit hätte ich zwar wunderbar den Hoodfile downloaden können, jedoch waren alle drei pings false und ich kam gar nicht in das entsprechende if.
>
> Entfernt man das -w5, verhält sich ping anders und gibt auch dann "true" zurück, wenn nur 1 oder 2 ping erfolgreich sind. Durch Entfernen der drei "-w5" war es mir also möglich (und nur dann), mein Gerät als Uplink zu konfigurieren.
>
> Ich könnte mir vorstellen, dass dies eine häufige Ursache für gelegentlich offline gehende Router darstellt (wenn kein Meshpartner verfügbar ist).
>
> Ich wäre versucht, "-w5" generell aus der FW zu entfernen.
>
> Meinungen?
>
> Grüße
>
> Adrian
-------------- nächster Teil --------------
Ein Dateianhang mit HTML-Daten wurde abgetrennt...
URL: <https://{'listname': 'franken-dev-freifunk.net', 'hostname': 'lists.freifunk.net'}/pipermail/franken-dev-freifunk.net/attachments/20190723/a1f87784/attachment.html>
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : signature.asc
Dateityp    : application/pgp-signature
Dateigröße  : 833 bytes
Beschreibung: OpenPGP digital signature
URL         : <https://{'listname': 'franken-dev-freifunk.net', 'hostname': 'lists.freifunk.net'}/pipermail/franken-dev-freifunk.net/attachments/20190723/a1f87784/attachment.sig>


Mehr Informationen über die Mailingliste franken-dev