martink2002
Goto Top

Tool für Ping und dann Email

Liebe Netzwerker!

Ich bin auf der Suche nach einem Tool der einen weit entfernten Rechner "An- Pingt" und wenn eine Zeitüberschreitung vorliegt eine email sendet.

Vielleicht wisst Ihr ob es sowas gibt, wie es heisst und wo ich es finden kann.

Würde mich sehr drüber freuen wenn es so was schon fertig gibt.

Vielen Dank sag ich auf jedem Fall jetzt schon.

Content-Key: 72695

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

Ausgedruckt am: 29.03.2024 um 13:03 Uhr

Mitglied: TuXHunt3R
TuXHunt3R 04.11.2007 um 23:06:03 Uhr
Goto Top
Ein Tool, das beides macht, kenn ich nicht, aber du kannst ja eine kleine Batch machen, die das für dich erledigt, z.B. so was (nicht getestet):

@ echo off

ping <rechner> -n 1 | find /i "TTL"  
if not errorlevel 0 (
bmail -s <SMTP-Ausgangsserver> -t <deine Mailadresse> -f <deine Mailadresse> -b "<Rechner> ist nicht pingbar" -a "Pingbatch Errormessage"  
) else (
echo Alles i.o.!
)

Das Tool bmail.exe musst du noch herunterladen. Das Ding gibts bei Google und ist Freeware
Mitglied: martink2002
martink2002 05.11.2007 um 07:14:29 Uhr
Goto Top
Vielen lieben Dank!
Werd ich gleich mal testen und posten ob es gestimmt hat.
Mitglied: martink2002
martink2002 06.11.2007 um 19:15:31 Uhr
Goto Top
Hi TuXHunter,
nochmal vielen Dank für diene Hilfe.

Find ja die Batch datei sehr gut.
Aber leider komm ich einfach mit dem find befehl nicht weider. Da sieser ja nur scheinbar eine Datein durchsuchen kann und nicht die Bildschirmausgabe.

Vielleicht könntest du mir ja das helfen.
Ansonnst das mit dem bmail funktioniert super und ich glaub auch, dass die if else schleife geht!

LG
Martin
Mitglied: TuXHunt3R
TuXHunt3R 06.11.2007 um 19:54:15 Uhr
Goto Top
Ich weiss, in der Hilfe vom Find-Befehl steht, dass man damit nur Dateien durchsuchen kann. Dies stimmt nicht!

Der Find-Befehl macht hier folgendes: Er schaut nach, ob in der Ausgabe des Ping-Befehls irgendwo "TTL" steht. Wie du sicher weisst, sieht die Ausgabe eines erfolgreichen Ping-Befehls folgendermassen aus:
Reply from 192.168.1.42: bytes=32 time=1ms TTL=128

Folgende anderen Ausgaben kennt der Pingbefehl ausserdem noch:
Unknown Host <Gerätename>
Dieses wird dann ausgegeben, wenn er den Namen in eine IP-Adresse auflösen kann.

Request timed out
Dies wird dann ausgegeben, wenn die maximale Zeit überschritten wurde, in der der PC Antwort geben sollte.


Du siehst also, die Zeichenkette "TTL" findet er nur bei einem erfolgreichen Ping.
Wenn er nun diese Zeichenkette findet, d.h. wenn der Ping erfolgreich war, setzt er die Errorlevel-Variable auf 0. Wenn er die Zeichenkette "TTL" nicht findet, d.h. der Ping nicht erfolgreich war, setzt er die Errorlevel-Variable auf 1.

Mit dem If-Befehl wird nun die Errorlevel-Variable abgefragt. Wenn sie nicht 0 ist, wird ein Mail ausgelöst, wenn sie 0 ist, wird die Meldung "Alles i.o.!" ausgegeben.

Wie gesagt, das Script ist nicht getestet! Das musst du schnell selber machen, ist eine Sache von 2 Minuten.

Folgendermassen würde ich es testen:
  1. Setzt beim Pingbefehl einen Rechner ein, der garantiert pingbar ist. Wenn du nun die Meldung "Alles i.o.!" erhälst, funktioniert dieser Teil des Scripts
  2. Setz beim Pingbefehl einen erfundenen Rechner ein, der garantiert NICHT pingbar ist. Erhälst du daraufhin ein Mail, funktioniert auch dieser Teil des Scripts.


Grüsse aus der Schweiz

TuXHunT3R


Edit:

Der Parameter /i beim Find-Befehl sorgt dafür, dass nicht zwischen Gross- und Kleinschreibung unterschieden wird. Ich tue den aus Gewohnheit immer rein.
Mitglied: martink2002
martink2002 08.11.2007 um 21:00:26 Uhr
Goto Top
Vielen lieben Dank für deine Antwort.

Du hattest absolut recht mir dem find befehl.
Es funktioniert jetzt wunderbar.

Hab mir gedacht ich poste mal die Batch Datei.

@echo off
ping 192.168.1.1 -n 1 | find /I "TTL"
if errorlevel 1 (febootimail -FROM Email -TO Email -SMTP smtp.server -SUBJ "Testmail" -TEXT "Hallo dies ist eine Testmail!!!!!" -USER testuzser -PASS )
else (echo alles i.o)

Hab natürlich zuerst bmail genommen. Ist allersdings so ne sache mir der authentifizierung desshalb dann febootimail.

Nochmals Danke für deine Hilfe!

und ein Grüäzi in die Schweiz aus dem noch nicht verschneiten Österreich!