2016-06-08 20 views
0

Ich möchte Netzwerkverkehr vom Benutzerraum abfangen, also habe ich libpcap API s verwendet, um tcp/ip-Pakete zu erfassen. Momentan erfasse ich nur Informationen über den Paketkopf & Nutzdaten im registrierten Rückruf. Wie kann ich diesen Rückruf verwenden, um Datenverkehr zu blockieren oder ein Paket aufgrund bestimmter Bedingungen zu löschen? Oder ist der pcap-Mechanismus ein reiner Erfassungsmechanismus?libpcap Netzwerkverkehr Interception

Antwort

0

Sie können nicht. Wie Sie in Ihrer eigenen Frage gesagt haben libpcap kann nur verwendet werden, um den Verkehr durch eine Netzwerkschnittstelle zu überprüfen, kann es nicht verwendet werden, um diesen Verkehr in irgendeiner Weise zu beeinflussen.

+0

I.e., es * ist * ein reiner Erfassungsmechanismus. (Nun, spätere Versionen unterstützen auch die Paketeinfügung, aber es unterstützt * * nicht das Abfangen von Paketen in der Mitte des Netzwerkstapels und das Ändern oder Löschen von Paketen.) –

+0

dann was andere Bibliothek API kann ich verwenden, wo ich nicht nur die Verkehr aber auch ein Urteil über sie auf der Grundlage einiger Geschäftslogik. Ich möchte kein Kernelmodul verwenden, das möchte ich mit einer Userspace-Komponente erreichen. Ist die Verwendung von libnetfilter eine gute Option? – atish