首页 > 其他分享 >wireShark总结

wireShark总结

时间:2024-08-30 18:48:30浏览次数:8  
标签:总结 ACK SYN 192.168 TCP 1.104 数据包 wireShark

wireShark总结

一、常见协议包:1.ARP协议 2.ICMP协议 3.TCP协议 4.UDP协议 5.DNS协议 6.HTTP协议

1、ARP 协议

  • 简述:就像你要给朋友家送快递,但只知道朋友家的门牌号(IP 地址),不知道具体位置。这时你就去问小区物业(ARP 协议的作用),物业告诉你朋友家的具体位置(MAC 地址)。
  • 常见问题:ARP 欺骗就好比有个坏人冒充物业,给你错误的朋友家位置信息,结果你的快递就送错地方了。
  • 解决方案:可以像给重要朋友家设置专门的联系卡片一样,使用静态 ARP 缓存,手动设置正确的 IP 地址和 MAC 地址对应关系;也可以安装类似小区安保系统的防火墙,防止坏人冒充物业;还可以使用专门的检测软件,就像安排专人监督物业的工作。

2、ICMP 协议

  • 简述:好比你给朋友寄快递后,时不时去问问快递站(ICMP 协议的作用)包裹到哪了,快递站给你一些反馈信息。
  • 常见问题:可能快递站太忙了,不回应你的询问,就像 Ping 不通目标主机,可能是因为网络故障或者某些设置阻止了这种询问。
  • 解决方案:检查是不是自己的询问方式不对,就像检查防火墙设置;再看看是不是快递运输过程中出了问题,即检查网络连接。

3、TCP 协议

  • 简述:你和朋友写信交流,要先打招呼确认对方能收到信(三次握手建立连接),然后很认真地一封信一封信地交流,确保每封信都能准确无误地送到对方手里,而且顺序也不会乱。
  • 常见问题:可能因为邮路堵塞(网络拥塞)、朋友搬家了(目标主机不可达)或者朋友家邮箱坏了(服务未启动),导致信送不出去或者很久才送到,甚至信丢了。
  • 解决方案:看看邮路是不是真的堵了,优化网络设置;确认朋友是不是真的搬家了,检查网络连接和目标主机状态;检查朋友家邮箱是不是正常,看看服务有没有启动。

4、UDP 协议

  • 简述:就像你给朋友发语音消息,很快就发出去了,也不管朋友有没有收到或者顺序对不对,只要能快点传达就行。
  • 常见问题:可能朋友没收到消息,或者收到的顺序乱了,因为 UDP 协议不保证数据的可靠传输。
  • 解决方案:如果很重要的话,可以在发语音消息的时候加上一些确认的话,就像在应用层增加数据校验和重传机制;如果不是很重要,那就可以容忍这种情况。

5、DNS 协议

  • 简述:你想去一个商场(网站),但只知道商场的名字(域名),这时候你就去问导航(DNS 协议的作用)商场的具体位置(IP 地址)。
  • 常见问题:导航坏了找不到商场(DNS 服务器故障),或者根本没有这个商场(域名不存在),还有可能被坏人误导去了假商场(DNS 劫持)。
  • 解决方案:换一个靠谱的导航,即更换可靠的 DNS 服务器;确认商场名字对不对,检查域名是否正确;加强安全防范,防止被坏人误导,就像加强网络安全防护。

6、HTTP 协议

  • 简述:你在网上浏览网页,就像在逛一个超级大的虚拟商场,HTTP 协议就是你和商场之间的通道,让你能看到商场里的各种商品信息。
  • 常见问题:你想去的店铺不存在了(404 错误),商场内部出问题了(500 内部服务器错误),或者你等了很久商场的页面都没加载出来(连接超时)。
  • 解决方案:确认店铺是不是真的不在了,检查请求的资源是否存在;看看商场内部是不是出了问题,检查服务器端程序是否正常运行;优化网络设置,提高网络速度,就像让商场的通道更顺畅。

二、wireShark的使用

1、wireShark的两个模式:

混杂模式与普通模式

  • 混杂模式:混杂模式就是接收所有经过网卡的数据包,包括不是发给本机的包,即不验证MAC地址。

  • 普通模式:普通模式下网卡只接收发给本机的包(包括广播包)传递给上层程序,其它的包一律丢弃。

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

模式打开方式:点击左上角的捕获-选项,把在所有接口上使用混杂模式勾上,点击开始即可

2、WireShark过滤器使用

