ключ | описание |
---|---|
-a | Преобразовывает сетевые и широковещательные адреса в доменные имена. |
-e | Отображает данные канального уровня (MAC-адрес, протокол, длина пакета). Помимо IP-адресов будут отображаться MAC-адреса компьютеров. |
-F файл | Использовать фильтр, находящийся в файле. Если вы используете этот параметр, фильтр из командной строки будет игнорироваться. |
-i | Указывает на то, какой сетевой интерфейс будет использоваться для захвата пакетов. По умолчанию — eth0, для выбора всех интерфейсов — any. Если отсутствует локальная сеть, то можно воспользоваться интерфейсом обратной связи lo. |
-l | Использовать стандартный потоковый вывод tcpdump (stdout), например для записи в файл:
shell# tcpdump -l | tee out.log //отобразит работу tcpdump и сохранит результат в файле out.log |
-N | Не добавляет доменное расширение к именам узлов. Например tcpdump отобразит 'net' вместо 'net.library.org' |
-n | Отображает IP-адрес вместо имени хоста. |
-nn | Отображает номер порта вместо используемого им протокола. |
-p | Не переводит интерфейс в режим приема всех пакетов (promiscuous mode). |
-q | Выводит минимум информации. Обычно это имя протокола, откуда и куда шел пакет, порты и количество переданных данных. |
-r | Этот параметр позволяет tcpdump прочесть трафик из файла, если он был предварительно сохранен параметром -w. |
-S | Позволяет не обрабатывать абсолютные порядковые номера (initial sequence number — ISN) в относительные. |
-s число | Количество байтов пакета, которые будет обрабатывать tcpdump. При установке большого числа отображаемых байтов информация может не уместиться на экране и её будет трудно изучать. В зависимости от того, какие цели вы преследуете, и следует выбирать значение этого параметра. По умолчанию tcpdump захватывает первые 68 байт (для SunOS минимум 96 байт), однако если вы хотите увидеть содержимое всего пакета, используйте значение в 1514 байт (максимально допустимый размер кадра в сети Ethernet). |
-t | Не отображает метку времени в каждой строке. |
-T тип | Интерпретация пакетов заданного типа. Поддерживаются типы aodv, cnfp, rpc, rtp, rtcp, snmp, tftp, vat, wb. |
-tt | Отображает неформатированную метку времени в каждой строке. |
-tttt | Показывает время вместе с датой. |
-v | Вывод подробной информации (TTL; ID; общая длина заголовка, а также его параметры; производит проверку контрольных сумм IP и ICMP-заголовков) |
-vv | Вывод ещё более полной информации, в основном касается NFS и SMB. |
-vvv | Вывод максимально подробной информации. |
-w | Сохраняет данные tcpdump в двоичном формате. Преимущества использования данного способа по сравнению с обычным перенаправлением в файл является высокая скорость записи и возможность чтения подобных данных другими программами, например snort, но этот файл нельзя прочитать человеку. |
-x | Делает распечатку пакета в шестнадцатеричной системе, полезно для более детального анализа пакета. Количество отображаемых данных зависит от параметра -s |
-xx | Тоже, что и предыдущий параметр -x, но включает в себя заголовок канального уровня |
-X | Выводит пакет в ASCII- и hex-формате. Полезно в случае анализа инцидента связанного со взломом, так как позволяет просмотреть какая текстовая информация передавалась во время соединения. |
-XX | Тоже, что и предыдущий параметр -X, но включает заголовок канального уровня. |
-с число | tcpdump завершит работу после получения указанного числа пакетов. |
-E | Расшифровать IPsec трафик с помощью указанного ключа Задает использование алгоритма и секрета spi@ipaddr для расшифровки пакетов IPsec ESP, направленных по адресу ipaddr и содержащих and в поле Security Parameter Index значение spi. Комбинация spi и адреса может быть повторена с использованием в качестве разделителя запятой или новой строки. Отметим, что установка секрета для пакетов IPv4 ESP в настоящее время поддерживается. В качестве алгоритмов могут использоваться des-cbc, 3des-cbc, blowfish-cbc, rc3-cbc, cast128-cbc или none. По умолчанию применяется алгоритм des-cbc. Возможность дешифровки пакетов обеспечивается только в тех случаях, когда при компиляции tcpdump были включены опции поддержки криптографии. Параметр secret содержит ASCII-текст секретного ключа ESP. Если секрет начинается с символов 0x, будет считываться шестнадцатеричное значение. Опция предполагает использование ESP в соответствии с RFC 2406, а не RFC 1827. Эта опция поддерживается только для отладки и использовать ее с реальными секретными ключами не следует, поскольку введенный в командной строке ключ IPsec доступен другим пользователям системы4. Кроме явного указания параметров в командной строке их можно задать в файле опций, который tcpdump будет читать при получении первого пакета ESP. |
Примеры:
Пример фильтра, отслеживающего только UDP-пакеты, приходящие из внешней сети:
# tcpdump udp and not src net localnet
Порт отправителя и порт получателя соответственно:
# tcpdump dst port 80
# tcpdump src port 22
Только исходящие пакеты на хост:
# tcpdump dst host nameofserver
Для отслеживания только исходящих пакетов от какого-либо узла нужно указать следующее:
# tcpdump src host nameofserver
Чтобы узнать получаемые или отправляемые пакеты от определенного хоста, необходимо его имя или IP-адрес указать после ключевого слова host:
# tcpdump host nameofserver
tcpdump -c 10 port 22
11:16:00.653037 IP server.domain.com.ssh > ppp-static8-32.proc22.ru.25971: P 232:412(180) ack 1 win 12298
11:16:00.653037 - Время с точностью до миллионной доли секунды
IP server.domain.com.ssh > ppp-static8-32.proc22.ru.25971 - Адрес и порт отправки и назначения
P 232:412(180) - 180 кол-во байт. P - флаг пакета
Описание:
SYN | S | Флаг, который используется при запросе на соединение. |
---|---|---|
ACK | ack | Используется при подтверждении пришедшего пакета. |
FIN | F | Флаг устанавливается при нормальном закрытии соединения. |
URGENT | urg | Этот флаг нужен при передаче экстренных данных - например, при посылке Ctrl + C в telnet-соединении. |
PUSH | P | Как правило, данный флаг устанавливается при передаче пользовательских данных. |
RESET | R | Немедленный разрыв соединения. |
Заполнитель | . (точка) | В случае, если в пакете отсутствует какой-либо флаг используется данный заполнитель. |
Selective Acknowledgment Permitted (SackOK)
Формат TCP пакета:
data-seqno - описывает данные, содержащиеся в пакете, в формате first:last, где first и last номера последовательностей (sequence number) первого и последнего байта передаваемых данных nbytes.
Sequence number - идентифицирует байт в потоке данных от отправляющего TCP к принимающему TCP. Если мы представим поток байтов, текущий в одном направлении между двумя приложениями, TCP нумерует каждый байт номером последовательности. Номер последовательности представляет собой 32-битное беззнаковое число, которое переходит через 0, по достижению значения 232 - 1.
ack - следующий номер последовательности
window - размер окна
options - доп сведения, напр максимальный размер сегмента <mss 1460>
length - длина пакета
tcpdump -s 1514 -w test.dmp -i eth0
Комментариев нет:
Отправить комментарий