Wireshark am Unifi will kein Modbus TCP lesen

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • schattenparker
    Dumb Home'r
    • 30.01.2024
    • 21

    #1

    Wireshark am Unifi will kein Modbus TCP lesen

    Hallo zusammen,
    ich versuche schon seit ein paar Stunden mit Wireshark mein Modbus TCP Verkehr aufzuzeichnen.

    Der Wechselrichter und Speicher hängen im einem Subnetz 192.168.133.xx. Der Miniserver in 192.168.20.xxx.
    In Loxone funktioniert die Kommunikation, da ich aber hin und wieder Probleme mit dem Daten habe, wollte ich mal in die Modbus TCP Kommunikation schauen.

    Egal ob ich den Laptop mit Wireshark in das x.x.133.xx oder das x.x.20.x hänge, er zeigt zwar Traffic an aber kein Protokoll Modbus. Ich stehe irgendwie auf dem schlauch

    Ich habe ja das Unifi Netzwerk etwas im verdacht aber bin mir da unsicher. Hat jemand eine idee und kann mich stupsen

    Gruß Paul
  • schurli
    Extension Master
    • 29.01.2019
    • 120

    #2
    ich bin jetzt weder ein Netzwerkspezialist noch kenne ich Wireshark, aber hilft das: https://www.youtube.com/watch?v=Ov5fJQBvDiQ ?

    Ich weiß auch nie wer beim TCP Modbus der Master und wer der Slave ist.

    Das zusätzliche Problem bei dir ist auch, dass die beiden in unterschiedlichen Subnets sind. Da muss dein Netzwerk halt so eingerichtet sein, dass auch dein PC auf dem du Wireshark laufen lässt auf beide Subnets zugreifen kann. Ich hab bei mir auch Unifi, da geht das, ich habe ein paar virtuelle LANs, aber das Konfigurieren des Zugreifens über die Subnets hinweg stößt bei mir schon an die Grenzen meines Könnens .... Habe z.B. die Intercoms in meinem IoT virtual LAN und meinen MS im Hauptsubnet). Die Konfiguration dass der MS auf die beiden Intercoms zugreifen kann finde ich nicht so einfach. Leider kann ich mich jetzt an Details nicht mehr erinnern.

    Kommentar

    • schattenparker
      Dumb Home'r
      • 30.01.2024
      • 21

      #3
      Hi schurli,
      in dem video macht er ja auf einem rechner Master und Client auf. Das wird ja kein Netzwerkverkehr gescannt.

      Komisch ist ja, das der MS das zu 99 % alles ohne Probleme macht aber in 1 % der Fälle stirbt die Verbindung. Vielleicht meldet sich noch jemand und hat eine Idee, wie ich WireShark konfigurieren muss...

      genauer gesagt versuche ich rauszubekommen warum der KACO Wechselrichter immer diese Meldunge schickt und nicht Antwortet:


      Klicke auf die Grafik für eine vergrößerte Ansicht