1.抓包过滤器语法和实例

  1. 抓包过滤器由类型Type(host、net、port)、方向Dir(src、dst)、协议Proto(ether、ip、tcp、udp、http、icmp、ftp 等)以及逻辑运算符(&& 与、|| 或、!非)组成。
    • 协议过滤:直接在抓包过滤框中输入协议名即可,如tcp只显示 TCP 协议的数据包列表(注意 HTTP 底层也是 TCP 的封装)。
    • IP 过滤:host 192.168.1.104表示特定 IP 的数据包;src host 192.168.1.104是源地址为该 IP 的数据包;dst host 192.168.1.104是目的地址为该 IP 的数据包。
    • 端口过滤:port 80表示特定端口的数据包;src port 80是源端口为该值的数据包;dst port 80是目的端口为该值的数据包。
    • 逻辑运算符:src host 192.168.1.104 && dst port 80抓取主机地址为 192.168.1.80、目的端口为 80 的数据包;host 192.168.1.104 || host 192.168.1.102抓取主机为 192.168.1.104 或者 192.168.1.102 的数据包;!broadcast不抓取广播数据包。

2.显示过滤器语法和实例

  1. 比较操作符有==等于、!=不等于、>大于、<小于、>=大于等于、<=小于等于。
    • ip 过滤:ip.src ==192.168.1.104显示源地址为 192.168.1.104 的数据包列表;ip.dst==192.168.1.104显示目标地址为 192.168.1.104 的数据包列表;ip.addr == 192.168.1.104显示源 IP 地址或目标 IP 地址为 192.168.1.104 的数据包列表。
    • 端口过滤:tcp.port ==80显示源主机或者目的主机端口为 80 的数据包列表;tcp.srcport == 80只显示 TCP 协议的源主机端口为 80 的数据包列表;tcp.dstport == 80只显示 TCP 协议的目的主机端口为 80 的数据包列表。
    • Http 模式过滤:http.request.method=="GET"只显示 HTTP GET 方法的。
    • 逻辑运算符为and/or/not:过滤多个条件组合时,使用and/or。比如获取 IP 地址为 192.168.1.104 的 ICMP 数据包表达式为ip.addr == 192.168.1.104 and icmp
    • 按照数据包内容过滤:假设以 IMCP 层中的内容进行过滤,可单击选中界面中的码流,在下方进行选中数据。右键单击选中后,选中 Select,在过滤器中显示相关内容,后面条件表达式需自己填写。如想过滤出 data 数据包中包含"abcd"内容的数据流,关键词是contains后面跟上内容,如data contains "abcd"

看到这里,基本上对 wireshak 有了初步了解。

三、Wireshark分析TCP三次握手

1、TCP 三次握手连接建立过程

第一次握手
客户端发送一个带有SYN=1ACK=0标志的数据包给服务端,以此请求进行连接。

第二次握手
当服务端收到请求并且同意连接时,会发送一个带有SYN=1ACK=1标志的数据包给发送端,告知客户端可以进行通讯了,并且要求客户端发送一个确认数据包。

第三次握手
客户端接着发送一个带有SYN=0ACK=1的数据包给服务端,告诉服务端连接已被确认。至此,TCP 连接建立,双方可以开始通讯了。

2、wireshark抓包获取访问指定服务端数据包

  1. :启动 wireshark 抓包,打开浏览器输入www.huawei.com

  2. :使用ping www.huawei.com获取 IP。

  3. :输入过滤条件获取待分析数据包列表ip.addr == 211.162.2.183

图中可以看到 wireshark 截获到了三次握手的三个数据包。第四个包才是 HTTP 的,这说明 HTTP 的确是使用 TCP 建立连接的。

3、第一次握手数据包

客户端发送一个 TCP,标志位为 SYN,序列号为 0,代表客户端请求建立连接。如下图。

数据包的关键属性如下:

  • SYN:标志位,表示请求建立连接。
  • Seq = 0:初始建立连接值为 0,数据包的相对序列号从 0 开始,表示当前还没有发送数据。
  • Ack =0:初始建立连接值为 0,已经收到包的数量,表示当前没有接收到数据。

4、第二次握手的数据包

服务器发回确认包,标志位为SYN,ACK。将确认序号(Acknowledgement Number)设置为客户的 ISN 加 1 即 0+1=1,如下图。

数据包的关键属性如下:

  • [SYN + ACK]:标志位,同意建立连接,并回送SYN+ACK
  • Seq = 0:初始建立值为 0,表示当前还没有发送数据。
  • Ack = 1:表示当前端成功接收的数据位数,虽然客户端没有发送任何有效数据,确认号还是被加 1,因为包含SYNFIN标志位。(并不会对有效数据的计数产生影响,因为含有SYNFIN标志位的包并不携带有效数据)。

5、第三次握手的数据包

客户端再次发送确认包(ACK),SYN标志位为 0,ACK标志位为 1。并且把服务器发来ACK的序号字段+1,放在确定字段中发送给对方。并且在数据段放写ISN的+1,如下图。

