【问题标题】:tcpdump on monitor-mode interface - nothing captured监控模式接口上的 tcpdump - 未捕获任何内容
【发布时间】:2011-07-31 21:46:25
【问题描述】:

我一直在使用 tcpdump(版本 4.1.1)尝试从由airmon-ng 设置的monitor mode 接口捕获无线帧。我说“尝试”是因为到目前为止还没有发生任何事情。这很奇怪:

tcpdump -i mon0

上面的命令工作正常。我看到所有的信标和探测请求以及可以想象的所有其他帧都显示在我的屏幕上。但是,当我尝试使用

将输出写入捕获文件时

tcpdump -i mon0 -w captures.cap

绝对没有被捕获,包括包含实际数据的第 3 层数据包。当我杀死 tcpdump 时,它给了我

13507 packets captured
13507 packets received by filter
0 packets dropped by kernel

(在这种情况下,13507 是一个任意数字)和一个完全空的捕获文件。

但是,当我在同一界面上使用 tshark 或 wireshark 执行捕获时,帧被捕获到文件中没有任何问题。

我更喜欢使用 tcpdump 而不是 wireshark,因为它没有 GUI 的开销,并且它具有“-z”选项,允许我获取捕获文件并将其传递给复制它的 shell 脚本到我网络上的另一台计算机。 tshark 或 wireshark 没有类似的功能,我非常想避免编写程序来检查捕获文件是否存在。

我是否对 tcpdump 的工作方式存在根本性的误解,或者这里肯定发生了一些奇怪的事情?是否有更好的方法来做我正在做的事情,或者我将不得不编写自己的基于 libpcap 的捕获程序?

【问题讨论】:

    标签: linux wireless wireshark libpcap tcpdump


    【解决方案1】:

    实际上似乎出了点问题。在我的 Ubuntu 上,以下效果很好。

    sudo tcpdump -w ./test.cap
    

    也许你可以试试

    sudo tcpdump -U -w ./test.cap
    

    日本

    【讨论】:

    • 您没有指定接口。您确定从 mon0 获取数据吗?
    • 抱歉,3 年后,不,我不确定。
    【解决方案2】:

    您尝试过 airodump-ng 吗?

    不确定它是否使用 libpcap 作为捕获库,但它使用 pcap 文件格式并且有许多用于通道选择、bssid 过滤等的选项。

    【讨论】:

      猜你喜欢
      • 2023-03-23
      • 1970-01-01
      • 2015-07-24
      • 2011-01-12
      • 1970-01-01
      • 2013-05-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多