WinPcap如何忽略自己的数据包?
当我通过 WinPcap 注入任何数据包时,它将立即被捕获。 我不想捕获数据包,女巫是我自己注入的。 最简单的方法是什么?
When I inject any packet via WinPcap it will be captured in this moment.
I dont want to capture packets, witch were injected myself.
What is the easiest way?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
最好的方法是使用 PCAP_OPENFLAG_NOCAPTURE_RPCAP 标志。
The best way is to use PCAP_OPENFLAG_NOCAPTURE_RPCAP flag..
您也许可以使用捕获过滤器 (pcap_setfilter()) 并根据数据包的源 MAC 地址过滤掉数据包。
但这可能并不完全是您想要的,因为 MAC 地址可能会被欺骗,您可能希望看到来自计算机上其他来源的传出数据包,等等。
我唯一能想到的就是计算每个数据包的哈希值发送的数据包,并丢弃任何捕获的具有相同哈希值的数据包。
一定有更好的方法……
You could perhaps use a capture filter (pcap_setfilter()) and filter out packets by their source MAC address.
That may not be exactly what you want though, because MAC addresses can be spoofed, you might want to see outgoing packets from other sources on your machine, etc.
The only other thing I can think of would be to compute a hash value of each packet you send, and discard any captured packet with the same hash value.
There's got to be a better way…