wireshark简介
wireshark是捕获机器上的某一块网卡的网络包,当你的机器上有多块网卡的时候,你需要选择一个网卡。
wireshark能获取HTTP,也能获取HTTPS,但是不能解密HTTPS,所以wireshark看不懂HTTPS中的内容,总结,如果是处理HTTP,HTTPS 还是用Fiddler, 其他协议比如TCP,UDP 就用wireshark
如果测试本地地址,需要在本地环回口测试,如果去外网,需要在WLAN接口测试,如果是VPN,需要用
抓包原理
那种网络情况能够抓包
1.本机环境:直接抓包本机网卡进出流量
2.集线器环境:一台服务器向另一台服务器发送数据包时经过集线器,集线器会把数据包发送给连接集线器的所有电脑
3.交换机环境:和集线器的原理差不多,但是更精确,可以配置端口镜像,ARP欺骗,MAC泛洪,其中端口镜像是比较常用的,MAC泛洪是发一些垃圾包,垃圾包携带大量MAC地址,将想要抓包的电脑的MAC挤出交换机的MAC列表,交换机找不到对应的MAC地址,就会给所有的MAC列表的电脑发送。
抓包
点击Caputre->Interfaces... 出现下面对话框,选择正确的网卡。然后点击"Start"按钮, 开始抓包
抓包窗口介绍
封包详细信息 (Packet Details Pane)
1.Frame: 物理层的数据帧概况
2.Ethernet II: 数据链路层以太网帧头部信息
3.Internet Protocol Version 4: 互联网层IP包头部信息
4.Transmission Control Protocol: 传输层T的数据段头部信息,此处是TCP
5.Hypertext Transfer Protocol: 应用层的信息,此处是HTTP协议
6.Line-based text data:http返回的页面信息
ip头部和网络层的对应关系
过滤条件中的ip和port就是ip头部的目标或源ip/port
过滤信息介绍
过滤信息分两种,一种是抓包过滤器,一种显示过滤器,顾名思义,抓包过滤器就是抓包的时候只抓取满足过滤器条件的信息,显示过滤器就是把抓包结果只显示满足过滤器的信息。
显示过滤
表达式规则
1.协议过滤
比如TCP,只显示TCP协议。
2.IP 过滤
比如 ip.src 192.168.1.102 显示源地址为192.168.1.102,
ip.dst192.168.1.102, 目标地址为192.168.1.102
3.端口过滤
tcp.port ==80, 端口为80的
tcp.srcport == 80, 只显示TCP协议的愿端口为80的。
4.Http模式过滤
http.request.method=="GET", 只显示HTTP GET方法的。
抓包过滤
使用抓包过滤器前需要先选择网卡,否则输入过滤规则后显示红色
类型Type:host、net、port
方向Dir:src、dst
协议protocol:ether、ip、tcp、udp、http、ftp
逻辑运算符:&& 与、|| 或、!非
举例说明:
1.src host 192.168.48.116 && dst post 80 抓取源地址为192.168.48.116 并且目的端口为80的信息
2.!broadcast 不要抓取广播包
3.ether src host 1C:99:57:1F:56:4E 抓取源MAC地址是1C:99:57:1F:56:4E 的信息
高级功能
数据流追踪
选中一条抓包信息右击,选中追踪流,再选中HTTP流或者TCP流等其他流,可查看如下图所示的信息
路径信息,返回信息,返回服务器,包括返回内容信息
查看对应的请求和响应
可选择如何解码信息
可参考Linux命令之抓包命令tcpdump的使用_wireshark_较真的菜鸟的博客-CSDN博客
参考:wireshark抓包工具详细说明及操作使用_wireshark使用教程-CSDN博客
原文链接:https://blog.csdn.net/weixin_43790613/article/details/113786518