手把手教你用 wireshark 抓包

不少人觉得抓包是一个很高级的东西,感觉涉及到了 络的知识,相信不少从业互联 行业的人对抓包是没有概念的,做web开发的同学可能比较熟悉使用 chrome 的开发者面板来进行抓包,但是对于 wireshark 或者是 tcpdump 这类的工具却并不熟悉,本篇文章就可以让你快速上手 wireshark 的基础使用,话不多说,快来体验吧

1.下载 wireshark 软件

  工欲善其事必先利其器,没有工具咋干活嘞,wireshark 的下载是十分简单的,这里我推荐使用腾讯软件中心
的安装包,这个平台包括了大多数常用的软件,且安全无毒,企鹅爸爸还是做了一件好事的,下载wireshark
这是个十分强大的工具,跟fiddler 不同的是,他几乎可以抓到所有类型的包,例如 TCP , UDP, ICMP, HTTP 等,而 fiddler 只能抓取 HTTP 的包

2.wireshark 的基础面板介绍

点击开始是这样的:

经历了三次握手,我们可以简单认为已经双方已经确认了一个通讯链路,这个连接可以是长连接也可以是短连接,这点我们先不纠结,在这里还不是重点哈,我们可以看到,在第四个客户端请求 文中,发送了一个 GET 请求请求获取资源,然后服务端响应了一个 404 的 文,说明没有找到资源,这是一个最为简单的请求案例了,只包含了握手和一来一回的两个请求,却也是一个较为完整的案例

4.配置 wireshark 解析 https 请求

原理:配置 chrome 浏览器 DEBUG 日志中的握手信息生成密钥,wireshark 获得对称加密密钥对密文进行解密

4.1 配置 Chrome 输出 DEBUG 日志:

5. 文结构

这个软件会帮我们解析 文,并且拆分成各层的结构给我们查看,也就是说,我们可以看到在每一层中数据的大致样貌,在 络中,可以没上层,但是必须有下层,这一点可以用电梯来记忆,上下电梯都是必须顺序上去,顺序下来,不可能会跳过中间的某一层。在每一层中,会加上(或者去除)属于该层的额外补充数据(头部或者尾部),之所以 络需要分层,也是有原因的

分层的好处: 例如升级 HTTP2.0 时,应用层在升级,但是 络层却没有影响

分层的坏处:主要是 络传输,可能会造成数据的延迟,可以使用Intel的dpdk来绕过内核中的处理流程,这个包是一个用户态驱动和数据结构及算法的套件

在 络学习中,抓包是必不可少的一项技能,通过抓包分析数据在每一层中的变化以及数据结构和内容,有利于我们深入解决相关问题,后面我会出更多和 络相关的文章,和大家一起探索 络世界。

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2020年4月6日
下一篇 2020年4月6日

相关推荐