Wireshark下载、Wireshark使用、Wireshark抓包、ARP抓包、ICMP抓包、TCP抓包、HTTP抓包

  • Wireshark下载
  • Wireshark抓包即快速定位数据包技巧
    • 常见协议包
    • 抓包模式介绍:混杂模式/普通模式
    • 关闭混杂模式
    • 过滤器使用
      • 根据源IP地址筛选
  • 常用协议数据包分析
    • ARP协议
    • ICMP协议
    • TCP协议
      • TCP报文分析
      • TCP三次握手建立连接
      • TCP四次挥手断开连接
        • 三次挥手报文
        • 四次挥手报文
        • 总结
      • 基于TCP/UDP协议的应用层协议有哪些?
    • HTTP协议

Wireshark下载

Wireshark相关链接:

官网:https://www.wireshark.org/
下载:https://www.wireshark.org/download.html


下载对应版本即可,安装就默认安装即可(不要改安装位置),否则可能不会自动安装插件,导致识别不了网卡信息。

Wireshark抓包即快速定位数据包技巧

常见协议包

常见的有以下协议类型:

  • ARP协议
  • ICMP协议
  • TCP协议
  • UDP协议
  • DNS协议
  • HTTP协议

抓包模式介绍:混杂模式/普通模式

  • 混杂模式概述:混杂模式就是接收所有经过网卡的数据包,包括不是发给本机的包,即不验证MAC地址。默认就是混杂模式。
  • 普通模式概述:普通模式下网卡只接收发给本机的包(包括广播包)传递给上层程序,其它的包一律丢弃。

一般来说,混杂模式不会影响网卡的正常工作,多在网络监听工具上使用,默认是混杂模式。

关闭混杂模式

先随便选中一个连接,不选后续修改捕获选项的开始按键是灰色的,我连的是无线,所以监控WLAN


然后点击捕获,再点击选项

变更之后,点击开始即可

过滤器使用

列属性从左到右表示

  • No:序号
  • Time:时间
  • Source:源IP地址
  • Destination:目标IP地址
  • Protocol:协议类型
  • Length:数据包长度
  • Info:数据包的描述

从抓取的很多包中筛选出你想要的,不区分大小写,一般用小写,

筛选TCP

筛选UDP,可以看到很多都是协议,原因就是这些都是基于UDP的传输层之上的协议

以DNS为例,客户端向DNS服务器查询域名,一般返回的内容都不超过512字节,用UDP传输即可。不经过三次握手,这样DNS服务器负载更低,响应更快。理论上说,客户端也可以向DNS服务器查询时使用TCP,但事实上,很多DNS服务器进行配置的时候,仅支持UDP查询包。

根据源IP地址筛选

ip.src_host:表示源IP地址
ip.dst_host:表示目标IP地址
ip.addr:不区分源IP地址还是目标IP地址,二者中有一个包含就会筛选出来
or:或者
and:并且
==:数值相等

# 源IP地址192.168.2.7并且目标IP地址101.80.48.159
ip.src_host == 192.168.2.7 and ip.dst_host == 101.80.48.159

常用协议数据包分析

协议分析的时候关闭混杂模式,避免一些干扰的数据包
着重看最后的协议数据包选项

ARP协议

ARP协议: 地址解析协议(Address Resolution Protocol) ,是一个通过解析网络层地址来找寻数据链路层地址的网络传输协议,它在IPv4中极其重要。ARP是通过网络地址来定位MAC地址。


请求包:

请求数据包中,目标MAC地址都是00表示不知道目标MAC地址,只知道目标IP地址

应答包:

对应的响应数据包,可以看到应答包补全了自己的MAC地址,而且应答包的源IP地址和目标地址与请求的地址是相反的,因此根据源IP地址和目标IP地址可以判断请求和响应数据包哪个是一对。

两个数据包的请求过程:广播请求,单播回应

# 192.168.2.1 广播:谁有192.168.2.7的MAC地址?
Who has 192.168.2.7? Tell 192.168.2.1# 192.168.2.7 应答:192.168.2.7的MAC地址50:5b:c2:c3:25:d9
192.168.2.7 is at 50:5b:c2:c3:25:d9

ICMP协议

ICMP协议: Internet控制报文协议(Internet Control Message Protocol)。它是TCP/IP协议簇的一个子协议,用于在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可达、路由是否可用等网络本身的消息。这些控制消息虽然并不传输用户数据,但是对于用户数据的传递起着重要的作用。

简单的触发ICMP方式,ping 包

可以看到,一共是4对8个,一问一答的形式。

请求包:

应答包:

两个数据包的工作过程:
本机发送一个ICMP Echo Request的包
接受方返回一个ICMP Echo Reply,包含了接收到数据拷贝和一些其他指令

