比Wireshark更輕量、更方便的抓包軟件:Charles

修正:手機不必一定連接電腦分享的熱點,只需要手機和電腦在同一個局域網下就可以了,手機代理IP設置爲電腦的IP。

之前寫過一篇通過Wireshark進行抓包,分析網絡連接的文章《通過WireShark抓取iOS聯網數據實例分析》:http://blog.csdn.net/lixing333/article/details/7782539

最近一些工作需要抓包,在我的Mac上安裝了Wireshark之後,發現運行不了。探究之,發現Wireshark的界面用的是X Window,所以需要在X11環境下運行。安裝X11之後,仍然閃退,探究後無果,遂轉而尋找其他軟件。試了幾款抓包軟件後,發現Charles這款軟件最方便,甚至比Wireshark這個老牌的抓包分析工具還要好用的多。

Wireshark雖然功能很強大,能抓各個包,進行各種類型過濾,但這也導致了它的學習成本很高,不容易上手;而且,Wireshark默認是監控所有設備,包括電腦上的各種軟件、瀏覽器,以及連接到電腦熱點的設備上的網絡連接,比較雜亂,想找到我們需要的網絡連接比較麻煩。比如下面這張圖,你能讀懂嗎?反正我是不懂。得需要過濾等等的操作,反正麻煩的很。



Charles就沒有這樣的麻煩。Charles是一個非常輕量的軟件,它不是監控網卡上所有的網絡連接,而只監控特定端口(默認是8888端口)的網絡連接,這樣,其它無關的數據就首先被屏蔽了。截圖如下:


如何使用:前期準備仍然如《通過WireShark抓取iOS聯網數據實例分析》:http://blog.csdn.net/lixing333/article/details/7782539 這篇文章裏所說,網線、熱點分享必須有。Charles監控的是8888端口的數據,所以我們需要在手機設備上設置8888端口爲代理。在電腦終端用"ifconfig"命令查看自己電腦網卡的局域網IP地址,注意是有線網卡en0的IP地址,而不是無線網卡en1。如下圖:


以iPhone爲例,我們連接到了電腦之後,打開“設置”-“網絡”,編輯已經連接上的Wifi:

       

這樣設置好之後,我們打開瀏覽器,打開百度首頁,這時Charles會提示:有一臺新設備請求連接,要允許嗎?選擇Allow。


打開百度之後,Charles界面上會出現一個一個的網址,而且新的網絡請求還會被標記出來,非常方便。Request、Response都很清晰,方便查看:


好了,以後可以擺脫Wireshark這個龐大而又難用的東西了,媽媽再也不用擔心我不會抓包啦!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章