tcpdump — это компьютерная программа для анализа пакетов сети передачи данных , работающая под интерфейсом командной строки . Он позволяет пользователю отображать TCP/IP и другие пакеты, передаваемые или получаемые по сети , к которой подключен компьютер. [3] Распространяется по лицензии BSD , [4] tcpdump — свободное программное обеспечение .
Tcpdump работает в большинстве Unix-подобных операционных систем : Linux , Solaris , FreeBSD , DragonFly BSD , NetBSD , OpenBSD , OpenWrt , macOS , HP-UX 11i и AIX . В этих системах tcpdump использует библиотеку libpcap для захвата пакетов. Порт tcpdump для Windows называется WinDump ; он использует WinPcap , версию libpcap для Windows.
tcpdump был первоначально написан в 1988 году Ван Джейкобсоном , Салли Флойд , Верном Паксоном и Стивеном Макканном, которые в то время работали в исследовательской группе лабораторной сети Лоуренса в Беркли . [5] К концу 1990-х годов существовало множество версий tcpdump, распространявшихся как часть различных операционных систем, а также множество патчей, которые не были хорошо скоординированы. Майкл Ричардсон (MCR) и Билл Феннер создали www.tcpdump.org в 1999 году.
tcpdump печатает содержимое сетевых пакетов. Он может читать пакеты с сетевой карты или из ранее созданного сохраненного файла пакета. tcpdump может записывать пакеты в стандартный вывод или в файл.
Также возможно использовать tcpdump для конкретной цели перехвата и отображения сообщений другого пользователя или компьютера. Пользователь с необходимыми привилегиями в системе, действующей как маршрутизатор или шлюз , через который проходит незашифрованный трафик, такой как Telnet или HTTP , может использовать tcpdump для просмотра идентификаторов входа, паролей, URL-адресов и содержимого просматриваемых веб-сайтов или любой другой незашифрованной информации.
Пользователь может дополнительно применить фильтр на основе BPF , чтобы ограничить количество пакетов, видимых tcpdump; это делает вывод более удобным для использования в сетях с большим объемом трафика.
Пример доступных интерфейсов захвата в системе Linux:
$ tcpdump -D 1.eth0 [Up, Running, Connected] 2.any (псевдоустройство, захватывающее все интерфейсы) [Up, Running] 3.lo [Up, Running, Loopback] 4.bluetooth-monitor (Bluetooth Linux Монитор) [Беспроводной] 5.usbmon2 (необработанный трафик USB, номер шины 2) 6.usbmon1 (необработанный трафик USB, номер шины 1) 7.usbmon0 (необработанный трафик USB, все шины USB) [нет] 8.nflog (сетевой фильтр Linux) log (NFLOG)) [нет] 9.nfqueue (интерфейс сетевой фильтрации Linux (NFQUEUE)) [нет] 10.dbus-system (системная шина D-Bus) [нет] 11.dbus-session (сессионная шина D-Bus) ) [нет] 12.bluetooth0 (номер адаптера Bluetooth 0) 13.eth1 [нет, отключено]
В некоторых Unix-подобных операционных системах пользователь должен иметь привилегии суперпользователя , чтобы использовать tcpdump, поскольку механизмы захвата пакетов в этих системах требуют повышенных привилегий. Однако опция -Z может использоваться для лишения привилегий конкретного непривилегированного пользователя после настройки захвата. В других Unix-подобных операционных системах механизм перехвата пакетов можно настроить так, чтобы его могли использовать непривилегированные пользователи; в этом случае права суперпользователя не потребуются.
Мы имеем доступ к информации о трафике, который входит и продается через определенный красный интерфейс. Если вы используете диагностический центр, мы можем получить доступ к информации о пакетах. Эта информация будет передана входящим пакетам и будет указана в важных пакетах, а также дополнительная дополнительная информация. Включите возможность сохранить результат в архиве, чтобы увидеть его в другом моменте.