Ich möchte Datenpakete (.pcap) auf Paketebene während einer Woche in Android erhalten (in mehreren Dateien, wenn möglich).24/7 Paketerfassung in Android mit tcpdump
Ich dachte, dass ich tcpdump über Shark verwenden könnte, aber ich finde, dass die Erfassung nach einiger Zeit stoppt. Die größte Paketerfassung, die ich bekommen habe, ist ungefähr 40 MB. Ich habe herausgefunden, dass tcpdump stoppt/abstürzt, wenn die Netzwerkschnittstelle geändert wird. Zum Beispiel, wenn das Telefon mit 3G verbunden ist, wenn ich tcpdump von Shark laufen lasse, kann ich den Prozess von tcpdump laufen sehen, bis ich WiFi einschalte.
Im Galaxy S2, wenn ich über WiFi verbunden bin, habe ich die folgenden Schnittstellen (erhalten mit netcfg in adb-Shell): lo, svnet0, usb0, sit0, eth0. Wenn ich über 3G verbinde, bekomme ich pdp0 statt eth0.
Gibt es eine Möglichkeit, dass ich tcpdump 24/7 laufen lassen kann? Oder eine Möglichkeit, zu überprüfen, wann es ausgeführt wird und ob es gestoppt wird, damit es erneut von einer Java-App ausgeführt wird? Überprüfen Sie den Prozess von tcpdump oder so etwas vielleicht? Oder den Status des Netzwerks überwachen und tcpdump jedes Mal ausführen, wenn das Netzwerk geändert wird?
Ich habe mich angesehen: ReadLine on TCPDump-Buffer sometimes blocks until kill tcpdump, aber es löst nicht vollständig mein Problem.
Ich verwende verwurzelte Geräte.
Danke! Jedoch sollte ich alle Telefone aktualisieren, die ich benutze, und für einige von ihnen ist unmöglich, das Update zu erhalten (das Original vom Operator). Gut zu wissen, dass ich das in Android OS 4.0 machen kann. – Ekhi