Zuviel Werbung? - > Hier kostenlos beim SPS-Forum registrieren

Seite 2 von 27 ErsteErste 123412 ... LetzteLetzte
Ergebnis 11 bis 20 von 262

Thema: Wireshark Plugin für S7-Protokoll

  1. #11
    Avatar von Thomas_v2.1
    Thomas_v2.1 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    29.03.2004
    Beiträge
    5.086
    Danke
    128
    Erhielt 1.481 Danke für 1.090 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Ich habe mal versucht in die Userdata-Telegramme eine Struktur "hineinzuinterpretieren".
    Gerade diese Telegramme sind eigentlich recht interessant weil hierüber die ganzen PG-Funktionen abgewickelt werden.

    Ein Request hat immer 8 Bytes Parameter-Länge, ein Response immer 12 Bytes Parameter-Länge.
    Meine Beschreibung wäre soweit:
    Code:
    00 01 12 xx 1x xy xx xx .. .. .. ..
     |  |  |  |  |  |  |  |  |  |  |  |
     |  |  |  |  |  |  |  |  Sind immer Null, nur bei 12 Byte Telegrammen vorhanden
     |  |  |  |  |  |  |  xx -> Subnummer, oder fortlaufende Numerierung der Pakete?
     |  |  |  |  |  |  xx -> Sub-Funktionsnummer (abhängig von Funktionsgruppe)
     |  |  |  |  |  x=0 Folgetelegramm?, x=4 -> Request, x=8 -> Response, anscheinend immer
     |  |  |  |  |  y= Funktionsgruppe? 1=Programmier Kommandos (Force/Erase), 3=Block Funktionen, 4=SZL-Kommandos
     |  |  |  |  |  5=Security? (CPU-Passwort), 7=Zeit Funktionen,
     |  |  |  |  x=1-> Request, x=2 -> Response, außer bei Programmer commands
     |  |  |  Länge der folgenden restlichen Parameter (4 oder 8)
     |  |  Konstant 12
     |  Konstant 01
     Konstant 00
    Eigentlich sieht diese Unterteilung in Funktionsgruppen und Unterfunktionen ganz schlüssig aus, kann aber auch sein dass sich die Siemensianer was ganz anderes dabei gedacht haben.

    Ich habe das in das plugin schon soweit integriert, im Anhang ein Screenshot wie das dann aussehen würde.
    Angehängte Grafiken Angehängte Grafiken

  2. #12
    Avatar von Thomas_v2.1
    Thomas_v2.1 ist offline Erfahrener Benutzer
    Themenstarter
    Registriert seit
    29.03.2004
    Beiträge
    5.086
    Danke
    128
    Erhielt 1.481 Danke für 1.090 Beiträge

    Standard

    In der angehängten Version werden noch mehr Daten aufgeschlüsselt, wie z.B. SZL Anfragen, Block Informationen, CPU Befehle und Uhrzeit stellen/lesen.

    Viele Stellen sind zwar weiterhin unklar, aber das meiste was ich von PG aus an Befehlen machen konnte wird zumindest ohne Fehler aufgelistet.
    Die Info-Zeile ist bei manchen Funktionen jetzt etwas lang geworden, aber Breitbild ist ja in Mode.

    Was mir seltsam vorkommt, dass es so viele verschiedene Formate in dem Protokoll gibt.
    Mal wird eine Blocknummer als ASCII, mal als Word übertragen. Dann gibt es mindestens zwei verschiedene Arten einen Zeitstempel zu übertragen. Warum man sowas macht ist mir schleierhaft. Oder das sind noch Leichen aus alten S5-Zeiten.
    Angehängte Dateien Angehängte Dateien

  3. Folgende 3 Benutzer sagen Danke zu Thomas_v2.1 für den nützlichen Beitrag:

    cboerm (16.02.2010),Johannes F (10.12.2009),snuz (18.10.2013)

  4. #13
    Registriert seit
    16.02.2010
    Beiträge
    58
    Danke
    6
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Ich habe das Plugin angewendet, alles läuft super.
    Beim analysieren der Daten ist mir ein Problem aufgetreten.
    Ich habe laufend Anforderungen (Request) und Antworten (Response) die Wireshark aufzeichnet. In der Anforderung steht immer z.B. (DB2.DBX12.0 BYTE120). In den Antworten steht das aber nicht mehr. Woher weiß ich, welche der vielen Antworten zu einer bestimmten Anforderung gehört? Ich hoffe jemand kann mir helfen!!

  5. #14
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.174
    Danke
    615
    Erhielt 934 Danke für 754 Beiträge

    Standard

    Einfach nach der passenden sequence number schauen.
    Rainer Hönle
    DELTALOGIC GmbH

    Ein Computer kann das menschliche Gehirn nicht ersetzen. Engstirnigkeit kann unmöglich simuliert werden. (Gerd W. Heyse)

  6. #15
    Registriert seit
    16.02.2010
    Beiträge
    58
    Danke
    6
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Die sequence number ist bei mir aber immer eins oder null. Gibt es da noch eine andere Möglichkeit?

    Im Anhang befindet sich die Wiresharkdatei. In dem Filter muss man folgendes eingeben:
    ip.addr == 192.168.157.192 && s7comm

    Vorraussetzung ist natürlich, das man das S7-Plugin installiert hat.
    Angehängte Dateien Angehängte Dateien

  7. #16
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.174
    Danke
    615
    Erhielt 934 Danke für 754 Beiträge

    Standard

    Wie es aussieht, sind nie mehr als zwei Pakete unterwegs. Diese haben dann unterschiedliche sequence numbers. Das Response-Paket mit 0 gehört immer zum vorigen Request mit 0, das Response-Paket mit 1 gehört immer zum vorigen Request mit 1. Die Zuordnung ist somit eindeutig.
    Nur ne Frage am Rande: welche Software kommuniziert da? Wie sieht der Connection Request / Connection Confirm aus?
    Rainer Hönle
    DELTALOGIC GmbH

    Ein Computer kann das menschliche Gehirn nicht ersetzen. Engstirnigkeit kann unmöglich simuliert werden. (Gerd W. Heyse)

  8. #17
    Registriert seit
    16.02.2010
    Beiträge
    58
    Danke
    6
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Danke für deine Hilfe.

    Zu deiner Frage, die Kommunikation findet zwischen einer SPS (192.168.157.192) und einer über eine VMWare (192.168.157.245) laufende Visualisierung (Wonderware) statt.

  9. #18
    Registriert seit
    16.02.2010
    Beiträge
    58
    Danke
    6
    Erhielt 3 Danke für 3 Beiträge

    Standard

    Ich habe nach dem ich weiß, welche Anfrage zu welcher Antwort gehört,noch eine Frage.

    Und zwar ist es möglich aus der Antwort (Response) den Ursprung der Daten zu erkennen?

    Bsp.ie Anfrage möchte Daten aus dem DB2.DBX 222.0 Byte 202 haben. Es folgt eine Antwort mit den angeforderten Daten. Kann man hieraus erkennen, aus welchem DB(Quelle) die Daten geschickt wurden?

  10. #19
    Registriert seit
    27.10.2005
    Ort
    Schwäbisch Gmünd
    Beiträge
    5.174
    Danke
    615
    Erhielt 934 Danke für 754 Beiträge

    Standard

    Nein, das sieht man nur aus der Anfrage.
    Rainer Hönle
    DELTALOGIC GmbH

    Ein Computer kann das menschliche Gehirn nicht ersetzen. Engstirnigkeit kann unmöglich simuliert werden. (Gerd W. Heyse)

  11. #20
    Registriert seit
    24.02.2010
    Beiträge
    25
    Danke
    4
    Erhielt 0 Danke für 0 Beiträge

    Standard


    Zuviel Werbung?
    -> Hier kostenlos registrieren
    Tolle Sache! Ich habe auf der Arbeit allerdings nur Ethereal.. morgen mal gucken obs damit auch geht..

    Mal grundsätzlichen Fragen:
    Wenn ich alles richtig verstehe nutzen Programme wie z.B. Libnodave ein geheimes Siemens Protokoll? Ich dachte den Aufbau ISO on TCP (RFC 1006) Telegrammen kann man offen nachlesen? Ich vertehe das nicht so ganz...

    Also wie läuft die Kommunikation zw. Libnodave und SPS genau ab? Ist das ähnlich wie TCPIP über Handshake usw?

Ähnliche Themen

  1. Wireshark Auszüge von Onlinebeobachtungen
    Von Jochen Kühner im Forum Simatic
    Antworten: 40
    Letzter Beitrag: 25.01.2011, 15:44
  2. Wireshark 1.2.0 ohne AMS.ADS?
    Von Neals im Forum CODESYS und IEC61131
    Antworten: 3
    Letzter Beitrag: 08.07.2009, 21:29
  3. Wireshark als Sender
    Von Tapio Bearking im Forum PC- und Netzwerktechnik
    Antworten: 2
    Letzter Beitrag: 08.07.2008, 11:47
  4. AK- Protokoll
    Von borromeus im Forum Simatic
    Antworten: 0
    Letzter Beitrag: 27.02.2007, 17:30
  5. S7-Protokoll 2
    Von Zapot im Forum Feldbusse
    Antworten: 1
    Letzter Beitrag: 21.08.2006, 09:37

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •