ping.py - Portable Ping mit Python

Posted by : MOnsDaR | Montag, 15. Februar 2010 | Published in

HIER habe ich ja schon darüber berichtet, dass in unregelmäßigen Zeitabständen mein Heimnetz abraucht.
Um nun mal zu prüfen, zu welcher Uhrzeit und nach welcher Dauer das Netz verschwindet, wollte ich mit einem Tool zwischen 2 Hosts pingen und mitloggen, wann die Verbindung nicht mehr möglich ist.
Ich erhoffte an dem Ergebnis zu sehen, ob das Netz immer zur selben Uhrzeit ausfällt und dementsprechend mit dem 24h-Disconnect meines Providers zu tun hat.
Auch hätte es sein können, dass mein Router es nicht schafft, das Netz länger als 12 Stunden aufrecht zu erhalten. Diese Info wäre für Netgear sicherlich interessant gewesen.

Nun gibt es leider haufenweise Ping-Tools für Windows und Linux. Meistens sind sie hoffnungslos überfrachtet mit Funktionalität oder können nicht mehr als normale Pings ausführen (da gibt es doch Systemwerkzeuge?).

Da unsereins sowieso grad Python lernen wollte, habe ich mich also mal informiert, was die Sprache mir für Möglichkeiten bietet.
Scheinbar ist kein Ping()-Befehl mit an Bord, allerdings kann man sich bei G-Loaded ein Script herunterladen, dass es einem erlaubt, portabel zu Pingen.
Das Script an sich bietet eine Methode, die es erlaubt, einen Ping an eine bestimmte Adresse mit festgelegtem Timeout zu senden.
Auf Grund dieser Basis habe ich dann flux eine Main geschrieben, die alle 30 Sekunden einen Ping an meinen Medien-PC absetzt und einen Misserfolg in eine Datei loggt. Schon war mein Pinglogger fertig.

Für Interessierte habe ich das von mir geänderte Script bei PasteBin hochgeladen. Das Script beinhaltet die Funktionen aus dem Script von G-Loaded. Lediglich eine neue Main habe ich spendiert (ganz unten).


Das Ergebnis des Tests war leider etwas anders als erwartet:
Das Netz lief stabil ohne einen einzigen fehlgeleiteten Ping. Nach ca 72 Stunden habe ich den Versuch abgebrochen.
Nachdem ich das Ping-Programm ausgestellt habe, hat es übrigens keine 12 Stunden gebraucht, bis die Hosts sich wieder verloren haben.

Weiteres Vorgehen:
Der Netgear-Support ist verständigt, bisher wurde mir als Lösung vorgeschlagen, die MTU von 1500 auf die Werte 1430, 1468 und 1492 zu stellen.
Ein Test mit 1430 verlief negativ, die anderen Tests sind in Arbeit.

Ich habe das Gefühl, Netgear weiß selbst nicht, wo das Problem sein könnte.

(2) Comments

  1. Unknown said...

    Moin Nils, was kaufst du dir auch Netgear ;)

    Linksys, oder Fritzbox sind doch viel besser zu konfigurieren.

    Kannst du bei deinem Netgear nicht eine statische ARP Table anlegen?

    Grüße aus BT 14 :)

    16. Februar 2010 um 12:44
  2. MOnsDaR said...

    Werd ich mal testen nachher.
    Wider meiner Gewohnheiten hab ich bei der Anschaffung nicht groß verglichen, sondern einfach das günstigste Angebot genommen, dass meine Anforderungen erfüllt hat. Sieht man ja, was dabei herauskommt ;)

    Der WLAN-Stick der im Bundle dabei war, läuft im übrigen auch nur unter Windows XP 32bit, alles andere (64bit, Linux etc) geht in die Hose... Unter Win7 werden zumindest Treiber von nem andren Stick installiert, mit denen der Stick läuft...

    16. Februar 2010 um 13:32

Leave a Response