3

我想知道wireshark的功能。可以监听给定机器的所有端口上的流量的应用程序的设计是什么?这样的应用程序会产生什么样的偷听?编写监控流量的应用程序的好方法是什么?

谢谢

4

2 回答 2

1

一种方法是使用Windows 过滤平台(这适用于 Vista+,但类似的功能在 XP 中是可能的——WFP 只是让事情变得更容易)。WFP 允许您在驱动程序中侦听在数据包处理堆栈中的各个点调用您的代码的“标注”,以便您可以在数据移动时捕获、过滤甚至修改数据。

于 2010-10-15T03:28:28.680 回答
1

Wireshark 在 unix 平台上利用 libpcap,在 Windows 上利用其端口 WinPcap。这个库提供了一个 API 来捕获数据包(Wireshark 也能够捕获帧,但我在 pcap 文档中没有发现 pcap 能够做到这一点)。

库如何做到这一点是特定于平台的,这就是为什么使用库为您完成繁重工作的好方法;unix 上的 libpcap 或 tcpdump(取决于您需要它的低级别)和 Windows 上的 WinPcap 或 Windows 过滤平台。

文档: http ://www.tcpdump.org/pcap3_man.html http://www.winpcap.org/docs/docs_412/html/main.html

于 2010-12-18T10:57:47.647 回答