我正在尝试使用tcpdump来显示在我的网络上流动的tcp数据包的内容.
我有类似的东西:
tcpdump -i wlan0 -l -A
-A选项将内容显示为ASCII文本,但我的文本似乎是UTF-8.有没有办法使用tcpdump正确显示UTF-8?你知道其他任何有用的工具吗?
非常感谢
最佳答案
确保您的终端支持输出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省略在目标编码中没有有效表示的字符.
相关文章