今天就来看一下Mac上如何进行抓包,之前有一篇文章介绍了使用Fidder进行抓包

http://blog.csdn.net/jiangwei0910410003/article/details/19806999

不过可惜的是,Fidder使用C#开发的,所以就不能在Mac上使用了,不过还有另外一个抓包神器,就是Charles,它是Java开发的,所以跨平台,不仅可以在Mac上使用,Linux以及Window下都是可以使用的,当然需要安装JDK,才能运行,同时还有一个问题就是他是收费的。

一、下载

先到它的官网http://www.charlesproxy.com/可下载到最新版本,这个下载有点慢,我已经将它放到网盘中了:http://pan.baidu.com/s/1gdu0S4V

这个是3.9.3版本的,下载下来,安装就不多说了,很easy....打开界面:

二、破解

不过这个收费的,那么接下来就开始破解吧,其实破解很简单就是替换一个文件就可以了,可以在网上搜:Charles3.9.3破解的jar文件

这里我也是下载好了:http://pan.baidu.com/s/1i3gjEfj

下载下来之后我们就可以进行破解吧:

打开应用程序,选择Charles,选择显示包内容:

然后点击Contents->Resources->Java: 

然后将我们下载下来的charles.jar替换这里的charles.jar就可以了。然后再次打开Charles,就不会太提示30天使用期限了,破解搞定

三、抓包 下面来看一下如何进行抓包

第一、HTTP抓包 1、打开Charles程序 2、查看Mac电脑的IP地址,系统偏好设置->网络就可以查看到了,比如我的ip地址是:192.168.1.7 3、打开iOS设置,进入当前wifi连接(Mac在一个局域网内),设置HTTP代理Group,将服务器填为上一步中获得的IP,即192.168.1.7,端口填8888: 

4、iOS设备打开你要抓包的app进行网络操作 5、Charles弹出确认框,点击Allow按钮即可

第二、HTTPS抓包

需要下载Charles证书http://www.charlesproxy.com/ssl.zip,解压后导入到iOS设备中,这里我也是下载好了:

http://pan.baidu.com/s/1sjJiZYt,我们在iOS设备中使用safari打开这个链接:

 点击打开:  点击安装:

再次点击安装,证书就安装成功了

然后在Charles的工具栏上点击Proxy按钮,选择Proxy Settings… 切换到SSL选项卡,选中Enable SSL Proxying,别急,选完先别关掉,还有下一步 这一步跟Fiddler不同,Fiddler安装证书后就可以抓HTTPS网址的包了,Charles则麻烦一些,需要在上一步的SSL选项卡的Locations表单填写要抓包的域名和端口,点击Add按钮,在弹出的表单中Host填写域名,比如填api.instagram.com,Port填443

这时候我们打开网易app: 

就可以看到数据了,至此抓包工作就搞定了。

注意:当我们不抓包的时候,会将Charles关闭,这时候iOS是访问不到网络的,因为设置了代理(就是Charles),这时候需要将iOS中的代理关闭,这个是抓包时经常犯的错。

Wireshark

rvictl -s afe72bbebab036ae562f1f3e392f22cfd350455f
对应生成的接口是 rvi0

mac系统版本:mac 10.10 Yosemite

xcode版本:6.3.1

在追踪bug或者分析借鉴其他公司的app通讯思路时,抓包这件事是非常有必要的。下面说说Wireshark怎么截获iphone的数据包。

安装wireshark

wireshark是依赖x11的,所以首先确认安装了x11,mac自带,可以打开升级一下。
前往-实用工具-x11,打开后点击菜单栏上的x11,检查更新 即可。中间提取包内容过程比较长,耐心等待。

下载Wireshark最新版,尽量去官网下载:
https://www.wireshark.org/download.html (需要翻..)

安装,安装过程很简单,一路下一步。

我这里下载的Wireshark 1.12.4 Intel 64,安装后无法运行,网上说x11位置不对。控制台执行:
sudo ln -s /opt/X11 /usr/X11
问题依旧。

没办法下载了一个XQuartz-2.7.7:

http://xquartz.macosforge.org/landing/

安装,运行Wireshark。点完wireshark图标等了10多分钟,终于算是打开了,之后再打开就不需要等了。

抓iphone数据

想抓iphone的数据,首先需要让iphone数据通过mac才行。看到网上很多设代理什么的方法,比较复杂,有的还要越狱。其实没必要。只要链上数据线,然后在mac的终端执行:
rvictl -s iphone设备id
这时,所有iphone网络流量都会经过iphone所链接的mac,并且iphone数据还是走自己的网络,比如iphone链接在3g网络,数据还是会通过3G收发,而不是通过mac的网络。断开连接:
rvictl -x iphone设备id

设备连接后,mac会出现一个对应的虚拟网络接口,名字是rvi0(如果有多个iphone则累加,rvi1,rvi2…)

只要启动Wireshark,监听rvi接口就能抓到iPhone数据了,当然,也可以使用Wireshark以外的工具抓取或分析。

关于获取iphone设备ID,可以使用xcode-windows-devices,选择相应设备,右面设备信息的identifier里就是了。

转载于:https://www.cnblogs.com/graveliang/p/5682299.html

Charle抓包与wireshark使用相关推荐

  1. 手机数据抓包以及wireshark技巧

    国内私募机构九鼎控股打造APP,来就送 20元现金领取地址:http://jdb.jiudingcapital.com/phone.html 内部邀请码:C8E245J (不写邀请码,没有现金送) 国 ...

  2. 抓包工具Wireshark基本介绍和学习TCP三次握手

    原文链接:http://www.cnblogs.com/TankXiao/archive/2012/10/10/2711777.html#threehand,肖佳 之前写过一篇博客:用 Fiddler ...

  3. DNS抓包分析--wireshark

    DNS抓包分析–wireshark DNS-(Domain Name System,域名系统),是因特网上作为余名和IP地址相互映射的一个分布式数据库,能够使用户更加方便地访问互联网,而不是去记住能够 ...

  4. DHCP数据抓包分析--wireshark

    DHCP数据抓包分析–wireshark DHCP-(Dynamic Host Configuration Procotol,动态主机配置协议),是一个局域网的网络协议,主要用于给内部网络或网络服务供 ...

  5. ICMP协议抓包分析-wireshark

    ICMP协议抓包分析-wireshark ICMP- (Internet Control Message Protocol,网际报文协议)是Internet协议族的核心协议之一,也可称为是网际控制报文 ...

  6. TCP协议抓包分析 -- wireshark

    TCP协议抓包分析 – wireshark TCP- (Transmission Control Protocol,传输控制协议)是一种面向连接的.可靠的.基于IP的传输层协议.它的主要目的就是为数据 ...

  7. UDP协议抓包分析 -- wireshark

    UDP协议抓包分析 – wireshark UDP是User Datagram Protocol用户数据报协议的简称.他是OSI七层模型中一种无连接的传输层协议,提供面向事务的简单的不可靠信息传送服务 ...

  8. 互联网协议IP抓包分析 -- wireshark

    互联网协议IP抓包分析 – wireshark 互联网协议IP是Internet Protocol的缩写,中文缩写是网协 互联网协议也就是为计算机相互连接进行通信而设计的协议. IP地址协议报文首部 ...

  9. ARP协议抓包分析 -- wireshark

    ARP协议抓包分析 – wireshark ARP- Address Resolution Protocol协议,即地址解析协议.该协议功能就是将IP地址解析成MAC地址. 在发送数据的时候,只知道目 ...

最新文章

  1. 详解AFNetworking的HTTPS模块
  2. php打印pre,php 打印格式化显示利器 pre
  3. 如何画透明位图(转)
  4. 【笔记】 感受野与权值共享 摄像头标定 相机坐标与世界坐标
  5. Codeforces 1480B. The Great Hero(阅读模拟题,注意数据范围和攻击顺序)
  6. 使用Java 8的Builder模式
  7. app软件测试是否强制升级_这些测试方法对于任何软件都必须是强制性的
  8. HttpServletRequest对象
  9. python壁纸数据抓取_Python《wallhaven壁纸爬取》
  10. 手机 机器人 谢超_大咖云集 长三角智造峰会演讲嘉宾名单曝光
  11. python编程基础及应用 重庆大学出版社_大学计算机基础与应用
  12. VirtualBox虚拟机安装教程
  13. 怎样查询服务器中标信息,太极中标云服务器
  14. 几分之几在手机计算机上是哪个符号,数学各 种符号怎么表达比如根号,几分之几 – 手机爱问...
  15. signature=f89e259b8a982ede42b69434f81f5bc3,利用 cDNA-AFLP技术鉴定马铃薯晚疫病菌小种特异无毒基因候选表达序列...
  16. 苹果新专利曝光 背后有何暗示?
  17. linux 安装插件报错:Loaded plugins: fastestmirror
  18. 电脑进入睡眠后,总是被唤醒
  19. 【原理】Basic Integer Overflows
  20. latex 参考文献显示问号_VS Code + LaTeX

热门文章

  1. 2015/06/08
  2. AjaxControlToolkit HoverMenuExtender 控件演示
  3. AppSettings和ConnectionStrings的使用。
  4. 【数据平台】pandas将一列中的文本拆分成多行
  5. Hadoop系列二:Hadoop单节点伪分布部署并执行mapreduce示例wordcount
  6. (转载)简单linux C++内存池
  7. Ubuntu下eclipse indigo版在线安装struts插件
  8. VC对话框禁止关闭按钮和禁止任务管理中关闭进程
  9. 关于省客服集中全业务系统IT项目管理的几点分析!
  10. Java中Map的entrySet()详解 || Map.Entry的详解