前几天因为一些其他的原因,接触到网络抓包这块,由于4g网络传输的时候,在app端接收的过程中出现bug,所以就接触了Wireshark抓包工具,那么下面就对Mac环境下Wireshark的使用做简单介绍。
Wireshark的使用
1、下载地址:https://github.com/pengjinguang521/GrabBag.git 下载后安装Wireshark_2.0.5.dmg
2、使用USB数据线将iOS设备连接到MAC上
3、获得iOS设备的UDID,可以使用iTools查看,也可以使用Xcode的Organizer工具查看
4、创建RVI接口
5打开命令行输入 rvictl -s udid
#notice -- RVI虚拟接口的命令规则可为rvi0,rvi1,。。。,创建后可以使用以下命令查看是否创建成功 在mac上用抓包工具wireshark或tcpdump等工具抓包分析 $ sudo tcpdump -i rvi0 -n -vv#notice --
6、在wireshark启动页面,捕获下面找到rvi0 如果有多台设备则一次 rvi1 rvi2 。。。7、分析结束后,移除创建的RVI接口$ rvictl -x udid
charles抓包工具的使用
1、打开 charles-proxy-3.10.1.dmg,安装 charles; 2、在「应用程序」文件夹,右键 charles,选择显示包内容 进入 /Application/Charles.app/Contents/Java/,复制下载的 charles.jar 替换原有文件即可。
2、抓取真机上的数据非常的简单,首先使手机和电脑在一个局域网内,不一定非要是一个ip段,只要是同一个路由器下就可以了。按照上面说的把证书安装好,然后找到电脑的IP,你可以选择在终端输入ifconfig en0 (inet 后面即为ip地址) 来获取,也可以选择打开网络偏好设置来查看。
3、打开Charles的代理设置:Proxy->Proxy Settings,设置一下端口号,默认的是8888,这个只要不和其他程序的冲突即可,并且勾选Enable transparent HTTP proxying。
4、在手机上连接上和电脑在同一局域网的网络上设置HTTP代理。端口号就是刚刚在Charles上设置的那个。
然后在手机上随便打开一个网址,这是Charles会弹出一个框让你确认是否代理,点击allow就可以了,然后你就会在Charles上发现手机上的请求了。
5、在一个网址上右击,选择Focus,然后其他的请求就会被放到一个叫Other Host的文件夹里面。
charles的使用详见:http://www.jianshu.com/p/fdd7c681929c
网友评论