Posts Tagged ‘IPv4’

Mittwoch, 16. September 2020

fr24feed 1.0.26-4 hat Probleme mit IPs, IPv6 und dem Web-Server

Kürzlich wurde auf meinem Pi24-Horchposten die neueste Version von fr24feed installiert: 1.0.26-4, Built on Sep 14 2020 08:32:40 (HEAD-bd20105.git/Linux/static_armel).

Umgehend reagierten meine monit Netzwerksensoren:

Connection failed Service pi24.domain.tld 

	Date:        Mon, 14 Sep 2020 19:03:03
	Action:      alert
	Host:        HOST
	Description: failed protocol test [HTTP] at [10.1.2.3]:8754 [TCP/IP] -- HTTP error: Regular expression doesn't match: No match

Your faithful employee,
Monit

Als ich auf das Web-Interface zugreifen wollte erschien auch tatsächlich folgende Fehlermeldung:

For security reasons the web interface is only availble from private class networks or after you have manually specified the bind-interface setting in /etc/fr24feed.ini

Please set it to bind-interface="0.0.0.0" to accept traffic from all interfaces or to the IP address of your preferred network interface!

For further assistance please contact support@fr24.com

Komisch! Nun gut, ich fügte also bind-interface="0.0.0.0" ans Ende der Datei /etc/fr24feed.ini und bootete den Pi24 neu. Das schaffte keine Abhilfe.

Selbst wenn ich auf dem Pi24 selber ein wget localhost:8754 respektive wget 127.0.0.1:8754 machte, erschien die Fehlermeldung.

Ich tüftelte noch eine Weile lang herum, und entdeckte dabei folgendes: Die neuste Version von fr24feed bindet sich aus irgendeinem Grund nur an IPv6:

$ netstat -tulpn
...
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name    
tcp6       0      :::8754                   :::*                    LISTEN      -                   
...

Ein Eintrag für denselben Port beginnend mit tcp fehlte.

Das CHANGELOG zeigt auf, dass die Kollegen aktuell an den Netzwerkfunktionalitäten von fr24feed rumbasteln und dabei bereits mehrere Male nachbessern mussten. Offenbar ist auch die neuste Version noch nicht ganz koscher.

Ein Blick in das Log von fr24feed zeigte folgende Einträge:

2020-09-14 20:10:02 | ______  _  _         _      _                    _              _____    ___ 
2020-09-14 20:10:02 | |  ___|| |(_)       | |    | |                  | |            / __  \  /   |
2020-09-14 20:10:02 | | |_   | | _   __ _ | |__  | |_  _ __  __ _   __| |  __ _  _ __`' / /' / /| |
2020-09-14 20:10:02 | |  _|  | || | / _` || '_ \ | __|| '__|/ _` | / _` | / _` || '__| / /  / /_| |
2020-09-14 20:10:02 | | |    | || || (_| || | | || |_ | |  | (_| || (_| || (_| || |  ./ /___\___  |
2020-09-14 20:10:02 | \_|    |_||_| \__, ||_| |_| \__||_|   \__,_| \__,_| \__,_||_|  \_____/    |_/
2020-09-14 20:10:02 |                __/ |                                                         
2020-09-14 20:10:02 |               |___/                                                          
2020-09-14 20:10:02 | [main][i]FR24 Feeder/Decoder
2020-09-14 20:10:02 | [main][i]Version: 1.0.26-4/generic
2020-09-14 20:10:02 | [main][i]Built on Sep 14 2020 08:32:40 (HEAD-bd20105.git/Linux/static_armel)
2020-09-14 20:10:02 | [main][i]Running on: pi24-raspbian9
2020-09-14 20:10:02 | [main][i]Local IP(s): 
2020-09-14 20:10:02 | [main][i]Copyright 2012-2020 Flightradar24 AB
2020-09-14 20:10:02 | [main][i]https://www.flightradar24.com
2020-09-14 20:10:02 | [main][i]DNS mode: PING
2020-09-14 20:10:03 | [main][i]Automatic updates are ENABLED
2020-09-14 20:10:04 | ERROR: rmmod: ERROR: Module dvb_usb_rtl28xxu is not currently loaded
2020-09-14 20:10:04 | info | [httpd]Server started, listening on ::2020-09-14 20:10:04 | [e]PacketSenderConfiguration::fetch_config(): Unable to fetch configuration for yoda receiver
2020-09-14 20:10:06 | [d]TLSConnection::ctor(): Enable verify_peer in production code!
2020-09-14 20:10:06 | [main][i]Reader thread started
2020-09-14 20:10:06 | [main][i]Socket server started
2020-09-14 20:10:06 | [main][i]MLAT data feed started
2020-09-14 20:10:06 | [reader][i]Initializing reader
2020-09-14 20:10:06 | [reader][i]Connecting to DVBT receiver via (exe:///usr/bin/dump1090-mutability  --raw --mlat)
2020-09-14 20:10:06 | [bs][i]Initializing server
2020-09-14 20:10:06 | [bs][i]Starting server on 0.0.0.0:30003
2020-09-14 20:10:06 | [mlat][i]Waiting for MLAT configuration
2020-09-14 20:10:06 | [master][i]Starting processing thread
2020-09-14 20:10:06 | [reader][i]Connected to the receiver, configuring
2020-09-14 20:10:06 | [reader][i]Configured, processing messages
2020-09-14 20:10:07 | terminate called after throwing an instance of 'char const*'

Interessant sind folgende Zeilen:

...
2020-09-14 20:10:02 | [main][i]Local IP(s): 
...
2020-09-14 20:10:04 | info | [httpd]Server started, listening on ::
...
2020-09-14 20:10:07 | terminate called after throwing an instance of 'char const*'

Komisch! Dem Problem konnte ich nicht auf den Grund gehen, wieso fr24feed die IP des Raspberry Pis nicht herausfinden konnte. strace könnte hier wohl weiterhelfen, doch das ging mir dann doch etwas zu weit. Schlussendlich hatte ich genug und entschied ich mich für ein Downgrade auf eine „last known good“ Version:

$ wget "https://repo.feed.flightradar24.com/rpi_binaries/fr24feed_1.0.25-3_armhf.deb" --no-check-certificate
# dpkg -i fr24feed_1.0.25-3_armhf.deb

Damit die neueste Version am nächsten Tag nicht erneut installiert wird, habe ich auch noch /etc/cron.d/fr24feed_updater angepasst:

47 9 1 * * root /usr/lib/fr24/fr24feed_updater.sh >> /var/log/fr24feed_update.log 2>&1

Hoffen wir, dass es bis zum 1. Oktober eine neue Version gibt, die mein Problem behebt.

Tags: , , , , , , ,
Labels: IT

Keine Kommentare | neuen Kommentar verfassen

Samstag, 14. April 2018

Testen, ob ein Linux-System (auch) über IPv6 ans Internet angebunden ist

Dies ist ganz simpel:

$ ping6 ipv6.google.com

Quelle: How to test IPv6 connectivity

Da ich mit IPv6 völlig überfordert bin, habe ich es auf all meinen Linux-Systemen deaktiviert, indem ich in die Datei /etc/sysctl.conf folgende Zeilen eingefügt habe:

...
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
net.ipv6.conf.eth0.disable_ipv6 = 1

Quelle: How to turn off IPv6

Das Kommando meldet dann folgende Antwort zurück:

$ ping6 ipv6.google.com
connect: Cannot assign requested address

Das bedeutet:

[…] suggests that the inet6 protocol family isn’t loaded

Quelle: IPv6 with miredo: „connect: Cannot assign requested address“

Auf einigen Systemen hiess es aber auch:

$ ping6 ipv6.google.com
ping: socket: Operation not permitted

und auf anderen hiess es:

$ ping6 ipv6.google.com
connect: Network is unreachable

Damit wusste ich, dass ich auf diesen Systemen sysctl.conf noch nicht angepasst hatte. Das ist nun nachgeholt.

Tags: , , ,
Labels: Linux

Keine Kommentare | neuen Kommentar verfassen