TCP协议

TCP协议: 传输控制协议(TCP,Transmission Control Protocol)是一种面向连接的、可靠的、基于字节流的传输层通信协议,为了在不可靠的互联网络上提供可靠的端到端字节流而专门设计的一个传输协议(可靠原因:三次握手四次挥手),也是使用最广泛的传输控制协议。

不了解三次握手四次挥手(三次挥手)的可以先看下:
TCP和UDP、TCP三次握手、TCP为什么要进行三次握手不是两次、TCP四次挥手、TCP和UDP的区别、TCP抓包分析、TCP什么时候三次挥手

TCP报文分析

物理机想和client建立连接
过滤器选择TCP、ip.addr选择xhell连接的ip地址即可

TCP三次握手建立连接

三次握手就是三次确认的过程

第一次握手,物理机发送SYN数据包给client

第一次握手的Flags标志位如下

第二次握手,client同意连接,client发送SYN+ACK给物理机

第三次握手,物理机发送ACK确认到client

前面三次握手是TCP建立连接的过程,后面就是相互通信,这个时候seq会根据数据包的大小改变
可以查看图表,通过菜单:统计>流量图,选择对应类型

TCP四次挥手断开连接

三次挥手报文

使用关闭按钮关闭终端

从图上报文看,可以发现少了一次挥手,少一次ACK确认,变成了三次挥手,这是因为TCP 延迟确认机制。

当被动关闭方在 TCP 挥手过程中,如果「没有数据要发送」,同时「没有开启 TCP_QUICKACK(默认情况就是没有开启,没有开启 TCP_QUICKACK,等于就是在使用 TCP 延迟确认机制)」,那么第二和第三次挥手就会合并传输,这样就出现了三次挥手。

四次挥手报文

本机打开终端(监控的是WLAN),使用curl发送http请求

# -I:仅返回头部信息
curl -I baidu.com

总结

四次挥手,断开连接

1.服务端FIN :Seq = a , Ack = b #我想断开连接
2.客户端ACK:Seq = b, Ack = a+1 #收到,断开吧
3.客户端FIN :Seq = b, Ack = a+1 #我也想断开连接
4.服务端ACK:Seq = a+1, Ack = b+1 #收到,断开吧

三次挥手,断开连接

1.客户端FIN :Seq = a , Ack = b #我想断开连接
2.服务端FIN :Seq = b, Ack = a+1 #收到,断开吧。我也想断开连接
3.客户端ACK:Seq = a+1, Ack = b+1 #收到,断开吧

基于TCP/UDP协议的应用层协议有哪些?

TCP/UDP都是传输层的协议 (上面是应用层,下面是网络层IP层)

1.基于TCP的应用层协议有:HTTP、FTP、SMTP、TELNET、SSH
协议 全称 默认端口
HTTP ( 用的最多) HyperText Transfer Protocol(超文本传输协议) 80
FTP File Transfer Protocol (文件传输协议) 20用于传输数据,21用于传输控制信息
SMTP Simple Mail Transfer Protocol (简单邮件传输协议) 25
TELNET Teletype over the Network (网络电传) 23
SSH Secure Shell 22
2.基于UDP的应用层协议:DNS、TFTP(简单文件传输协议)、SNMP:简单网络管理协议
协议 全称 默认端口
DNS Domain Name Service (域名服务) 53
TFTP Trivial File Transfer Protocol (简单文件传输协议) 69
SNMP Simple Network Management Protocol (简单网络管理协议) 通过UDP端口161接收,只有Trap信息采用UDP端口162。
NTP Network Time Protocol (网络时间协议) 123
RADIUS是Remote Authentication Dial In User Service的简称,即远程验证拨入用户服务.
RADIUS协议的认证端口号为1812(1645端口由于冲突已经不再使用),计费端口号为1813或(1646端口由于冲突已经
不再使用).

HTTP协议

HTTP是TCP的上层协议,因此过滤时用TCP也可以,用HTTP过滤分为会更小

本机打开终端(监控的是WLAN),使用curl发送http请求

# -I:仅返回头部信息
curl -I baidu.com


用本机终端curl的,因此,发起的源地址为IPv4地址

抓包

只过滤curl这个相关的,手动输入过滤器过滤信息、或者选中一条,右键跟踪流,执行对应流的跟踪,都可以整理出这个请求的完整跟踪会话。


可以看到这是一次完整的三次挥手,建立连接,发送数据,四次挥手,断开连接的一个过程。

