Описание функций, которые помогут вам фильтровать и организовывать информацию, возвращаемую tcpdump.
Фильтры на основе флагов TCP
Можно фильтровать TCP-трафик на основе различных флагов tcp. Вот пример фильтрации на основе флага tcp-ack.
1 | tcpdump -i any "tcp[tcpflags] & tcp-ack !=0" -c3 |
Форматирование
tcpdump также может настраивать форматы вывода, используя -X для hex или -A для ASCII.
1 | tcpdump -i any -c4 -X |
С опцией -A отображается ASCII.
1 | tcpdump -i any -c4 -A |
Опции для дополнительной многословности
В некоторых программах Linux иногда полезно иметь более подробный вывод. tcpdump использует опции -v, -vv или -vvv для обеспечения различных уровней подробности. Ниже приведены примеры от отсутствия многословности до трех уровней многословности.
Многословность по умолчанию:
1 | tcpdump -i any -c1 |
Используя опцию -v:
1 | tcpdump -i any -c1 -v |
Вот опция -vv:
1 | tcpdump -i any -c1 -vv |
Наконец, отобразите самый высокий уровень детализации с помощью опции -vvv:
1 | tcpdump -i any -c1 -vvv |
Фильтр по протоколу
Вы можете использовать имена протоколов для фильтрации пакетов по определенному протоколу.
В этом примере команда фильтрует по UDP:
1 | tcpdump udp -i eth0 -c2 |
В этом случае фильтр отображает данные TCP:
1 | tcpdump tcp -i eth0 -c2 |
Низкая многословность вывода
Если вам нужна противоположность многословности, используйте -q, чтобы обеспечить более тихий вывод (низкая многословность).
1 | tcpdump tcp -i eth0 -c2 -q |
Параметры временных меток
Некоторые из распространенных опций для печати временных меток можно использовать:
Удалить временные метки
Опция -t удаляет временные метки.
1 | tcpdump tcp -i eth0 -c2 -t |
Разница между последовательными пакетами
Опция -ttt показывает разницу между пакетами. Эта информация используется для выявления скачков/замедлений в пакетах.
1 | tcpdump tcp -i eth0 -c2 -ttt |