Netzwerktraffic capturen
Verfasst: Mittwoch 16. April 2008, 18:02
Hallo zusammen,
ich bin neu hier und würde mich freuen wenn mir jemand helfen könnte.
Python programmiere ich noch nicht so lange, aber ich möchte es lernen (was bisher auch recht gut klappt) und möchte ein Programm schreiben, welches in einem Netzwerk den Traffic captured. Wenn das klappt würde ich die Informationen gerne so auslesen um etwa zu gucken, welche Rechner alle in diesem Netzwerk sind und kommunizieren.
Doch nun erst mal zum Capturen. Das sollte ja eigentlich mit dem Modul pcapy und der open_live Funktion gehen, allerdings wird bei mir entweder nichts gelesen oder das Programm friert ein. (Was passiert ist abhängig davon ob ich eth0 oder eth1 als Device wähle, ausgeführt wird das Programm unter Linux auf Kommandozeile).
Hat da vllt jemand einen Tipp was ich falsch mache, bzw ob mein ganzer Ansatz evtl falsch ist?
Das Reader-Objekt, das mir die open_live Methode zurück gibt, müsste ich dann auslesen und die Informationen verarbeiten, richtig?
Eine andere Frage habe ich auch noch: Mit dem Modul urllib bspw kann man uA http-requests an eine Adresse schicken. Habe ich auch die möglichkeit, solche requests elementar zu verändern, so dass bei dem Server zB keine http-Anfrage sondern eine gttp-Anfrage ankommt? Der Sinn wäre, einen Server auf seine "Fehlerkonformität" zu testen, wenn bspw Bits in einer Anfrage nicht richtig übertragen werden. Diese falschen Anfragen möchte ich irgendwie simulieren.
Vielen Dank schon mal für Eure Hilfe.
Grüße
ich bin neu hier und würde mich freuen wenn mir jemand helfen könnte.
Python programmiere ich noch nicht so lange, aber ich möchte es lernen (was bisher auch recht gut klappt) und möchte ein Programm schreiben, welches in einem Netzwerk den Traffic captured. Wenn das klappt würde ich die Informationen gerne so auslesen um etwa zu gucken, welche Rechner alle in diesem Netzwerk sind und kommunizieren.
Doch nun erst mal zum Capturen. Das sollte ja eigentlich mit dem Modul pcapy und der open_live Funktion gehen, allerdings wird bei mir entweder nichts gelesen oder das Programm friert ein. (Was passiert ist abhängig davon ob ich eth0 oder eth1 als Device wähle, ausgeführt wird das Programm unter Linux auf Kommandozeile).
Hat da vllt jemand einen Tipp was ich falsch mache, bzw ob mein ganzer Ansatz evtl falsch ist?
Das Reader-Objekt, das mir die open_live Methode zurück gibt, müsste ich dann auslesen und die Informationen verarbeiten, richtig?
Eine andere Frage habe ich auch noch: Mit dem Modul urllib bspw kann man uA http-requests an eine Adresse schicken. Habe ich auch die möglichkeit, solche requests elementar zu verändern, so dass bei dem Server zB keine http-Anfrage sondern eine gttp-Anfrage ankommt? Der Sinn wäre, einen Server auf seine "Fehlerkonformität" zu testen, wenn bspw Bits in einer Anfrage nicht richtig übertragen werden. Diese falschen Anfragen möchte ich irgendwie simulieren.
Vielen Dank schon mal für Eure Hilfe.
Grüße