[gelöst] http / Blitzer-Modul hat Schwierigkeiten bei der Anfrage

Begonnen von Gisbert, 24 Juli 2019, 19:20:51

Vorheriges Thema - Nächstes Thema

bismosa

Hallo!

@rudolfkoenig
Eigentlich ist dies keine direkte Anfängerfrage. Wir haben das Problem auch schon ausführlich im thread zum Blitzermodul besprochen.
Da mir hier auch die Ideen ausgegangen sind und auch andere Module davon betroffen sind, war mein Vorschlag das hier nochmal zu Posten, damit sich das auch noch jemand anderes anschauen kann.
Sorry, wenn das falsch war!

Vermuten tue ich hier auch ein Konfigurationsproblem. Also ein Einzelfall.

Um das bei ihm nachzustellen ohne ein Modul zu verwenden reicht folgendes in der myUtils:

sub TestHTTP(){
my $hash = {};
my $param = {
url        => "https://nominatim.openstreetmap.org/reverse?format=json&lat=".52.111."&lon=".8.1212,
timeout    => 15,
sslargs    => { SSL_version => 'TLSv12' },
method     => "GET",            # Lesen von Inhalten
hash       => $hash,            # Muss gesetzt werden, damit die Callback funktion wieder $hash hat
header     => "agent: FHEM/1.0\r\nUser-Agent: FHEM/1.0\r\nAccept: application/json",
callback   =>  \&TestHTTPCallback   # Diese Funktion soll das Ergebnis dieser HTTP Anfrage bearbeiten
};
#agent: FHEM/1.0\r\nUser-Agent: FHEM/1.0\r\nAccept: application/json

HttpUtils_NonblockingGet($param);      # Starten der HTTP Abfrage. Es gibt keinen Return-Code.
}

sub TestHTTPCallback($){
my ($param, $err, $data) = @_;
my $mydata = $param->{hash};
my $hash = $mydata->{hash};
Log 1, "http:".$err."\n".$data;
return;

}


Aufruf dann mittels:

{TestHTTP()}

in der Befehlszeile. In der Log steht dann das Ergebnis der Abfrage.

Bei Gisbert sah es dann so aus:
Zitat
2019.07.27 16:30:52 1: http:connect to https://nominatim.openstreetmap.org:443: Network is unreachable

@Gisbert
Bitte nur dies zum testen mit verbose 5 verwenden. Dann ist die Ausgabe nicht so heftig wie im Modul.

Gruß
Bismosa
1x nanoCUL 433MHz (SlowRF Intertechno) für Fenstersensoren
1x nanoCUL 868Mhz für MAX (9x HT 1xWT)
1x ZigBee CUL
Weiteres: Squeezebox server, Kindle Display, ESP8266, Löterfahrung, ...

rudolfkoenig

Habs mit und ohne dnsServer probiert, sogar IPv6 geht bei mir ohne Probleme:
fhem> attr global dnsServer 1.1.1.1
fhem> attr global useInet6
fhem> attr global verbose 5
fhem> {TestHTTP()}


Zitat
2019.07.29 23:14:45 4: DNS result for nominatim.openstreetmap.org: [2001:978:2:2c::172:9], ttl:523
2019.07.29 23:14:45 4: IP: nominatim.openstreetmap.org -> [2001:978:2:2c::172:9]
...
2019.07.29 23:14:45 5: HttpUtils https://nominatim.openstreetmap.org/reverse?format=json&lat=52.111&lon=8.1212: Got data, length: 570
...
2019.07.29 23:14:45 1: http:
{"place_id":1401478,"licence":"Data © OpenStreetMap contributors, ODbL 1.0. https://osm.org/copyright","osm_type":"node","osm_id":320212341,"lat":"52.1132377","lon":"8.1198954","display_name":"Schutzhütte, Bielefelder Straße, Bad Laer, Landkreis Osnabrück, Niedersachsen, 49196, Deutschland","address":{"address29":"Schutzhütte","road":"Bielefelder Straße","village":"Bad Laer","county":"Landkreis Osnabrück","state":"Niedersachsen","postcode":"49196","country":"Deutschland","country_code":"de"},"boundingbox":["52.1131377","52.1133377","8.1197954","8.1199954"]}

Jetzt warte ich auf das verbose 5 Log eines Problemfalls.

Gisbert

