【发布时间】:2016-06-14 04:09:53
【问题描述】:
根据this,wireshark 能够在数据包被丢弃之前获取数据包(因此我无法自己获取此类数据包)。而且我仍然想知道 linux 内核中wireshark 获取数据包的确切位置。
答案是“在 UN*Xes 上,它使用 libpcap,而在 Linux 上,它使用 AF_PACKET 套接字。”有没有人有更具体的例子来使用“AF_PACKET 套接字”?如果我正确理解wireshark,网络接口卡(NIC)将复制所有传入的数据包并将其发送到用户定义的过滤器(伯克利数据包过滤器)。但这是在哪里发生的?还是我的理解有误,我在这里错过了什么?
提前致谢!
【问题讨论】:
标签: linux networking linux-kernel wireshark