Wireshark下载、Wireshark使用、Wireshark抓包、ARP抓包、ICMP抓包、TCP抓包、HTTP抓包相关推荐

  1. 【抓包工具】win 10 / win 11:WireShark 下载、安装、使用

    目录 一.WireShark 下载 二.WireShark 安装 (1)双击运行安装程序 (2)Choose Components:选择组件 (3)Additional Tasks:附加任务 (4)C ...

  2. 玩转wireshark系列——抓取ARP、IP、UDP、FTP包【转】

    - 抓取ARP包 https://blog.csdn.net/u011416247/article/details/80866725 本实验使用的版本是wireshark2.4.7版,打开软件,选择& ...

  3. linux下抓包工具 wireshark,网络抓包工具Wireshark下载安装使用详细教程

    叮嘟!这里是小啊呜的学习课程资料整理.好记性不如烂笔头,今天也是努力进步的一天.一起加油进阶吧! 一.关于Wireshark Wireshark(前身 Ethereal)是一个网络包分析工具.该工具主 ...

  4. 【Wireshark系列十】wireshark怎么抓包、wireshark抓包详细图文教程

    wireshark怎么抓包.wireshark抓包详细图文教程 wireshark是非常流行的网络封包分析软件,功能十分强大.可以截取各种网络封包,显示网络封包的详细信息.使用wireshark的人必 ...

  5. FTP协议中的登录 上传 下载 新建目录 删除目录 的wireshark包分析(一文看完TCP包分析,附源文件,ppt,操作视频)

    ​​​​​​​目录 一原理 二.FTP登录 三.FTP下载 四.FTP上传 五.FTP新建目录 六.FTP删除目录 一原理 前言:TCP/IP四层模型和OSI模型对照,以及FTP在模型中的位置. • ...

  6. wireshark使用_使用 Wireshark 抓取数据包

    很多时候, 在调试数据通信时,如果需要更加专业底层的通信分析,我们就必须借助其他专业的三方工具来进行故障排查. 其中功能最完善也是比较通用的方法就是使用"Wireshark"对底层 ...

  7. Wireshark下载安装和使用教程

    本文转载于Wireshark下载安装和使用教程. Wireshark(前身 Ethereal)是一个网络包分析工具.该工具主要是用来捕获网络数据包,并自动解析数据包,为用户显示数据包的详细信息,供用户 ...

  8. 4.Wireshark下载安装和使用教程

    我是Allen,我的公众号是[CodeAllen],关注回复[1024]获取资源,程序员技术交流①群:736386324 Wireshark(前身 Ethereal)是一个网络包分析工具.该工具主要是 ...

  9. 通过wireshark下载微信小程序视频一例

    一.准备 wireshark   下载地址[https://www.wireshark.org/download.html] 微信 windows版 二.打开wireshark 打开wireshark ...

最新文章

  1. 三线压力传感器原理_进气压力传感器原理与检修
  2. 跨专业选修C语言看什么书,跨专业考研如何选择?!!!!!
  3. 香帅的北大金融学课笔记 -- 金融学专题
  4. redchat怎么编写shell脚本_如何写shell脚本?尝试自己编写一个简单脚本
  5. 前端学习(760):对象导读
  6. 直通BAT必考题系列:深入详解JVM内存模型与JVM参数详细配置
  7. hdu5693 D gamehdu 5712 D++ game
  8. 十个不可不看的Matlab GUI
  9. 学习Enroll例程
  10. 为什么阿里巴巴的市值比京东高,世界500排名比京东靠后?
  11. 诞生一年来,V 语言还好吗?
  12. 论文阅读(XiangBai——【CVPR2017】Detecting Oriented Text in Natural Images by Linking Segments)...
  13. strtol ( )【C语言库函数源代码】
  14. 深圳大数据学习:怎样进行大数据的入门级学习?
  15. mpa和pis_扭矩换算mpa(压力与扭矩换算)
  16. ios课堂派怎么提交附件_iOS怎么在课堂派上传文件?
  17. uniapp - app 获取短信内容
  18. 淘宝美工设计就业怎么样?零基础学淘宝美工设计怎么学?
  19. Android如何设置按钮图片(控件图片)大小自适应
  20. 在线JS代码调试网站简介 JSFiddle JSBin JSRUN

热门文章

  1. Spring Data JPA 自定义Repository接口与子接口
  2. 扔掉FPN来做目标检测,YOLOF开源:你只需要看一层特征|CVPR2021
  3. 会声会影剪切合并歌曲教程
  4. [计算机视觉] 手把手教你如何生成高清的AprilTag
  5. HoloLens2初入——Unity远程调试时启用眼动追踪和手势追踪功能
  6. 【正点原子Linux连载】第三十八章 根文件系统构建 -摘自【正点原子】I.MX6U嵌入式Linux驱动开发指南V1.0
  7. QtDesigner设计的界面适应高分辨率屏幕
  8. 苹果itunes官方下载教程
  9. SecureCRT强制卸载
  10. java jcombobox 样式_JCombobox组合框效果实现