Mit dnsServer 192.168.1.46 (Fhemserver und pi-hole):
2019.07.29 23:24:44 5: Cmd: >{TestHTTP()}<
2019.07.29 23:24:44 5: HttpUtils url=https://nominatim.openstreetmap.org/reverse?format=json&lat=52.111&lon=8.1212
2019.07.29 23:24:44 5: DNS QUERY 707201000001000000000000096e6f6d696e6174696d0d6f70656e7374726565746d6170036f726700001c0001
2019.07.29 23:24:44 5: DNS ANSWER 73:707281800001000100000000096e6f6d696e6174696d0d6f70656e7374726565746d6170036f726700001c0001c00c001c00010000011e0010200109780002002c0000000001720009
2019.07.29 23:24:44 4: DNS result for nominatim.openstreetmap.org: [2001:978:2:2c::172:9], ttl:286
2019.07.29 23:24:44 4: IP: nominatim.openstreetmap.org -> [2001:978:2:2c::172:9]
2019.07.29 23:24:44 4: HttpUtils: connect to https://nominatim.openstreetmap.org:443: Network is unreachable
2019.07.29 23:24:44 1: http:connect to https://nominatim.openstreetmap.org:443: Network is unreachable


ohne attr dnsServer:
2019.07.29 23:19:30 5: Cmd: >{TestHTTP()}<
2019.07.29 23:19:30 5: HttpUtils url=https://nominatim.openstreetmap.org/reverse?format=json&lat=52.111&lon=8.1212
2019.07.29 23:19:30 4: IP: nominatim.openstreetmap.org -> [2001:978:2:2c::172:9]
2019.07.29 23:19:30 4: HttpUtils: connect to https://nominatim.openstreetmap.org:443: Network is unreachable
2019.07.29 23:19:30 1: http:connect to https://nominatim.openstreetmap.org:443: Network is unreachable


Viele​ Grüße​ Gisbert​
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome

MadMax-FHEM

Bei dir werden die Namen in IP v6 Adressen aufgelöst.

Ich habe IP v6 nicht aktiviert (nirgends / bzw. wo möglich deaktiviert), bei mir kommt da (wenn ich versuche IP v6 zu erreichen) dann auch "network unreacheable"...

Hast du IP v6 konfiguriert?

Wie ist dein DNS konfiguriert?
Weil ja die "Auflösung" der "Namen" eine v6 IP-Adresse liefert...

Gruß, Joachim
FHEM PI3B+ Bullseye: HM-CFG-USB, 40x HM, ZWave-USB, 13x ZWave, EnOcean-PI, 15x EnOcean, HUE/deCONZ, CO2, ESP-Multisensor, Shelly, alexa-fhem, ...
FHEM PI2 Buster: HM-CFG-USB, 25x HM, ZWave-USB, 4x ZWave, EnOcean-PI, 3x EnOcean, Shelly, ha-bridge, ...
FHEM PI3 Buster (Test)

Gisbert

Zitat von: MadMax-FHEM am 29 Juli 2019, 23:39:03
Bei dir werden die Namen in IP v6 Adressen aufgelöst.

Ich habe IP v6 nicht aktiviert (nirgends / bzw. wo möglich deaktiviert), bei mir kommt da (wenn ich versuche IP v6 zu erreichen) dann auch "network unreacheable"...

Hast du IP v6 konfiguriert?

Wie ist dein DNS konfiguriert?
Weil ja die "Auflösung" der "Namen" eine v6 IP-Adresse liefert...

Gruß, Joachim

Hallo Joachim,

ohne Unterstützung vorort kann ich deine Fragen alleine nicht beantworten.

Im UniFi-Controller ist nur IPv4 konfiguriert, nicht IPv6.
Unter Network gibt es die Auswahloption
IPV4 Connection Type Using DHCP und
IPV6 Connection Type Disabled - diese Option habe ich zu DHCPv6 geändert - und siehe da, die IPv6-Adressen werden jetzt aufgelöst !!

Ich hab keine Ahnung, wie es zu der Änderung beim Aufruf der entsprechenden 3 Seiten (Blitzer, Pushover und CO2Signal) gekommen ist, jedenfalls war ich nicht am UniFi-Controller dran.

Vielen Dank an alle Beteiligten, die mich tatkräftig unterstüzt haben, ihr seit Klasse !!

