昨天对接一个设备时有一个接口总是调试不通,对方让我给他抓包看看,我哪会呀,就马上恶补了一波怎么抓包,写个帖子记录一下,算是一个学习笔记。
1. 抓包是什么?
在学习怎么抓包之前肯定要知道抓包是什么。
抓包(packet capture)就是将网络传输发送与接收的数据包进行截获、重发、编辑、转存等操作,也用来检查网络安全。抓包也经常被用来进行数据截取等。
2. 为什么抓包?
- 验证请求和响应:通过抓包,可以捕获接口请求和响应的数据包,并验证请求的参数、头部信息和响应的状态码、返回数据等是否符合预期。这在自动化测试脚本中非常有用,可以通过抓包工具提供的API或插件,解析数据包并进行断言验证。
- 监控接口性能:通过抓包,可以获取接口的响应时间、吞吐量等性能指标,从而监控接口的性能表现,并进行性能优化。
- 接口调试和故障排查:当自动化接口测试出现问题时,抓包可以帮助定位问题所在。通过捕获相关的数据包,可以分析请求和响应的细节,找出问题的根本原因。
- 安全测试:抓包可以用于安全测试,例如检测是否存在明文传输、敏感信息泄露等安全漏洞。
- 网络调试和分析:抓包工具可以实时捕获并详细显示各种类型数据包,可以通过多种方式过滤数据包,还可以进行多种统计分析,这对于网络调试和分析是非常有用的。
需要注意的是,抓包对加密数据是没有效果的,需要对握手包进行解密才可以得到需要的敏感数据。
3. 怎么使用Wireshark进行抓包?
1. 安装Wireshark
在wireshark官方网站下载并安装软件。安装过程一直next就可以,推介下载稳定版本。
2. 选择网络接口
启动Wireshark后,选择要进行抓包的网络接口。通常情况下,Wireshark会自动检测并列出可用的网络接口。我这里选择以太网2。
3.开始抓包
点击菜单栏中的捕获中的“开始”按钮或者双击接口,Wireshark将开始监听所选网络接口上的数据流量。
4. 过滤数据包
为了方便分析,可以使用过滤器功能来显示特定的数据包。过滤器支持多种过滤条件,例如IP地址、端口号、协议类型等,wireshark默认有几个过滤器示例,可以根据示例来增加你自己的过滤器。
5. 停止抓包
在抓包完成后,点击“停止捕获”按钮,Wireshark将停止监听数据流量
6. 分析数据包
Wireshark提供了多种工具来分析数据包的内容,例如数据包列表、协议树、数据包详情等。可以通过这些工具来查看每个数据包的详细信息,并进行协议解析、统计分析等操作。
7. 导出数据包
如果需要保存捕获的数据包,可以使用Wireshark提供的导出功能或者快捷键Ctrl+S,将数据包导出为多种文件格式,例如PCAP、CSV等,我这里就选择默认的类型。
需要注意的是,使用Wireshark进行抓包需要具有管理员权限,并且可能会对网络性能产生一定的影响。在进行抓包时,应该遵循相关法律法规和道德准则,不要侵犯他人的隐私和知识产权。