Lorsque j'injecte un paquet via WinPcap, il sera capturé à ce moment. Je ne veux pas capturer des paquets, qui ont été injectés moi-même. Quel est le moyen le plus simple?Comment ignorer ses propres paquets par WinPcap?
Répondre
La meilleure façon est d'utiliser PCAP_OPENFLAG_NOCAPTURE_RPCAP drapeau ..
L'équivalent de capture local est 'PCAP_OPENFLAG_NOCAPTURE_LOCAL' – Gerhard
Vous pourriez peut-être utiliser un filtre de capture (pcap_setfilter()) et filtrer les paquets par leur adresse MAC source.
Cela peut ne pas être exactement ce que vous voulez bien, car les adresses MAC peuvent être usurpées, vous pouvez voir les paquets sortants provenant d'autres sources sur votre machine, etc.
La seule autre chose que je peux penser serait être de calculer une valeur de hachage de chaque paquet que vous envoyez, et rejeter tout paquet capturé avec la même valeur de hachage.
Il doit y avoir une meilleure façon ...
... Résolu En savoir plus sur drapeau PCAP_OPENFLAG_NOCAPTURE_RPCAP ... – k06a
Et somme CRC32 ... – k06a