Jetzt gibt es bei der Eingabe {TestHTTP()} mit global verbose 5:
Zitat2019.07.30 00:44:57 5: Cmd: >{TestHTTP()}<
2019.07.30 00:44:57 5: HttpUtils url=https://nominatim.openstreetmap.org/reverse?format=json&lat=52.111&lon=8.1212
2019.07.30 00:44:57 5: DNS QUERY 707201000001000000000000096e6f6d696e6174696d0d6f70656e7374726565746d6170036f72670000010001
2019.07.30 00:44:57 5: DNS ANSWER 61:707281800001000100000000096e6f6d696e6174696d0d6f70656e7374726565746d6170036f72670000010001c00c0001000100000005000482754c09
2019.07.30 00:44:57 4: DNS result for nominatim.openstreetmap.org: 130.117.76.9, ttl:5
2019.07.30 00:44:57 4: IP: nominatim.openstreetmap.org -> 130.117.76.9
2019.07.30 00:44:57 5: HttpUtils request header:
GET /reverse?format=json&lat=52.111&lon=8.1212 HTTP/1.0
Host: nominatim.openstreetmap.org
Accept-Encoding: gzip,deflate
agent: FHEM/1.0
User-Agent: FHEM/1.0
Accept: application/json

2019.07.30 00:44:57 4: https://nominatim.openstreetmap.org/reverse?format=json&lat=52.111&lon=8.1212: HTTP response code 200
2019.07.30 00:44:57 5: HttpUtils https://nominatim.openstreetmap.org/reverse?format=json&lat=52.111&lon=8.1212: Got data, length: 570
2019.07.30 00:44:57 5: HttpUtils response header:
HTTP/1.1 200 OK
Date: Mon, 29 Jul 2019 22:44:57 GMT
Server: Apache/2.4.29 (Ubuntu)
Access-Control-Allow-Origin: *
Access-Control-Allow-Methods: OPTIONS,GET
Strict-Transport-Security: max-age=31536000; includeSubDomains; preload
Expect-CT: max-age=0, report-uri="https://openstreetmap.report-uri.com/r/d/ct/reportOnly"
Upgrade: h2
Connection: Upgrade, close
Content-Type: application/json; charset=UTF-8
2019.07.30 00:44:57 1: http:
{"place_id":1401478,"licence":"Data © OpenStreetMap contributors, ODbL 1.0. https://osm.org/copyright","osm_type":"node","osm_id":320212341,"lat":"52.1132377","lon":"8.1198954","display_name":"Schutzhütte, Bielefelder Straße, Bad Laer, Landkreis Osnabrück, Niedersachsen, 49196, Deutschland","address":{"address29":"Schutzhütte","road":"Bielefelder Straße","village":"Bad Laer","county":"Landkreis Osnabrück","state":"Niedersachsen","postcode":"49196","country":"Deutschland","country_code":"de"},"boundingbox":["52.1131377","52.1133377","8.1197954","8.1199954"]}

Viele​ Grüße​ Gisbert​
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome

rudolfkoenig

Zitat2019.07.29 23:24:44 4: DNS result for nominatim.openstreetmap.org: [2001:978:2:2c::172:9], ttl:286
Nur wenn man "attr global useInet6" gesetzt hat, versucht FHEM (mit oder ohne "attr global dnsServer") die IPv6 Adresse zu besorgen.
Man sollte dieses Attribut nur dann setzen, wenn IPv6 durchgehend funktioniert.
Sollte aber heutzutage zunehmend der Fall sein.

Gisbert

Hallo Rudi,

Zitat"attr global useInet6"
Dieses Attribut war und ist nicht gesetzt, bis auf einen Versuch gestern abend.
Insofern liegt dann möglicherweise irgendwo noch eine Unregelmäßigkeit vor.

Viele​ Grüße​ Gisbert​
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome

Gisbert

Es bleibt dennoch seltsam, da ein unerwartetes Ergebnis vorliegt.

Wenn ich "attr global useInet6 1" setze, dann bekomme ich keine Verbindung zu Pushover und der Internetseite aus dem Blitzmodul.
Entferne ich es, dann funktionieren die Verbindingen wieder.

Viele​ Grüße​ Gisbert​
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome

CoolTux

Eventuell testest Du falsch.