数据包的关键属性如下:

  • ACK:标志位,表示已经收到记录。
  • Seq = 1:表示当前已经发送 1 个数据。
  • Ack = 1:表示当前端成功接收的数据位数,虽然服务端没有发送任何有效数据,确认号还是被加 1,因为包含SYNFIN标志位(并不会对有效数据的计数产生影响,因为含有SYNFIN标志位的包并不携带有效数据)。

就这样通过了 TCP 三次握手,建立了连接。开始进行数据交互。

6、数据交互过程数据包关键属性说明

在 TCP 层,有个FLAGS字段,这个字段有以下几个标识:SYN, FIN, ACK, PSH, RST, URG。如下:

其中,对于我们日常的分析有用的就是前面的五个字段。它们的含义是:SYN表示建立连接,FIN表示关闭连接,ACK表示响应,PSH表示有 DATA 数据传输,RST表示连接重置。

标签:总结,ACK,SYN,192.168,TCP,1.104,数据包,wireShark
From: https://www.cnblogs.com/weizhongqin-wcj/p/18389329

相关文章

  • 【C#】一个喜欢用Python的菜狗在尝试Linq之后总结的常见用法以及示例
    1.筛选(Where)筛选集合中的元素。类似python中列表推导式中的if示例int[]numbers={1,2,3,4,5,6};varevenNumbers=numbers.Where(n=>n%2==0);foreach(varnuminevenNumbers){Console.WriteLine(num);}//输出:2,4,6python中的实现[if......
  • Guava工具总结
    Table双键MappublicclassOTest{publicstaticvoidmain(String[]args){Map<String,Map<String,Integer>>map=newHashMap<>();//存放元素Map<String,Integer>workMap=newHashMap<>();wor......
  • Mockito用法总结
    Mockito的是用来做什么的Mockito主要用于单元测试过程中模拟被调用方法的依赖<dependency><groupId>org.mockito</groupId><artifactId>mockito-core</artifactId><version>4.8.0</version><scope>test</scope></depende......
  • 每日技术:初始wireshark
     什么是wireshark?今天在掘金上学习一篇关于tcp的文章,上面介绍了一个工具叫wireshark,没错我也是头一回听说这玩意儿。以下内容来自百度百科Wireshark:Wireshark是一个网络封包分析软件。网络封包分析软件的功能是撷(xie)取网络封包,并尽可能显示出最为详细的网络封包资料。Wire......
  • 差模电感与共模电感总结
    差模电感与共模电感总结差模干扰信号和共模干扰信号差模干扰信号是两个输入电源线之间反方向构成的电流回路信号。共模干扰信号是两个输入线上同方向与大地构成的电流回路信号。简而言之:差模信号就是两个大小相等、方向相反的信号。共模信号就是两个大小相等、方向相同的信......
  • 2024.8.29 总结
    上午&中午按计划学了李超线段树,照着题解写过了模板题。然后本来打算去做题单里的一道Ynoi紫来练dsuontree,于是边写题解边想,结果写着写着就不会了,发现好像dsuontree不太好做,好像是两只log的。还可能大概会一个单log大常数线段树合并。看题解区发现有跑出dfs序后......
  • 三分钟总结开源流程表单的优势特点
    实现流程化办公,可以借助低代码技术平台、开源流程表单的优势特点。作为当前较为理想的平台产品,低代码技术平台凭借够灵活、好操作、可视化界面的优势特点,得到了通信业、医疗、高校等很多行业客户朋友的喜爱与支持。今天一起来看看开源流程表单的优势特点,一起了解它为何能助力企业......
  • MySQL 支持两种主要类型的备份方法:物理备份和逻辑备份。这两种备份方法各有优缺点,适用
    物理备份物理备份是指直接备份MySQL数据库的物理文件,包括数据文件、日志文件、配置文件等。物理备份通常分为冷备份(脱机备份)和热备份(联机备份)。冷备份(ColdBackup)定义: 在数据库完全停止的情况下进行的备份。特点:  简单快速,因为只需复制文件。可以在任何时间点进行。不需要锁......
  • 设计模式总结(二):结构型模式
    @TOC结构型模式1.代理模式1.1静态代理用户只关心接口功能,而不在乎谁提供了功能。上图中接口是Subject接口真正实现者是上图的RealSubject,但是它不与用户直接接触,而是通过代理。代理就是上图中的Proxy,由于它实现了Subject接口,所以它能够直接与用户接触。用户调用Proxy的时候,Pr......
  • 阿里云服务器部署Sonic总结
    1.购买阿里云服务器访问阿里云官网,选择合适的云服务器购买购买成功后创建ECS云服务器下载AlibabaCloudClient创建AccessKey并保存打开AlibabaCloudClient,添加账号2.安装docker选择操作—>启动远程连接(SSH)snapinstalldockerdocker-vdocker-compose-v3.......