实时监控Android设备网络封包

标签: 前端与客户端技术 android tcpdump | 发表时间:2013-11-06 15:21 | 作者:Horky
出处:http://tech.uc.cn

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

基本结构

如下图所示: 03

Android上使用的指令:

i. tcpdump

正是因为可以生成libpcap格式的数据,Wireshark可以加以处理。

 官网:http://www.tcpdump.org/

 下面这个链接介绍了Android版本的编译:

 http://omappedia.org/wiki/USB_Sniffing_with_tcpdump

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

http://www.busybox.net/

iii. Wireshark, 不啰嗦了。

http://www.wireshark.org/

两条指令

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

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

tcpdump -n -s 0 -w - | busybox nc -l -p 11233 

 *其中nc -l -p 11233, 即建立一个服务器端,以11233端口提供服务。需要以root用户执行。

ii. 在主机的命令下执行:

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“时,注意检查指定的端口号是否正确。

也可以参考这里:

http://www.kandroid.org/online-pdk/guide/tcpdump.html

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

补充说明

i. tcpdump详解

http://www.cnblogs.com/ggjucheng/archive/2012/01/14/2322659.html

ii. 什么是libpcap格式

http://wiki.wireshark.org/Development/LibpcapFileFormat

iii. wireshark参数

http://man.lupaworld.com/content/network/wireshark/c9.2.html

 官方:http://www.wireshark.org/docs/man-pages/wireshark.html

*Wireshark还带一些其它指令,如下:

http://www.wireshark.org/docs/man-pages/

相关 [实时 监控 android] 推荐:

实时监控Android设备网络封包

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

android应用程序线程的监控

- - CSDN博客推荐文章
所以就开始研究起来,经过半天的模式总用有点启发,下面就简单介绍一个简单的线程监控:. DDMS是一款Google* 提供的应用,可作为独立的工具运行,也可通过ADT Eclipse* 插件集成到Eclipse* 中. 它提供了强大的特性集合,能帮助您快速了解应用的运行状况. 线程更新DDMS中的线程监控和评测浏览对于管理大量线程的应用很有用.

Oracle11g使用sql_monitor实时监控sql

- - CSDN博客推荐文章
Oracle 11g sql_Monitor的实时监控. 在 Oracle  Database  11g 中,v$session 视图增加了一些新的字段,这其中包括SQL_EXEC_START 和 SQL_EXEC_ID. 这两个字段实际上代表了 Oracle 11g 的一个新特性:实时的 SQL 监视(Real Time SQL Monitoring).

mongodb 实时监控工具motop

- - 运维生存时间
mongodb实时监控工具,可以同时对多个MongoDB服务器进行监控. 项目地址:https://github.com/tart/motop 使用. 使用easy_install安装 # wget https://bitbucket.org/pypa/setuptools/raw/bootstrap/ez_setup.py -O - | python # easy_install motop.

android屏幕监控上下左右滑动

- - CSDN博客推荐文章
简单写一下,view 或者 activity 实现 OnGestureListener 接口. 在 onFling方法中实现左右滑动:. 在 onScroll 方法中实现上下滑动:. 作者:spider_zhcl 发表于2012-6-10 12:33:34 原文链接. 阅读:12 评论:0 查看评论.

基于android的远程视频监控系统——实现,

- - 博客园_首页
本帖仅献给和我一样热爱 Android开发,并渴望学习的朋友们. 现在我将分享我的学习过程,希望大家通过学习也能够独立完成这个简单的系统. (PS.这个系统是我在学习java和android一个月的时间内鼓捣出来的,所以没有基础的朋友也不要担心. 如标题所述,今天我们将学习如何打开摄像头,并在屏幕上预览图像.

Linux 系统实时监控的瑞士军刀 - Glances

- - 开源软件 - ITeye博客
早些时候,我们提到过有很多可以用来监视系统性能的 Linux  系统监视工具. 但我们估计,或许更多的用户会倾向与绝大多数 Linux 发行版都带的工具 ( top 命令). top 命令是 Linux 下的一个实时任务管理器, 同时也是用于在  GNU/Linux 发行版中寻找系统性能方面的瓶颈,并帮助我们作出正确操作的常用系统监视工具.

通过ngxtop实时监控web server的访问情况

- - CSDN博客系统运维推荐文章
ngxtop现在虽然还有些问题,如本文最后,但开源才15天,值得期待. 安装后python2.7所在路径. 为保持python2.4不变,建立python2.7的软连接指向python2.7所在路径. 2、安装setuptools. 3.1、通过pip安装ngxtop,因为源在国外,可能下载、安装过程会很慢.

安装 log.io 实时日志监控工具

- - vpsee.com
日志是个好东西,对技术人员来说写日志能纪录成长,分享经验;对机器来说纪录日志能及时发现错误,为日后的排错提供信息. 如果还在一台机器上用 tail -f 监听单个日志或者 用 multitail 监听多个日志也太 out 了,我们需要一种工具能纪录上百台机器、不同类型的日志,并最好能汇集到一个界面里方便查看,最好还是实时的.

如何做实时监控?—— 参考 Spring Boot 实现

- - Juven Xu
随着 微服务的流行,相比较以前一个大型应用程序搞定所有需求,我们现在更倾向于把大型应用程序切分成多个微服务,服务之间通过 RPC 调用. 微服务架构的好处非常多,例如稳定的服务变化较少,不会被非稳定服务所影响;不同的服务更方便交给不同的人管理;发布、扩容等操作也更加有针对性. 不过这也不是没有代价的,额外的成本最主要的可能就是运维成本.