Zitat
Im UniFi-Controller ist nur IPv4 konfiguriert, nicht IPv6.
Unter Network gibt es die Auswahloption
IPV4 Connection Type Using DHCP und
IPV6 Connection Type Disabled - diese Option habe ich zu DHCPv6 geändert - und siehe da, die IPv6-Adressen werden jetzt aufgelöst !!

Nach dem Du das umgestellt hast ging es ja anscheinend. Nun musst Du das wieder zurück stellen um wieder dahin zu kommen wo Du vor der Lösung warst. Du also wieder Dein Problem hast.
Danach kannst dann das Attribut für IPv6 einstellen und testen.
Du musst nicht wissen wie es geht! Du musst nur wissen wo es steht, wie es geht.
Support me to buy new test hardware for development: https://www.paypal.com/paypalme/MOldenburg
My FHEM Git: https://git.cooltux.net/FHEM/
Das TuxNet Wiki:
https://www.cooltux.net

Gisbert

Zitat von: CoolTux am 30 Juli 2019, 09:02:31
Eventuell testest Du falsch.

Nach dem Du das umgestellt hast ging es ja anscheinend. Nun musst Du das wieder zurück stellen um wieder dahin zu kommen wo Du vor der Lösung warst. Du also wieder Dein Problem hast.
Danach kannst dann das Attribut für IPv6 einstellen und testen.
Hallo CoolTux,
die Kombination kein IPV6 Connection Type im UniFi-Controller und "attr global useInet6 1 oder 0" führt zum gleichen Ergebnis, nämlich, dass die Verbindung nicht zustande kommt.
Wenn die Option IPV6 Connection Type im UniFi-Controller gesetzt ist, dann funktioniert die Verbindung nur, wenn "attr global useInet6 0" (d.h. das Attribut gelöscht) gesetzt ist.
Ich glaube nicht, dass es am Testen liegt, kann es aber auch nicht zu 100% ausschließen.

Viele Grüße Gisbert
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome

bismosa

Hallo!

Sehe ich es denn richtig, dass das Problem nun vollständig behoben ist? Es lag letztendlich an der Konfiguration des UniFi Controller?
Kann es sein, das du bisher auch eine ipv4 Adresse über deinen Kabel Anschluss hattest?

Wenn es erledigt ist, dann bitte diesen thread als erledigt markieren und bitte im thread beim Blitzer Modul auch eine kurze Auflösung des Problems Posten. Dann haben vielleicht auch mitlesende die Auflösung dort.

Hast du das Problem mit den FHEM Neustarts denn noch?

Gruß
Bismosa
1x nanoCUL 433MHz (SlowRF Intertechno) für Fenstersensoren
1x nanoCUL 868Mhz für MAX (9x HT 1xWT)
1x ZigBee CUL
Weiteres: Squeezebox server, Kindle Display, ESP8266, Löterfahrung, ...

Gisbert

Hallo Bismosa,

ZitatSehe ich es denn richtig, dass das Problem nun vollständig behoben ist? Es lag letztendlich an der Konfiguration des UniFi Controller?
Kann es sein, das du bisher auch eine ipv4 Adresse über deinen Kabel Anschluss hattest?
Jetzt läuft es - aber es ist unklar, wieso es zum Problem kam, genaus wie die Lösung. Ich hab einen Dual-Stack-Anschluss von Unitymedia, also IPv4 und IPv6, und das seit 8 Monaten.

ZitatWenn es erledigt ist, dann bitte diesen thread als erledigt markieren und bitte im thread beim Blitzer Modul auch eine kurze Auflösung des Problems Posten. Dann haben vielleicht auch mitlesende die Auflösung dort.
Wird gemacht.

ZitatHast du das Problem mit den FHEM Neustarts denn noch?
Dieses Problem wurde reproduzierbar durch das Modul Buienradar verursacht. Andere User hatten das gleiche beobachtet. Der Modulautor/maintainer hat sich der Sache angenommen. Ich mache heute einen Test, nachdem ich das Modul ein paar Tage schlafen gelegt habe.

Viele​ Grüße​ Gisbert​
Aktuelles FHEM | PROXMOX | Fujitsu Futro S740 | Debian 12 | UniFi | Homematic, VCCU, HMUART | ESP8266 | ATtiny85 | Wasser-, Stromzähler | tuya local | Wlan-Kamera | SIGNALduino, Flamingo Rauchmelder FA21/22RF | RHASSPY | DEYE | JK-BMS | ESPHome