“tcpdump” для получения последних пакетов

Вы могли создать обертку в ударе, перенаправить вывод, ожидают в файл, анализируют файл и устанавливают переменные. Или изменения этого.

mark5:~/test# cat test.xp
send "bla\n"
mark5:~/test# expect test.xp
bla
mark5:~/test# expect test.xp > test.out
mark5:~/test# cat test.out
bla
mark5:~/test# #now parse test.out
2
21.06.2014, 08:27
2 ответа

Хорошо, кажется, я нашел решение :

sudo tcpdump -XX -i eth0 -w tcpamir-%s.txt -G 10 port 3050

Это вращает Ваш выходной файл каждые 10 секунд в новый файл под названием tcpamir-. txt

Вы также можете изменить выходной файл, поэтому он перезаписывается каждый день, если вас беспокоит размер файла. Для дополнительной информации читайте man 3 strftime.

Я думаю о чем-то вроде

sudo tcpdump -XX -i eth0 -w tcpamir-%R.txt -G 86400

Где %R дает время в 24-часовой нотации (например, 12:40).

Читайте соответствующие выходные файлы с помощью

sudo tcpdump -r tcpamir-<unixtimestamp>.txt

Второе решение:

Разделите его на несколько команд и сохраните как скрипт/функцию:

sudo tcpdump -XX -i eth0 port 3050 >> tcptmp.txt
sudo tail -n100 tcptmp.txt >> tcpamir.txt
sudo rm tcptmp.txt
2
27.01.2020, 22:13

Если вы хотите записать весь захваченный трафик, вам нужно только добавить -w к строке удаления '| tail >> tcpamir.txt'

# tcpdump -XX -i eth0 port 3050 -w tcpamir.cap

Если вы анализируете захват в wireshark, то расширение должно быть .cap Когда вы убедитесь, что захват сделан, вы можете убить его с помощью ctrl + c

NOTE: -w [filename.cap], чтобы записать захват в файл

0
27.01.2020, 22:13

Теги

Похожие вопросы