今天就來看一下Mac上如何進行抓包,以前有一篇文章介紹了使用Fidder進行抓包html
http://blog.csdn.net/jiangwei0910410003/article/details/19806999macos
不過惋惜的是,Fidder使用C#開發的,因此就不能在Mac上使用了,不過還有另一個抓包神器,就是Charles,它是Java開發的,因此跨平臺,不只能夠在Mac上使用,Linux以及Window下都是可使用的,固然須要安裝JDK,才能運行,同時還有一個問題就是他是收費的。windows
1、下載api
先到它的官網http://www.charlesproxy.com/可下載到最新版本,這個下載有點慢,我已經將它放到網盤中了:http://pan.baidu.com/s/1gdu0S4Vxcode
這個是3.9.3版本的,下載下來,安裝就很少說了,很easy....打開界面:服務器
2、破解網絡
不過這個收費的,那麼接下來就開始破解吧,其實破解很簡單就是替換一個文件就能夠了,能夠在網上搜:Charles3.9.3破解的jar文件app
這裏我也是下載好了:http://pan.baidu.com/s/1i3gjEfjiphone
下載下來以後咱們就能夠進行破解吧:ide
打開應用程序,選擇Charles,選擇顯示包內容:
而後點擊Contents->Resources->Java:
而後將咱們下載下來的charles.jar替換這裏的charles.jar就能夠了。而後再次打開Charles,就不會太提示30天使用期限了,破解搞定
3、抓包 下面來看一下如何進行抓包
第1、HTTP抓包 一、打開Charles程序 二、查看Mac電腦的IP地址,系統偏好設置->網絡就能夠查看到了,好比個人ip地址是:192.168.1.7 三、打開iOS設置,進入當前wifi鏈接(Mac在一個局域網內),設置HTTP代理Group,將服務器填爲上一步中得到的IP,即192.168.1.7,端口填8888:
四、iOS設備打開你要抓包的app進行網絡操做 五、Charles彈出確認框,點擊Allow按鈕便可
第2、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
mac系統版本:mac 10.10 Yosemite
xcode版本:6.3.1
沒辦法下載了一個XQuartz-2.7.7:
http://xquartz.macosforge.org/landing/
安裝,運行Wireshark。點完wireshark圖標等了10多分鐘,終於算是打開了,以後再打開就不須要等了。
只要啓動Wireshark,監聽rvi接口就能抓到iPhone數據了,固然,也可使用Wireshark之外的工具抓取或分析。
關於獲取iphone設備ID,可使用xcode-windows-devices,選擇相應設備,右面設備信息的identifier裏就是了。