IP pingen und Erreichbarkeit mitloggen

-kuwi-
Goto Top
Hallo!

Wir haben hier in der Firma einen neuen DSL-Business-Zugang, bei dem alle paar Stunden für ein paar Minuten die Leitung zusammenbricht (Sync-LED rot).

Tölökom weiß bescheid, war auch schon 2mal hier - findet aber nichts.. face-sad
Kommende Woche bekomme ich die komplette DSL-Hardware neu, um einen Hardwarefehler auszuschließen.

Ich möchte nun ein kl. Batch-Script schreiben, das alle 5 sek einen Ping an eine bekannte Internetadresse (z.B. www.telekom.de) rausschickt. Bleibt nun der Ping aus, soll in ein Logfile geschrieben werden "24.02.2008 12:30Uhr -> Host antwortet nicht".
Das pingen läuft aber trotzdem im 5sek-Takt weiter. Kommt nun wieder eine Antwort, soll dies wieder im Logfile hinterlegt werden "24.12.2008 12:33Uhr -> Host wieder erreichbar"

Dieses Script würde ich dann ein paar Tage laufen lassen - evtl. kann man ja daraus (mit Unterstützung der Telekom) einen Zusammenhang feststellen..?!?

Ich habe bereits vergeblich versucht, ein derartiges Script zu schreiben.
Mein Problem: Wie schaffe ich es, dass nur die Änderungen im Logfile stehen (d.h. wenn der Ping fehlschlägt und wenn er wieder funktioniert..)

Danke schomal im Vorraus für Eure Unterstützung!
face-smile

Gruß,
-kuwi-

Content-Key: 81496

Url: https://administrator.de/contentid/81496

Ausgedruckt am: 18.08.2022 um 03:08 Uhr

Mitglied: miniversum
miniversum 24.02.2008 um 12:49:22 Uhr
Goto Top
Versuchs mal damit:
@echo off
:start
ping -n 1 www.google.de>NUL && echo %date% %time%: Host wieder erreichbar>>"Logfile.txt"
ping -n 4 localhost>NUL & REM Warte 4 Sekunden
goto:start

miniversum
Mitglied: -kuwi-
-kuwi- 24.02.2008 um 13:43:28 Uhr
Goto Top
Hab nun doch noch mein Script zum laufen gebracht:


@echo off

rem 81.91.170.12 = www.denic.de

set status=nok

:REPEAT
ping -n 6 127.0.0.1 >NUL
if /I %status% EQU nok goto NOK

:OK
ping -n 1 81.91.170.12 | findstr /C:"Verloren = 0" >NUL && goto REPEAT
set status=nok
echo %date% - %time% Host nicht erreichbar>>"log.txt"
echo %date% - %time% Host nicht erreichbar
goto REPEAT


:NOK
ping -n 1 81.91.170.12 | findstr /C:"Verloren = 1" >NUL && goto REPEAT
set status=ok
echo %date% - %time% Host erreichbar>>"log.txt"
echo.>>"log.txt"
echo %date% - %time% Host erreichbar
echo.
goto REPEAT