数据包嗅探器和内核旁路

时间:2015-05-13 21:46:12

标签: kernel packet sniffer

数据包嗅探器软件是否实现为内核旁路。如果是这样,它是如何(API)在linux和Windows上完成的?

或者数据包嗅探器实际上是否依赖内核与NIC通信并将其置于混杂模式。如果是这样,那么什么是API lin linux和windows

1 个答案:

答案 0 :(得分:0)

  

数据包嗅探器实际上依赖于内核与NIC通信并将其置于混杂模式

至少对于免费软件包嗅探器,是的,确实如此。 (Windows上的一些商业嗅探器可能提供自己的驱动程序,至少对于Wi-Fi适配器,并绕过这些适配器的网络堆栈。)

  

如果是这样,那么什么是API lin linux和windows

Linux:PF_PACKET sockets

Windows:没有任何好的API,例如,WinPcap必须提供使用its own kernel-mode driver内核接口的NDIS

或者你可以在Windows *上的UN * X(Linux,* BSD,OS X,AIX,Solaris,HP-UX等)和libpcap上使用WinPcap,并让它使用您正在使用的操作系统上的相应捕获机制及其编程接口(请参阅libpcap源中的pcap-linux.c - 例如,使用某些Linux API有点复杂。)