2014-02-13 101 views
0

我正在使用libpcap编写一个嗅探器程序。对于初学者,我提到了各种程序员在网上的教程如何使用Libpcap编写基本嗅探器程序..它只捕获来自以太网的数据包连接...使用libpcap捕获无线数据包

而我一直在寻找很多关于如何编写一个程序使用libpcap从WiFi连接捕获数据包....但我没有得到任何东西可以帮助我...

我需要在我的系统中进行一些设置以确保libpcap可以捕获数据包......因为方法pcap_lookupdev指向的默认设备是eth0

回答

1

您或者需要将Wi-Fi设备的名称(可能是wlan0)硬编码到您的程序中,或者给它一个UI选项(命令行标志等)以让用户指定要在其上捕获的设备交通。

系统中没有设置会更改由pcap_lookupdev()返回的设备。

Tcpdump和Wireshark/TShark /等。有一个-i命令行选项来指定要捕获的设备,Wireshark有一个GUI对话框以允许用户指定它。如果用户明确指定设备,则它们不依赖于pcap_lookupdev()

请注意,如果您使用Wi-Fi进行捕获,则默认情况下,您只会捕获进出机器的流量。如果要捕获网络上的所有流量,包括与其他机器之间的流量,则需要在监控模式下进行采集;新版本的libpcap有API支持,但它们只能保证在OS X上工作(由于各种复杂的原因,它们可能在Linux上不能工作,假设设备名称为eth0,我假设你正在使用;在修正之前,你需要使用诸如aircrack-ng之类的东西来打开监视器模式 - 有关这方面的信息,请参阅the WLAN capture setup page section on Linux in the Wireshark Wiki)。

+0

正常工作...非常感谢您的帮助 – user3143451

相关问题