NEWS
Conbee DeConz - Could not connect
-
Hallo zusammen,
ich hatte vor längerer Zeit mal meinen Conbee II Stick eingerichtet und ein paar erste Tests über IOBroker gemacht, dann aber erstmal lange Zeit nichts mehr damit gemacht.
Nun wollte ich da wieder ran und kriege im Log nur:Could not connect to deConz/Phoscon. Error: connect EHOSTUNREACH 192.168.178.139:80
Mit Port 8080 sieht es genauso aus.
Die Phoscon App kann ich allerdings über die 192.168.178.139:8080 aufrufen, so dass ich nicht verstehe, woran es liegt.
Mein Setting:
- IOBroker läuft im Dockercontainer auf meiner Synology 218+
-- Seit kurzem habe ich den Container per MACVLAN eingerichtet, sprich er hat eine eigene IP, allerdings im selben Subnetz und sollte dadurch ohne Probleme an die .139 dran kommen. - Deconz-zigbee Container läuft auch im Docker
- Nutze den deconz Adapter in der aktuellen 1.3.11er Version
Habe bisher versucht über den deconz Adapter einen neuen API Key zu erstellen und dafür parallel über die Phoscon App den "App verbinden" Knopf gedrückt. Da tut sich nichts und im Log erscheinen die beiden Zeilen:
deconz.0 2020-11-25 20:03:34.071 warn (18271) Could not connect to websocket instance of deConz/Phoscon. Error: connect EHOSTUNREACH 192.168.178.139:8088 deconz.0 2020-11-25 20:03:31.065 error (18271) Could not connect to deConz/Phoscon. Error: connect EHOSTUNREACH 192.168.178.139:80
Ich habe zudem versucht das Zusammenspiel zwischen dem Deconz-Zigbee Container und dem Conbee USB Stick zu verstehen um dort in die Fehleranalyse gehen zu können, habe aber bisher keine Möglichkeit gefunden wie ich prüfen kann, ob der Stick überhaupt ordnungsgemäß über die Phoscon Software angesprochen werden kann.
Meine Gedanken dazu:- Wenn ich die Phoscon App über die 192.168.178.139:8080 aufrufe, ist hierfür erst mal nur der Deconz-zigbee Container relevant, korrekt?
- Auf der Oberfläche finde ich leider überhaupt keine Status/Verbindungs- oder sonstige Übersicht.
- Worauf deuten also die Verbindungsprobleme oben hin? Erstmal nur auf die Verbindung zum Container (das wäre meine Annahme)? Oder spielt hier schon der Stick eine Rolle?
- Und warum klappt die Verbindung über die Weboberfläche, aber nicht über den deconz Adapter?
Danke schon mal vorab für eure Hilfe!
- IOBroker läuft im Dockercontainer auf meiner Synology 218+
-
- wenn Du in dem Container in dem der ioBroker läuft eine Befehlszeile aufmachst, kannst du da dann den anderen container anpingen ?
A.
-
Hallo @Asgothian
ja das geht. Aber war eine gute Idee, dass nochmal zur Sicherheit zu testen.
root@iobroker:/opt/iobroker# ping 192.168.178.139 PING 192.168.178.139 (192.168.178.139) 56(84) bytes of data. --- 192.168.178.139 ping statistics --- 2 packets transmitted, 0 received, 100% packet loss, time 1ms root@iobroker:/opt/iobroker# ifconfig eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.178.200 netmask 255.255.255.0 broadcast 192.168.178.255 ether 02:42:c0:a8:b2:c8 txqueuelen 0 (Ethernet) RX packets 11182407 bytes 2297797763 (2.1 GiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 3721107 bytes 693678847 (661.5 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
-
Hat keiner eine Idee, woran es liegen kann?
-
@oetzi Für mich sieht es so aus, also ob du den Ping absetzen kannst er aber nicht erfolgreich ist. Hier steht doch 100% loss oder?
-
@oetzi Scheint fast so, als würde deconz nicht laufen. Da Phoscon sichtbar ist, scheint die Verbindung in den Container zu funktionieren. Phoscon ist "nur" eine Webseite, braucht aber den Port von deconz.
-
@succo_J Ich habe aktuell genau das gleiche Problem. Der Aufbau bei mir ist fast wie bei @oetzi.
Mein deconz docker container ist gestartet und kann auch über das Web Frontend Zugegriffen werden. Ich glaube das Problem hängt irgendwie mit den MACVLAN zusammen.
Ich kann im iobroker Container alles anpingen, ausser die Synology NAS wo halt über den Port 8082 (bei mir so eingestellt) auch der deconz liegt. -
So wie ich das verstanden habe sieht @oetzi nur die Webseite, darin aber kein Gateway.
Bitte mal in den container schauen:
docker exec -it Containername bash
netstat -tulpen | grep deCONZ
Da sollte deconz auftauchen: einmal Port 80 und einmal die 8080.Dann noch
service deconz statusAm Ende aus dem Container raus mit exit
-
Hier hatte der User @onkel-ede mit ähnlichen Problemen zu kämpfen. Eventuell kontaktiert ihr ihn mal.
https://forum.iobroker.net/topic/39625/diverse-probleme-mit-deconz-2-05-84/42
-
Danke, dass ihr das Problem wieder aufgreift!
@Gilly said in Conbee DeConz - Could not connect:
@oetzi Für mich sieht es so aus, also ob du den Ping absetzen kannst er aber nicht erfolgreich ist. Hier steht doch 100% loss oder?
Oh man, du hast absolut recht, da hatte ich aber einen gewaltigen Knick in der Optik!
Also besteht in der Tat ein Verbindungsproblem. Interessant, dass du @Gilly ähnliches Probleme hast. Hoffentlich kriegen wir sie beide gelöst.@succo_J : Habe ich gerade ausprobiert, aber er hat ein Problem mit dem netstat Befehlt?!
root@OETZISNAS:~# docker exec -it Deconz-Zigbee bash root@Deconz-Zigbee:/# netstat -tulpen | grep deCONZ bash: netstat: command not found
@haselchen : Danke für den Hinweis!
Die MACVLAN Geschichte kriege ich jetzt nicht spontan hin. Werde mich da aber zeitnah mal ranwagen.
Ich habe gesehen, dass Gilly dort schon am nachbohren ist, da hänge ich mich jetzt mal dran und warte dort auf eine Antwort -
@oetzi Ohje, kein netstat im Container.
Dann eben: lsof -i | grep deCONZ -
@succo_J
Jep, das gehtHier die Ergebnisse:
root@Deconz-Zigbee:/# lsof -i | grep deCONZ deCONZ 8 root 6u IPv4 46551 0t0 TCP *:http-alt (LISTEN) deCONZ 8 root 10u IPv4 47698 0t0 TCP *:omniorb (LISTEN) deCONZ 8 root 11u IPv4 47777 0t0 UDP *:1900 deCONZ 8 root 15u IPv4 41014241 0t0 TCP OETZISNAS.fritz.box:omniorb->DESKTOP-4N9C27Q.fritz.box:53954 (ESTABLISHED) deCONZ 8 root 16u IPv4 41225800 0t0 TCP OETZISNAS.fritz.box:http-alt->DESKTOP-4N9C27Q.fritz.box:54453 (ESTABLISHED) root@Deconz-Zigbee:/# service deconz status deconz: unrecognized service
-
@oetzi Mit den Link von @haselchen konnte ich mit etwas spielen das Problem lösen.
Hier hatte der User @onkel-ede mit ähnlichen Problemen zu kämpfen. Eventuell kontaktiert ihr ihn mal.
https://forum.iobroker.net/topic/39625/diverse-probleme-mit-deconz-2-05-84/42
Es liegt echt an der Kombination, wenn beide Docker Images auf dem gleichen Rechner/Nas laufen
- iobroker mit MACVLAN als Netzwerk und
- deconz mit Host als Netzwerk.
Ich hatte das MACVLAN so aufgebaut, wie von André (buanet) beschrieben. Dies funktioniert aber so nicht, da man vom MACVLAN nicht auf das Host Netzwerk zugreifen kann.
Wenn man das MACVLAN Netzwerk so anlegt, dass man dort mehrere Images verwenden kann, klappt es wunderbar.
Ich habe für die Konfiguration folgendes verwendet:- IPV4 Subnet - 192.168.178.0/24
- IPV4 IP range - 192.168.178.192/27
Im Container->Netzwerk kann man dann noch die IP angeben, welche man haben möchte.
Ich hoffe es Hilft weiter. -
@oetzi Deconz läuft bei dir zwar irgendwie, aber mich wundert, dass im Container *:omniorb steht. Sollte da nicht http für Port 80 stehen? Um die Portnummer zu sehen brauchen wir:
lsof -Pni | grep deCONZ
Dann kannst du mal vergleichen, ob dieser eine Port nicht umgebogen wird.Die letzte Zeile ist auch mysteriös. Der Aufruf des Dienstes hat irgendeine Macke.
-
@Gilly
Oh cool, danke für die Info. Sobald ich ausreichend Zeit finde, werde ich mich da dran geben.@succo_J
Trotzdem forsche ich auch gerne mit dir weiter an dem aktuellen Setting
Hilf mir mal bitte auf die Sprünge, was du genau versuchst herauszufinden.
Nach meinem (sicher laienhaften) Verständnis zeigt lsof ja Sockets von Anwendungen an.root@Deconz-Zigbee:/# lsof -Pni | grep deCONZ deCONZ 8 root 6u IPv4 46551 0t0 TCP *:8080 (LISTEN) deCONZ 8 root 10u IPv4 47698 0t0 TCP *:8088 (LISTEN) deCONZ 8 root 11u IPv4 47777 0t0 UDP *:1900 deCONZ 8 root 17u IPv4 44589884 0t0 TCP 192.168.178.139:8088->192.168.178.129:54784 (ESTABLISHED)
Also scheint der Container auf 3 Ports zu lauschen.
Der 8080 ist auch der, über den ich die Phoscon Seite aufrufe:
Kommen wir hier denn überhaupt weiter oder liegt das Problem nicht vielleicht außerhalb des DeConz Containers, nämlich in der Docker Konfiguration (MACVLAN)?!
-
@oetzi Dein Port 8088 ist der für die API. Wenn der vom Docker nicht umgebogen wird, versuche den statt der 80 im ioBroker.
-
@succo_J
Leider geht das auch nicht.deconz.0 2021-01-04 14:42:18.717 error (23080) Could not connect to deConz/Phoscon. Error: connect EHOSTUNREACH 192.168.178.139:8088
Hätte aber nicht dann auch der Ping von der .200 auf die .139 funktionieren müssen?
-
@oetzi Keine Ahnung ob Ping mit Docker vielleicht ein Problem hat. Mir fallen nur noch zwei Möglichkeiten ein. Entweder Docker macht die 8088 nicht publik oder dieser Port wird auf eine ganz andere Nummer umgebogen.
Deshalb mal: docker inspect Deconz-Zigbee und nach NetworkSetting suchen.
Hier mal ein Beispiel von einem anderen Container:
"NetworkSettings": { "Bridge": "", "SandboxID": "77e745ec8f5d996698cc7cbd89519c9340cc5d7e28c799d0e838d91e77cbd155", "HairpinMode": false, "LinkLocalIPv6Address": "", "LinkLocalIPv6PrefixLen": 0, "Ports": { "7071/tcp": [ { "HostIp": "0.0.0.0", "HostPort": "7071" } ], "8083/tcp": [ { "HostIp": "0.0.0.0", "HostPort": "9083" } ]
Da wird Port 7071 einfach durchgereicht und die interne 8083 als 9083 veröffenlicht.
Villeicht findet sich bei dir dort eine Zuordnung zur 8088...
-
Mhh, die Ports-Einstellung sieht arg dünn aus bei mir
"NetworkSettings": { "Bridge": "", "SandboxID": "c275fd38b4c8c4b644a86829f61d43481a86082ab4dcfb7d9cb051252a1ee31f", "HairpinMode": false, "LinkLocalIPv6Address": "", "LinkLocalIPv6PrefixLen": 0, "Ports": {}, "SandboxKey": "/var/run/docker/netns/default", "SecondaryIPAddresses": null, "SecondaryIPv6Addresses": null, "EndpointID": "", "Gateway": "", "GlobalIPv6Address": "", "GlobalIPv6PrefixLen": 0, "IPAddress": "", "IPPrefixLen": 0, "IPv6Gateway": "", "MacAddress": "", "Networks": { "host": { "IPAMConfig": null, "Links": null, "Aliases": null, "NetworkID": "c6aa4c8511fca2ee1707474cf074cf7ec02e4be8f78f63daa286ddffeebe5992", "EndpointID": "fc9431f2ba366e9416561626201e7afd94b492d30eeab1fbdfd5eade156a1251", "Gateway": "", "IPAddress": "", "IPPrefixLen": 0, "IPv6Gateway": "", "GlobalIPv6Address": "", "GlobalIPv6PrefixLen": 0, "MacAddress": "", "DriverOpts": null }
-
@Gilly said in Conbee DeConz - Could not connect:
Wenn man das MACVLAN Netzwerk so anlegt, dass man dort mehrere Images verwenden kann, klappt es wunderbar.
Ich habe für die Konfiguration folgendes verwendet:IPV4 Subnet - 192.168.178.0/24
IPV4 IP range - 192.168.178.192/27Im Container->Netzwerk kann man dann noch die IP angeben, welche man haben möchte.
Ich habe jetzt verschiedenes ausprobiert, kriege es aber irgendwie nicht hin.
Als erstes habe ich eine neue MACVLAN CONF "docker_macvlan_conf" angelegt mit folgenden Parametern:
- IPV4 Subnet - 192.168.178.0/24
- IPV4 IP range - 192.168.178.200/29
Nach meinem Verständnis sollten mit der 29er Maskierung nun 8 IP Adressen möglich sein (200-207). Eine (bei mir .200) kann ich dann dem ioBroker Container geben und die andere (bei mir .201) dem Deconz.
Dann habe ich ein neues Netzwerk (für Deconz) anlegt:
- Name: deconz_macvlan_201
- Conf: docker_macvlan_conf
Das hat noch funktioniert. Wenn ich jetzt aber ein zweites Netzwerk (für den ioBroker) anlegen will und die gleiche conf auswähle:
- Name: iobroker_macvlan_200
- Conf: docker_macvlan_conf
Kriege ich folgende Fehlermeldung:
Failure Pool overlaps with other one on this address space
Wo ist mein Denkfehler, bzw. was habe ich vergessen oder falsch gemacht?