Обнюхивание и отображение TCP-пакетов в UTF-8
Я пытаюсь использовать tcpdump для отображения содержимого пакетов tcp, текущих в моей сети. У меня есть что-то вроде:
tcpdump -i wlan0 -l -A
параметр-A отображает содержимое как текст ASCII, но мой текст, похоже, UTF-8. Есть ли способ правильно отобразить UTF-8 с помощью tcpdump? Вы знаете какие-нибудь другие инструменты, которые могли бы помочь?
большое спасибо
3 ответов
убедитесь, что ваш терминал поддерживает вывод UTF-8 и передает вывод на что-то, что заменяет непечатаемые символы:
tcpdump -lnpi lo tcp port 80 -s 16000 -w - | tr -t '[^[:print:]]' ''
tcpdump -lnpi lo tcp port 80 -s 16000 -w - | strings -e S -n 1
если ваш терминал не поддерживает UTF-8, вы должны преобразовать вывод в поддерживаемую кодировку . Например:
tcpdump -lnpi lo tcp port 80 -s 16000 -w - | tr -t '[^[:print:]]' '' | iconv -c -f utf-8 -t cp1251
говорит iconv
опустить символ, который не имеет допустимого представления в целевой кодировке.
есть много вариантов, которые вы можете изучить нюхать пакеты.
Wireshark является самым полезным сниффером и доступен бесплатно для всех платформ. Он имеет многофункциональный интерфейс который поможет вам нюхать пакеты и анализировать протоколы. Он имеет много фильтров, так что вы можете отфильтровать нежелательные пакеты и смотреть только на пакеты, которые вас интересуют. Проверьте их веб-страницу: доступно для загрузки для Windows и OS X
для dowload для Linux дистрибутивы проверить этой ссылке
Если вы предпочитаете альтернативное решение больше на линиях tcpdump, вы также можете изучить tcpflow, который, безусловно, является хорошим вариантом для анализа пакетов. Он также предоставляет вам возможность хранить файлы для последующего анализа. Проверьте эту ссылку: tcpflow
другой вариант:Justsniffer
что, вероятно, лучше всего решает вашу проблему и предоставляет вам ведение журнала текстового режима и настраиваемый.
tcpdump -i wlan0 -w packet.ppp
эта команда сохраняет пакеты в пакет.ppp
после этого откройте его в Wireshark
wireshark packet.ppp
щелкните правой кнопкой мыши на пакете, а затем выберите Follow tcp packet
затем u может иметь различные форматы для просмотра данных в wireshark.
спасибо, Муникратап.