Wireshark:抓取 HTTP 包

开篇简要

我身边很多开发同事,甚至包括一些刚入职的测试工程师都不喜欢使用抓包工具,遇到问题凭着自己的感觉在那里侃侃而谈,既耽误时间又没有解决问题,有时候还伤了和气,明明可以使用工具可以解决的问题,偏偏要各抒己见。

说到 更是很少人使用,至少我身边的同事是这样。如果让你一直去看那些 RFC 等网络协议,不到半小时估计你就会感到疲惫,但是结合 来理解网络协议就会感到无比的快乐,何乐而不为呢?!

继续阅读下去,你可以了解到如下几个知识:

1. 如何抓取 PC 端、iOS 设备的网络包?

2. 使用一些过滤条件如何查看包的内容?

3. 如何在 中显示域名?

PC 端的 HTTP 请求

打开 ,选择对应的网口,因为我使用的是无线网络(WiFi),所以选择 这个网口,你可以根据你的网络使用情况来选择对应的网口,如下图:

可以看到对应有网络数据的网口, 还在右侧显示对应的波浪,很人性化的设计。双击对应的网口,就可以使用 来抓包看数据了。

下面我就以 PC 端访问 来演示 HTTP 请求的抓包情况。

查看本机的 ip 地址,我的是 , 再来看一下 对应的 ip 地址:

显示结果如下:

那么, 就是其对应的 ip 地址。总的来说,对于 PC 端,源地址是 ,目的地址是 ,对于服务器来说,正好反过来。

首先在过滤器中输入 , 如下图所示:

然后打开浏览器,我使用的是 Chrome,打开 网站站点, 显示如下(部分截图):

改变一下过滤语句,将之前的 改为 , 显示如下:

可以选择任何一个请求,展示区域如下:

上图中的三个区域分别对应的是 中的 , , 三个视图。

选择任何一个请求,在对应的 可以看到该请求的详情。

刚才使用的过滤条件只看到 PC(客户端)的请求,没有看到服务器返回信息,我们修改一下过滤条件为 ,这样就看以看到服务器的回包信息了,如下图所示:

双击进入该响应,就可以看到对应的响应数据详情了。

iOS 设备的 HTTP 请求

跟查看 PC 端的 HTTP 请求方式基本一致,只是此时的本机 ip 地址是手机端的而不是 pc 端的。

初识 Wireshark 中已经跟大家分享过如何去连接 iOS 设备到 抓包了,这里不再赘述。

至于查看 iOS 设备的 ip 地址,就很简单了,打开 看一下详情就知道了。

显示域名

如果你经常使用 抓包,就可以发现 展示的请求中都是以域名来显示的,但是在 都是显示 ip 地址,或许因此感到不适,那么, 能否展示域名呢?

是可以像 那样展示域名的,只是它默认显示 ip 地址罢了。

打开 Preferences,如图:

这样 的显示就是另一番景象了,不信,你看下图:

当然,你也看出来了,原来的过滤条件还是可以使用的。

你还可以使用其他的过滤条件,如下面的一些过滤条件,能帮你快速定位你要的数据。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180901G0V7LR00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券