Это работает:

tethereal -i eth0 -w /root/mycapture.pcap

но он захватывает каждый пакет. Мне нужно только захватить DNS-запросы. Это возможно? Сервер Linux.

Другое дело: возможно ли сохранить файл по сети на другом компьютере? На сервере только маленький жесткий диск, который недостаточно велик для файла захвата.

Благодарю.

1 ответ1

1

Укажите фильтр захвата, используя -f "port 53".

Примечание: теперь это tshark , а не tethereal .


Для локального захвата, но для сохранения данных на удаленном сервере, используйте - или /dev/stdout в качестве выходного файла и направьте команду в ssh:

tshark -i eth0 -f "port 53" -l -w - | ssh otherhost "cat > foo.pcap"

tcpdump -i eth0 -f "port 53" -l -w - | ssh otherhost "cat > foo.pcap"

Вы также можете сделать наоборот - захват на удаленном сервере, но хранить данные локально:

ssh otherhost "tshark -i eth0 -f "port 53" -l -w -" > foo.pcap

ssh otherhost "tcpdump -i eth0 -f "port 53" -l -w -" > foo.pcap

Примечание. Всегда указывайте фильтр захвата при хранении таких данных. Если вы этого не сделаете, каждый пакет будет вызывать бесконечный цикл.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .