Android编译tcpdump,android 使用tcpdump
1. root 手机
2. 下载tcpdump 地址: http://www.strazzere.com/android/tcpdump
3. adb shell 进入手机修改/data/local权限
1. adb shell #登入手机
2. su #切换Root用户 (需要SuperSu Free 授权)
3. chmod 777 /data/local/ #修改目录权限,
4. 修改后Ctrl+C / Ctrl + D 退出adb shell
4. 将tcpdump程序copy到android手机
1. adb push ./tcpdump /data/local # 若提示Permission denied 则使用方法2
2. 先传到sdcard中再移动
adb push ./tcpdump /sdcard
adb shell
cd /data/local
su
mv /sdcard/tcpdump .
5. adb进入手机修改tcpdump的权限,修改为可执行权限
su #切换Root用户
chmod 777 /data/local/tcpdump #增加可执行权限
# 常用抓取命令
adb shell rm /sdcard/capture.pcap
adb shell /data/local/tcpdump -i any -p -s 0 -w /sdcard/capture.pcap
adb pull /sdcard/capture.pcap capture.pcap
用wireshark 打开capture.pcap即可查看数据包
# tcpdump 参数说明
"-i any": listen on any network interface
"-p": disable promiscuous mode (doesn't work anyway)
"-s 0": capture the entire packet
"-w": write packets to a file (rather than printing to stdout)
... do whatever you want to capture, then ^C to stop it ...
# 错误处理
1."./tcpdump": error: only position independent executables (PIE) are supported.
PIE这个安全机制从4.1引入,但是Android L之前的系统版本并不会去检验可执行文件是否基于PIE编译出的。因此不会报错。但是Android L已经开启验证,如果调用的可执行文件不是基于PIE方式编译的,则无法运行。解决办法非常简单,在Android.mk中加入如下flag就行。
LOCAL_CFLAGS += -pie -fPIE
LOCAL_LDFLAGS += -pie -fPIE
已编译好的tcpdump下载[tcpdump](https://leanote.com/api/file/getAttach?fileId=5cfde981ab6441607d005901)
2.CANNOT LINK EXECUTABLE "./tcpdump": cannot locate symbol "OPENSSL_add_all_algorithms_noconf" referenced by "/data/local/tcpdump"...
下载最新的tcpdump https://www.androidtcpdump.com/android-tcpdump/downloads
# 参考:
https://www.jianshu.com/p/ca6cdc825ad3
http://www.yinqisen.cn/blog-543.html
Android编译tcpdump,android 使用tcpdump相关推荐
- android 编译主机,Android】源码编译 ---zzz
问题解决 参考 1)/bin/bash: prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi-gcc: 权限不够 解决:chmod a+x ...
- 全志 android 编译,全志Android SDK编译详解(二)
注意要确定安装了jdk) 第一步: cd lichee; ./build.sh -p sun5i_elite -k 3.0 (apt-get install uboot-mkimage需要安装m ...
- H6机顶盒Android编译[2]-Android编译
注意:本人也是第一次android编译,记录其过程为方便自己,同时给初学者提供参考,不正确之处还望包含指正! 前言 使用易新泰的H6机顶盒平台,搭载全志H6处理器,使用易新泰提供的SDK环境,使用ub ...
- ogre android 编译,Ogre3d Android平台编译教程
上一篇我们讲了Ogre3d 在 Window平台的编译流程方法 这一篇我们介绍 Ogre3d 编译到Android 平台的方法.可以和官方英文教程对照学习. 转载自博客 http://blog.csd ...
- ffplay android 编译,ffmpeg android 平台编译
? ? ?ffmpeg 在移动平台上应用十分广泛,其在音视频编解码,封装多媒体文件格式,rtsp http rtmp协议相关的音视频推流拉流具有强大的可用性.这里将自己平时为Android平台编译ff ...
- android 编译luajit,Android 嵌入 LuaJIT 的曲折道路
相关链接:Windows 下编译 LuaJIT 懒人与伸手党可以直接看最底部. 为什么使用 LuaJIT Lua 官方版的编译嵌入相对简单,但是为什么要用 LuaJIT 呢?我所了解到的优势有: 更高 ...
- android编译终止,android - Android NDK-没有此类文件或目录编译终止-头文件导出问题 - 堆栈内存溢出...
我正在尝试使用NDK将TagLib C ++库( http://taglib.github.io/ )导入Android. 通过按如下所示将所有源代码放在/jni/taglibroot/下,我能够成功 ...
- android 编译sdk,android编译sdk
android在编译源代码的时候不需要配置相应的jdk,而在编译sdk的时候,当sdk版本不兼容的时候 The Sun JDK is no longer in Ubuntu's main packag ...
- Android编译Lambda,Android lambda 入门教程
用20分钟的时间,再来了解下 Lambda 表达式.为什么要学习 Lambda 表达式呢?毕竟现在的 Android 使用的 JDK 版本官方并不支持 Lambda.这里列出了一些需要理由,来说明为什 ...
- android 编译 libjpeg,Android 编译libjpeg
之前需要将yuv转换为jpg图像,查看网上说libjpeg-turbo比libjpeg快2-3倍,但是在Android手机上实践了一下,需要40-60个ms,这个虽然比以前的300ms好多了,但是还是 ...
最新文章
- kuangbin专题16B(kmp模板)
- Java Persistence API中的FetchType LAZY和EAGER之间的区别?
- switch( )的经典引用
- 7-1 抓老鼠啊~是亏了还是赚了?
- Android SQL删除表、清空表
- 喜马拉雅xm格式转化mp3_强大的视频格式转换工具
- UE4 四叉树 QuadTree
- Istio 南北向流量管理
- Window Server 2008 概述
- 关于北京市电气火灾综合治理实施方案通知的解读
- 深入浅出PaddlePaddle函数——paddle.ones_like
- css3 烟 蚊香_如何用纯 CSS 创作一盘传统蚊香
- webservice连接验证用户名密码
- 混合高斯模型原理和Lucas-Kanade方法介绍
- Yii2实现文件zip打包下载功能
- QQ发送json红包卡片消息(完整攻略)
- 华为鸿蒙研究团队,喜报!!衡水高中毕业生丁聪百万年薪入职华为鸿蒙研发团队...
- JVM内存设置多大合适?Xmx和Xmn如何设置?JVM内存分配比例
- Java 中的取近似值的方法
- 51单片机学习之DS18B20温度传感器