tcpdump на интерфейсе режима монитора - ничего не записано - PullRequest
5 голосов
/ 07 апреля 2011

Я использую tcpdump (версия 4.1.1) для попытки для захвата беспроводных кадров из режима монитора интерфейса, настроенного airmon-ng, Я говорю «попытка», потому что пока ничего не происходит. Это очень странно:

tcpdump -i mon0

Приведенная выше команда работает нормально. Я вижу все маяки и зондирующие запросы, а также все возможные кадры, отображаемые на моем экране. Однако, когда я пытаюсь записать вывод в файл захвата, используя

tcpdump -i mon0 -w captures.cap

абсолютно ничего захватывается, включая пакеты уровня 3, которые содержат фактические данные . Когда я убиваю tcpdump, это дает мне

13507 packets captured<br> 13507 packets received by filter<br> 0 packets dropped by kernel

(в данном случае 13507 - произвольное число) и совершенно пустой файл захвата.

Однако, когда я выполняю захват с помощью tshark или wireshark на том же интерфейсе, кадры записываются в файлы без каких-либо проблем.

Я бы предпочел использовать tcpdump вместо wireshark, поскольку он не имеет накладных расходов графического интерфейса и имеет опцию "-z", которая позволяет мне взять файл захвата и передать его в сценарий оболочки, который копирует его на другой компьютер в моей сети. С tshark или wireshark нет аналогичных функций, и я бы очень хотел избежать написания программы для проверки наличия файла захвата.

У меня есть фундаментальное недоразумение о том, как работает tcpdump, или здесь определенно что-то происходит? Возможно, есть лучший способ сделать то, что я делаю, или мне придется написать свою собственную программу захвата на основе libpcap?

Ответы [ 2 ]

3 голосов
/ 22 мая 2011

Вы пробовали airodump-ng?

Не уверен, что он использует libpcap в качестве библиотеки захвата, но использует формат файла pcap и имеет много опций для выбора канала, фильтрации bssid и т. Д.

2 голосов
/ 08 апреля 2011

Похоже, что-то не так.На моем Ubuntu хорошо работает следующее.

sudo tcpdump -w ./test.cap

Возможно, вы можете попробовать

sudo tcpdump -U -w ./test.cap

JP

...