canvas教程

实时监控Android设备网络封包

字号+ 作者:H5之家 来源:H5之家 2017-05-19 15:04 我要评论( )

对Android网络抓包分析,一般是使用tcpdump抓个文件,再到PC用Wireshark打开分析。能不能达到直接使用Wireshark的效果? 答案是可以的,至少已经非常接近了。实现起来很简单,原理就是将tcpdump的数据重定向到网络端口,再通过管道(pipe)转到wireshark就可以

对Android网络抓包分析,一般是使用tcpdump抓个文件,再到PC用Wireshark打开分析。能不能达到直接使用Wireshark的效果? 答案是可以的,至少已经非常接近了。实现起来很简单,原理就是将tcpdump的数据重定向到网络端口,再通过管道(pipe)转到wireshark就可以了。

基本结构

如下图所示:

Android上使用的指令:

  • tcpdump

  • netcat, 又称为瑞士军刀,小巧而功能强悍。如果在手机没有nc指令,可以方便地使用busybox提供的版本(直接到Google Play里安装)。

  • Wireshark, 不啰嗦了。

  • 两条指令

    准备好了工具,依下面的方式执行两条指令就可以了 (只需要替换tcpdump所在的路径,以及nc前要不要加个busybox):

  • 使用adb shell在Android设备上执行:

  • tcpdump -n -s 0 -w – | busybox nc -l -p 11233
  • 其中nc -l -p 11233, 即建立一个服务器端,以11233端口提供服务。需要以root用户执行。
  • 在主机的命令下执行:

  • adb forward tcp:11233 tcp:11233 && nc 127.0.0.1 11233 | wireshark -k -S -i –
  • 其nc 127.0.0.1 11233,即建立一个客户端,连接到本机的11233端口。wireshark的参数见后面的补充说明。
  • 在Mac OS下有时需要在wireshark前加上sudo, 不然打开失败。如果没有看到结果,可以在nc指令加-v参数,显示更多的信息来查看。比如出现”Connection refused“时,注意检查指定的端口号是否正确。

    也可以参考这里:

    效果如下,注意标题显示”Capturing from Standard Input”。

    补充说明
  • tcpdump详解

  • 什么是libpcap格式

  • wireshark参数

  • 官方:
  • Wireshark还带一些其它指令,如下:

  • 您可能感兴趣的文章

     

    1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

    相关文章
    • Android自定义View之圆形进度条总结

      Android自定义View之圆形进度条总结

      2017-05-19 13:06

    • android双缓冲绘图技术分析

      android双缓冲绘图技术分析

      2017-05-14 15:02

    • 包邮现货Android和PHP开发最佳实践第2版/安卓移动开发教程书籍/P

      包邮现货Android和PHP开发最佳实践第2版/安卓移动开发教程书籍/P

      2017-05-14 09:02

    • Android Canvas 绘图之 PorterDuffXfermode

      Android Canvas 绘图之 PorterDuffXfermode

      2017-05-11 15:01

    网友点评