2

可能重复:
如何以编程方式从被动嗅探中收集数据包?

我有兴趣弄清楚如何编写像wireshark这样的程序。该程序应该能够在不中断网络流量的情况下侦听任何端口。

确切的编程语言不如操作系统原理本身有趣,所以假设 C++ 或 Python 都可以正常工作。

您将如何在 Windows 上执行此操作?在 Linux 上?

谢谢!

4

2 回答 2

2

在 Linux 上使用libpcap,在 Windows 上使用它的 windows 端口winpcap

由于您使用 python 标记了问题 libpcap有 python 绑定 ( pylibpcap )。

于 2012-07-11T19:30:02.667 回答
1

在 Windows 上,您可能需要查看 WinPcap(有据可查的数据包捕获库)。您可能也有兴趣filter driver为您的网络适配器开发一个以捕获网络流量。

参考: http: //www.winpcap.org/

在 Linux 上(尤其是 Python),您可以查看套接字库。它允许您打开一个INET套接字并嗅探您指定的端口。

参考http ://docs.python.org/library/socket.html

享受和好运!

于 2012-07-11T19:29:55.733 回答