转:http://blog.csdn.net/lixing333/article/details/42776187

之前写过一篇通过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这个庞大而又难用的东西了,妈妈再也不用担心我不会抓包啦!

最新文章

  1. IntelliJ IDEA 内存优化最佳实践
  2. HTTP 基础知识
  3. APP前端公共测试点
  4. Proguard使用教程
  5. android 5.0 创建多用户 双开多开应用(2)
  6. UDP—Socket,套接字聊天简单的聊天程序。
  7. RHEL7下PXE+Apache+Kickstart无人值守安装操作系统
  8. maven第5章坐标和依赖
  9. ASP.NET - 获得客户端的 IP 地址
  10. JavaEE(17) - JPA查询API和JPQL
  11. 原生JSdom节点相关(非原创)
  12. HI3531的DDR3配置流程
  13. [BZOJ1047][HAOI2007]理想的正方形(RMQ+DP)
  14. LaLeX数学公式
  15. Java框架spring 学习笔记(十二):aop实例操作
  16. Kafka技术内幕 读书笔记之(四) 新消费者——新消费者客户端(二)
  17. 潭州课堂25班:Ph201805201 WEB 之 JS 第五课 (课堂笔记)
  18. TStringList 常用方法与属性
  19. CentOS7调整home盘空间到根目录
  20. springMVC拦截css与js等资源文件的解决

热门文章

  1. Python 爬虫入门之爬取妹子图
  2. fstab文件详解
  3. 【AtCoder】AGC025题解
  4. JQuery 获取除某指定对象外的其他对象 :not() 与.not()
  5. P1890 gcd区间
  6. 关于set
  7. Nutch源码阅读进程5
  8. HDU.5819.Knights(概率DP)
  9. 【BZOJ-2063】我爸是李刚 数位dp 好题
  10. Centos7 安装 ActiveMQ 5.15.1