# TCP/IP Verbindung loggen



## Senator42 (26 März 2020)

Hallo Forum,

gibt es irgendwo ein kleines Tool mit dem eine oder mehrere "Pings" loggen kann?

Unser OPC-Server hat nämlich ab und zu keine Verbindung zu den SPSn.

Was ich bräuchte ist wie:

Loop
  wait 5 Sek.
  Ping  IP-Adr A  - OK oder NOK ins LogFile  Datum
  Ping  IP-Adr B  - OK oder NOK ins LogFile  Datum
  Ping  IP-Adr C  - OK oder NOK ins LogFile  Datum

  Logfile älter als nn Tage löschen, oder Zippen

Goto Loop

(optional:  
  nur NOK loggen  J/N
  beim Progstart das erste OK loggen  J/N
  nach NOK das erste OK loggen  J/N
)

BG   [ bleibt gesund ]


----------



## Stanzman (27 März 2020)

Ich war vor ein paar Wochen bei Big$ in einem Netzwerklabor, in dem Netzwerkkonfigurationen für Kunden aufgebaut und getestet werden. Dort wird das Programm Multiping verwendet, um Ausfälle oder Rekonfigurationszeiten aufzuzeichnen. Ich wollte mich mit dem Programm selber befassen, aber bin noch nicht dazu gekommen. Laut Handbuch kann man die Pings auch in ein Logfile schreiben Handbuch (Log to File). Vielleicht hilft dir das Programm ja weiter, wenn du es ausprobieren solltest, wäre ich an den Erfahrungen damit interessiert.

MfG Stanzman


----------



## DeltaMikeAir (27 März 2020)

Wenn du Zeit hast, dann schicke ich dir Montag was ( BATCH Datei ). Komme jetzt nicht mehr an den PC.

Die Pingt eine Adresse an und schreibt in eine TEXT-Datei die Ergebnisse.


----------



## DeltaMikeAir (27 März 2020)

Alternativ hätte ich auch noch eine WinCC Flex Skriptlösung, welche Pingt und dann das Ergebniss auf eine Variable schreibt.

Aber jetzt mache ich Feierabend, bei Interesse einfach kurz schreiben.


----------



## Senator42 (28 März 2020)

Es hat Zeit und an den obigen 2 Varianten bin ich intressiert.


----------



## Blockmove (28 März 2020)

Multiping nutzt unsere IT auch.
Free Ping Tool wird auch noch genutzt.

Ansonsten haben wir bei den meisten unserer neuen Anlagen einfach ein gegenseitiges Lifesignal zur Verbindungsüberwachung.
Die SPS zählt im Sekundentakt eine INT hoch und die PC-Applikation schreibt den Wert in eine andere Variable zurück.
Aussagekräftiger als ein Ping. Wir hatten öfters den Fall, dass das Netzwerk i.O. war, aber der OPC-Server sich aufgehängt hat.
Keine Auffälligkeiten in den Logs von OPC und Applikation, aber Kommunikation stand.
Durch Vergleich der Variablen sieht man auch den Ausfallzeitpunkt.

Gruß
Blockmove


----------



## DeltaMikeAir (31 März 2020)

Hier mal eine BATCH Lösung, wenn man mal über Nacht eine Adresse dauerhaft prüfen möchte. Ist halt eine einfache Minimallösung,
im Texteditor kann man dann per Suche nach "Timeout" Fehler suchen.


```
:start
@echo off

echo.| time | find "Aktuell" >>Senator.txt
echo.| date | find "Aktuell" >>Senator.txt
ping 172.25.25.24 -n 30 >> Senator.txt
echo -------------------------------->> Senator.txt
GOTO start
```

Anhang anzeigen ping protokoll.zip


Hier noch meine WinCC flex Runtime Lösung. Ich starte das Skript auf einer Service Seite per Button und zeige dann dort den Status an
( Test läuft, Test fertig, Ping Test OK und Ping Test fehlgeschlagen )


```
' Variablen deklarieren
Dim WshShell, VerbOK, i
Set WshShell = CreateObject("WScript.Shell")

' Zu Beginn des Variablen vorbelegen
SmartTags("PingTestLaeuft") = True
SmartTags("PingTestErgebnisOK") = False
SmartTags("PingTestErgebnisNOK") = False
SmartTags("PingTestFertig") = False

' IP-Adresse anpingen ( 2 Versuche bis zum FAIL )
For i= 1 To 2
    VerbOK = Not CBool(WshShell.Run("ping -n 1 192.168.200.1",0,True))
    If VerbOK Then 
       Exit For
    End If
Next
    
' Uebergabe "Pingen war erfolgreich"
SmartTags("PingTestErgebnisOK") = VerbOK

' Uebergabe "Pingen war nicht erfolgreich
SmartTags("PingTestErgebnisNOK") = Not VerbOK

' Uebergabe "Pingtest nicht mehr aktiv"
SmartTags("PingTestFertig") = True
SmartTags("PingTestLaeuft") = False

Set WshShell = Nothing
```


----------

