Нюхает и отображение пакетов TCP в UTF-8
Вопрос
Я пытаюсь использовать TCPDUMP для отображения содержимого пакетов TCP, протекающих в мою сеть. У меня есть что-то вроде:
tcpdump -i wlan0 -l -A
Опция -a отображает содержимое в качестве текста ASCII, но мой текст кажется UTF-8. Есть ли способ отображать UTF-8 правильно, используя TCPDUMP? Вы знаете какие-либо другие инструменты, которые могут помочь?
Большое спасибо
Решение
Убедитесь, что ваш терминал поддерживает вывод 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
-c
Опция рассказывает iconv
Для опускания персонажа, который не имеет действительного представления в целевой кодировке.
Другие советы
Есть много вариантов, которые вы можете исследовать пакеты понюхивания.
Wireshark является самым полезным Sniffer и его доступным для всех платформ. Он имеет богатый графический интерфейс, который поможет вам понюхать пакеты и анализировать протоколы. У него много фильтров, чтобы вы могли отфильтровать нежелательные пакеты и смотреть только на пакеты, которые вас интересуют. Проверьте их веб-страницу по адресу: Доступно для скачивания для Windows и OS X
Чтобы загрузить для Linux Distries проверить эта ссылка
Если вы предпочитаете альтернативное решение на линии TCPDUMP, вы также можете исследовать TCPFLOW, который определенно является хорошим вариантом для анализа пакетов. Он также предоставляет вам возможность хранить файлы для более позднего анализа. Проверьте эту ссылку: TCPFLOW
Другой вариант есть Justsniffer
Что, вероятно, лучше всего наилучшим образом обращается к вашей проблеме и предоставляет вам регистрацию текстового режима и настраивается.
tcpdump -i wlan0 -w packet.ppp
Эта команда хранит пакеты в Packet.PPP
После этого открыть его в Wireshark
wireshark packet.ppp
Щелкните правой кнопкой мыши на пакете, а затем выберите Следуйте TCP Packet
Тогда у вас могут быть доступны разные форматы для просмотра данных в Wireshark.
Спасибо, мунитратап.