转: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这个庞大而又难用的东西了,妈妈再也不用担心我不会抓包啦!

比Wireshark更轻量、更方便的抓包软件:Charles的更多相关文章

  1. Riot - 比 Facebook React 更轻量的 UI 库

    Riot 是一个类似 Facebook React 的用户界面库,只有3.5KB,非常轻量.支持IE8+浏览器的自定义标签,虚拟 DOM,语法简洁.Riot 给前端开发人员提供了除 React 和 P ...

  2. 如何在Windows系统上用抓包软件Wireshark截获iPhone等网络通讯数据

    http://www.jb51.net/os/windows/189090.html 今天给大家介绍一种如何在Windows操作系统上使用著名的抓包工具软件Wireshark来截获iPhone.iPa ...

  3. api-hook,更轻量的接口测试工具

    前言 在网站的开发过程中,接口联调和测试是至关重要的一环,其直接影响产品的核心价值,而目前也有许多技术方案和工具加持,让我们的开发测试工作更加便捷.接口作为数据传输的重要载体,数据格式和内容具有多样性 ...

  4. Crawlab Lite 正式发布,更轻量的爬虫管理平台

    Crawlab 是一款基于 Golang 的分布式爬虫管理平台,产品发布已经一年有余,经过开发团队的不断打磨,即将迭代到 v0.5 版本.在这期间我们为 Crawlab 加入了大量社区用户共同期望的功 ...

  5. WireShark抓包软件的使用

    在大学的时候学习的计算机网络的具体的知识,也使用过wireshark去抓取一些网络的封包用来分析,但是都没能系统的写一篇博客,今天总结一下吧. wireshark介绍 wireshark的官方下载网站 ...

  6. Wireshark网络分析实战笔记(一)抓包过滤器

    抓包过滤器和显示过滤器的差别: 1.抓包过滤器配置在抓包之前,wireshark仅仅抓取抓包过滤器过滤的数据 2.显示过滤器配置在抓包后,wireshark已经抓取全部的数据包,显示过滤器让wires ...

  7. 更轻量的 View Controllers

    iew controllers 通常是 iOS 项目中最大的文件,并且它们包含了许多不必要的代码.所以 View controllers 中的代码几乎总是复用率最低的.我们将会看到给 view con ...

  8. 不用webservice wcf提供服务,用Rest更轻量

    从2005年开始就开始有基于服务的开发方式,到08年时候 微软和sun等公司都已经提供了很多基于服务的开发框架 . 微软 .net 平台的基于服务的框架主要有:.NET Remoting.webser ...

  9. kubernets轻量 contain log 日志收集技巧

    首先这里要收集的日志是容器的日志,而不是集群状态的日志 要完成的三个点,收集,监控,报警,收集是基础,监控和报警可以基于收集的日志来作,这篇主要实现收集 不想看字的可以直接看代码,一共没几行,尽量用调 ...

随机推荐

  1. springcloud Zuul中路由配置细节

    上篇文章我们介绍了API网关的基本构建方式以及请求过滤,小伙伴们对Zuul的作用应该已经有了一个基本的认识,但是对于路由的配置我们只是做了一个简单的介绍,本文我们就来看看路由配置的其他一些细节. 首先 ...

  2. hdu 4348 To the moon (主席树)

    版权声明:本文为博主原创文章,未经博主允许不得转载. hdu 4348 题意: 一个长度为n的数组,4种操作 : (1)C l r d:区间[l,r]中的数都加1,同时当前的时间戳加1 . (2)Q ...

  3. Hibernate 二级缓存疑难点

    一级缓存:缓存实体 二级缓存:缓存实体 Hibernate查询缓存缓存的是查询出来的实体的部分属性结果集和实体的ID(注意这里不是实体). Hibernate查询缓存:对List起作用.但是Hiber ...

  4. WCF服务安全控制之netTcpBinding的用户名密码验证【转】

    选择netTcpBinding WCF的绑定方式比较多,常用的大体有四种: wsHttpBinding basicHttpBinding netTcpBinding wsDualHttpBinding ...

  5. File /data/binlog/mysql-bin.index' not found (Errcode: 13)

    [问题] 需要开启bin-log备份/恢复数据库,但是因为本身bin-log保存的位置存储太小,并且归类性也不好,所以自己新创建了/data/binlog来保存二进制日志 在/etc/my.cnf增加 ...

  6. 前后端分离之mockjs实战demo

    基于vue-cli+webpack的demo 项目结构 axios文件夹用来创建axios相关配置: import axios from 'axios' import vue from 'vue' a ...

  7. ExpressMapper- The New .NET Mapper!

    推荐,据测试比手工映射的效率还高. https://www.codeproject.com/Tips/1009198/Expressmapper-The-New-NET-Mapper

  8. HTML5 标签语法变化和使用概念

    1.H5与H4的区别 概念的变化: H5更注重内容与结构,不再只专注于表现. 声明与标签: 新的声明背简化: <!DOCTYPE html> <meta charset=utf-8& ...

  9. Oracle - 数据库巡检脚本

    分享一个oracle数据库巡检脚本,欢迎大家使用,希望大家在用的过程中发现脚本中的错误并提出改进意见. -- 数据库巡检脚本 -- 版本号2.1 -- 该脚本仅对数据库的做一个初步的巡检,具体的优化方 ...

  10. python全栈开发之匿名函数和递归函数

    python 匿名函数和递归函数 python全栈开发,匿名函数,递归函数 匿名函数 lambda函数也叫匿名函数,即函数没有具体的名称.是为了解决一些功能很简单需求而设计的一句话函数.如下: #这段 ...