Name: image.png
Ansichten: 78
Größe: 45,4 KB
ID: 458847
      Zuletzt geändert von schattenparker; vor 6 Tagen.

      Kommentar


      • schurli
        schurli kommentierte
        Kommentar bearbeiten
        Generell kann ich zu Modbus TCP folgendes sagen. Ich habe 3 Modbus TCP Geräte (Wärmepumpe, PV Wechselrichter und Mikrowechseltrichter). Mein Sungrow Wechselrichter funktioniert im 10s Abfrageintervall problemlos ohne jegliche Fehler. Anders sieht das schon mit meiner IDM Wärmpepumpe aus. Dort hängt sich der Modbusserver der WP gerne auf, daher musste ich das Abfrageintervall auf 60s erhöhen, jetzt passiert das alle paar Monate ein Mal, aber der Modbusserver startet dann scheinbar neu und alles geht wieder nach einigen Minuten. Anders bei meiner Hoymiles DTU. Der Modbusserver stürzt mehrmals am Tag ab, startet aber nicht selber und muss kompliziert zwangsgebootet werden. Laut Aussage Hoymiles will die DTU keine häufigen Anfragen und benötigt Mindestabstände zwischen Abfragen. Aber auch wenn ich das Abfrageintervall auf 60s erhöhe, passiert es.

        Was ich sagen will ist, dass TCP Modbus Server sehr sensible sein können und gerne aussetzen wenn zu häufig Abfragen kommen. Du kannst versuchen das Abfrageintervall deutlich zu erhöhen und schauen ob es sich verbessert? Oder kannst du mit den Aussetzern leben?

      • schurli
        schurli kommentierte
        Kommentar bearbeiten
        andere berichten ein ähnliches Problem nach einem MS Update. https://www.loxforum.com/forum/germa...e-auf-15-5-3-4
    • Houseruckiii
      Smart Home'r
      • 31.10.2016
      • 65

      #4
      Wenn der Laptop als drittes/zusätzliches Gerät zu Master+Slave hinzukommt dann muss wohl an der Netzwerkhardware (Switch/Router) der Traffic zw. Master+Slave gespiegelt werden (zum Laptop hin). Also Port Mirror oder ähnliches nötig.

      Kommentar

      • Jan W.
        Lox Guru
        • 30.08.2015
        • 1394

        #5
        Wie im vorherigen Beitrag bereits erwähnt, muss eine Portspiegelung eingerichtet werden, siehe z.B. hier. Die Kommunikation zwischen MS und Modbus Gerät erfolgt via Unicast, d.h. andere Geräte im Netz sehen die Kommunikation nicht. Der Switch erkennt die angeschlossenen MAC-Adressen an den Ports und sendet die Pakete nur an den Port, wo sich die MAC- und damit auch IP-Adresse des Ziels befindet.

        Ein paar Infos zu Wireshark habe ich hier dokumentiert.

        Miniserver v14.5.12.7, 2x Ext., 2x Relay Ext., 2x Dimmer Ext., DMX Ext., 1-Wire Ext., Gira KNX Tastsensor 3 Komfort, Gira KNX Präsenzmelder, Fenster- und Türkontakte, Loxone Regen- und Windsensor, Gira Dual Q Rauchmelder vernetzt, 1x Relais-Modul
        Loxberry: SmartMeter, MS Backup, CamConnect, Weather4Lox
        Lüftung: Helios KWL EC 370W ET mit Modbus TCP - via Pico-C
        Heizung: Stiebel Eltron WPF 5 cool (Sole-Wasser WP) mit ISG, FB-Heizung mit 18 Kreisen, Erdsonde - via modbus/TCP
        Node-RED: IKEA Tradfri

        Kommentar

        • schattenparker
          Dumb Home'r
          • 30.01.2024
          • 21

          #6
          Guten Abend,
          erst einmal danke Nach dem port mirror ging es wunder

          Leider bin ich daber noch nicht wirklich weiter. Der WR und Speicher kommunizieren schon sehr viel aber alle Anfragen an Speicher werden relativ schnell beantwortet. Die Abfragen an den WR haben teilweise Antwortzeiten von 18 Sekunden

          Jemand eine Idee, wie ich da jetzt am besten weiter Fehlersuche betreiben sollte?!

          Angehängte Dateien

          Kommentar


          • schurli
            schurli kommentierte
            Kommentar bearbeiten
            Modbus Abfrageinterval erhöhen

          • Jan W.
            Jan W. kommentierte
            Kommentar bearbeiten
            18 Sekunden sind schon ziemlich krass, denn das Intervall kann bzw. sollte nicht kleiner sein, als das Timeout. Wenn Du den WR nur z.B. alle 30 Sekunden abfragen kannst, dann wird der Energieflussmonitor nicht allzu genau sein und eine Last, wie z.B. E-Auto würde noch knapp 30 Sekunden laden, wenn eine Wolke kommt und der PV-Ertrag deutlich reduziert ist. Ich würde aber genau schauen, ob diese lange Antwortzeit bei allen Parametern auftritt oder nur bei wenigen unwichtigeren. Ansonsten würde ich zumindest für alle unwichtigen Parameter das Abfrageintervall deutlich erhöhen.

          • Jan W.
            Jan W. kommentierte
            Kommentar bearbeiten
            Du kannst auch ein Filter mit "modbus.response_time >10" verwenden, um nur die Antworten zu sehen, wo die Antwort mehr als 10 sekunden gebraucht hat. Mit dem Filter siehst Du aber nicht, ob es auch unbeantwortete Requests gibt.

            Du solltest mit Wireshark aber auch die o.a. Exceptions sehen können.
        • schattenparker
          Dumb Home'r
          • 30.01.2024
          • 21

          #7
          Ich habe als abfrageintervall in Loxone 10s und als timeout 1000ms. Hatte gestern auch schon mal das Intervall auf 5s gestellt. Ist grundsätzlich egal, es gibt immer wieder unbeantwortet request. Ich frage ja auch nur zwei Werte ab. Ansonsten quatschen der Speicher (Varta) und der WR aber sehr viel. Da kann man ohne Service Passwort nur nichts einstellen 🤨

          Kommentar

          Lädt...