Problem bei Portweiterleitung zusammen mit virtuellem Computer

  • Mal wieder: Ich glaube, ich stehe auf dem Schlauch.

    Gestern habe ich endlich mich mal wieder an die Container Station gewagt, da ich immer noch beabsichtige, die eine oder andere Linux-VM durch einen Container zu ersetzen. Angefangen habe ich mit einem vorgefertigten Docker-FHEM. Gearbeitet habe ich dabei innerhalb einer Windows-10-VM. Es wurde automatisch eine Portweiterleitung angelegt. Leider ist aber die Website im Browser nicht erreichbar. Nach einigen erfolglosen Versuchen kam ich auf die Idee, dies mal vom Notebook aus zu probieren. Und siehe da: Es geht.


    Kann mir einer sagen, wo da mein Knoten liegt?

  • Boah, da stehe ich gerade echt auf dem Schlauch was genau du da gemacht hast. Was ich verstanden habe: du hast einen FHEM Container gestartet, richtig? Wo lief der Container? In einer Windows 10 VM? Warum? Vorher hast du noch von Linux VMs gesprochen, die ersetzt werden sollen ...

    Windows 10 und Docker ist nicht das Gleiche wie Linux und Docker. Unter Windows gibt es einige Einschränkungen - zb. das der "host" Modus (--net=host) nicht funktioniert und man stattdessen, immer die Ports angeben muss. Wenn du also von einer Linux VM weg willst, würde ich das ganze auch in einer Linux VM, oder auf dem NAS durch turnen.

    Dann stellt sich mir die Frage, von wo hast du versucht die UI zu erreichen? Aus der Windows VM? Vom Host Computer? Und dann weiter: wie sah die Netzwerk Config des Containers aus, welche IP hat die VM, welche der Host, etc. pp.

  • Die Linux-VM ist nur die Vorgeschichte. Ansonsten eigentlich ganz einfach, nichts kompliziertes.


    Ich habe Container Station installiert.

    Darauf ein Image gezogen mit fhem und gestartet.

    Dort ist alles auch hinsichtlich Netz voreingestellt.

    Netzwerk: NAT mit Portweiterleitung 49153 auf 8083.

    Läuft. Oben in der Übersicht ist zu sehen im Bowser mit Container Station:

    Code
    192.168.178.34:49153 -> 8083

    Angeklickt öffnet sich ein neuer Browsertab. Darin war ist fhem zu sehen und bedienen.


    Soweit klar? Funktioniert im Browser auf dem Notebook - auch dann, wenn ich manuell im Adressfeld eintippe

    192.168.178.34:49153


    Bin ich aber im Browser innerhalb einer Windows-10-Vm steht da:

    Code
    Website nicht erreichbar.

    Gebe ich hier im Adressfeld eine beliebige andere fhem-Installation in meinem Netz an, z. B.

    192.168.178.72:8083

    öffnet sich ganz normal wieder die fhem-Seite.


    Jetzt kar?

  • Jetzt muss ich mich nochmal korrigieren . das mit dem Ersatz der Linux-Version von VM ist totaler Quatsch. Die soll weiter parallel laufen weil ich eine Device habe, die Intel benötigt und ich deren FW-Dateien nicht ins NAS selber bekomme. Ersetzt werden soll die FHEM-Version, die ich aus von qnapclub als qpkg gezogen habe. Ansonsten stimmt das Problem aber.

  • Boah, da bin ich leider überfragt. Wie ist denn das Netzwerk der Windows VM konfiguriert? Hat die VM eine eigene IP? Wenn nicht, mal probiert eine eigene IP zu vergeben? Ach, und wo läuft die VM denn? Auf dem Gleichen Host wie FHEM, oder auf einem anderen Rechner?

  • Ach, und wo läuft die VM denn? Auf dem Gleichen Host wie FHEM, oder auf einem anderen Rechner?

    Ja, die VM hat eine eigene IP. Den zweiten Teil verstehe ich aber nicht. Die VM läuft auf dem NAS.

  • Ok, also laufen FHEM und die VM auf dem NAS, richtig? Und du erreichst von der VM die FHEM Instanz auf dem NAS nicht, aber eine andere FHEM Instanz kannst du erreichen, richtig? Hast du mal versucht FHEM von der VM aus anzupingen? Kommt da was an?

  • Ich verstehe nicht, wie das gehen soll. Ich kenne ja die IP des Containers nicht. Und nochmal, vom Iphone oder Notebook komme ich ohne Probleme an die FHEM-Instanz im Container. Zudem glaube ich - hat nichts direkt damit zu tun - hat QNAP bei den Preferenzen die Netzwerke vertauscht. 10.0.3.x sollte doch Docker sein, nicht lxcbr.


    EDIT: Ok, die IP ist 10.0.3.2, anpingen lässt sie sich aber nicht vom Hauptnetz, wohl aber vom NAS aus.


    EDIT2:

    Also liegt‘s an den Einstellungen des NAS zu den virtuellen Switches. Von der VM komme ich über 10.0.3.2:8083 ran. Danke Azrael783 für die Tipps

    3 Mal editiert, zuletzt von duke-f ()

  • dr_mike

    Hat den Titel des Themas von „Problem bei Portweiterleitung zusammen mit Vitrtuellem Computer“ zu „Problem bei Portweiterleitung zusammen mit virtuellem Computer“ geändert.
  • Irgendwie komme ich da nicht weiter. Mit den Ports als solche und den unterschiedlichen IPs von der VM oder dem realen Computer aus könnte ich mich ja abfinden. Leider werden aber andere Ports, die ich zudem durchleiten muss, auch nicht angelegt.


    Jetzt habe ich, um die Angelegenheit hinsichtlich der Ports zu umgehen, diesen Container in Container Station -> Stettings -> Advanced Settings -> Network umgestellt von NAT auf Bridge. Dort habe ich eine statische IP in meinem eigenen gewohnten Heimnetzwerk vergeben: 192.168.178.75 und auch passen die Fritzbox als Gateway angelegt. Schließlich habe ich den physikalischen Adapter 1 gewählt als Interface, auf den auch die virtuellen Computer alle liegen über den virtuellen Switch 1. Ich habe auch den Container beendet, habe sogar Container Station komplett beendet und neu gestartet (sollte alles ja nicht nötig sein. Zuletzt habe ich mir die qnap.json angesehen und habe darin diese Vorgaben auch alle bestätigt vorgefunden.


    Leider funktionier das dennoch nicht. Ich komme über 192.168.178.75 nicht an den Container, auch kein Ping - weder vom realen Computer noch von der VM. Auch die FHEM-Seite unter dessen Standardport 8083 erreiche ich mit dieser IP nicht, doch aber weiterhin über die beiden alten Zugänge aus der NAT-Installation, also 10.0.3.2:8083 von der VM und 192.178.178.34:49153 vom realen Computer aus.


    Schließlich habe ich noch über das Terminal mittels docker exec -it ip_des_containers /bin/bash und darin ifconfig nachgesehen und festgestellt: Dort steht nach wie vor die ip 10.0.3.2. genau das steht auch in dem File hosts im Container-Verzeichnis.


    Meine einzige Erklärung ist jetzt, dass dieses Image diesen Container hinsichtlich des Netzwerkes komplett eigenständig fix festlegt, und dies vollkommen unabhängig davon, was ich entweder in den Einstellungen in Container Station oder auch innerhalb der qnap.json mache. Ist das möglich? Ich muss da schon zugeben: Die Welt der Container ist mir noch nicht so richtig vertraut. (Hat man gemerkt, oder??)

  • Jetzt geht's. Hab den Container samt Image nochmal komplett gelöscht, dann beim neu Installieren gleich Netzwerk auf Bridge gestellt und eigene IP vergeben, die im normalen Hausnetz liegt.


    EDIT: Was mir auch noch nicht bewusst war: Prozesse, die innerhalb des Containers laufen (bei mir beispielsweise perl mit fhem) tauchen auch außerhalb auf.

    Einmal editiert, zuletzt von duke-f ()