zoukankan      html  css  js  c++  java
  • 三次握手wireshark抓包分析,成功握手和失败握手

    启动
    点击start出现下面的对话框

    wireshark是捕获机器上的 某一块网卡的网络包,当机器上有多块网卡的时候,需要选择一个网卡进行捕获操作。
    选择网卡
    >主页面上,直接点击选中后start
    >capture->interfaces,选择后start

    窗口介绍

    1. Display Filter(显示过滤器), 用于过滤已经捕获到的数据
       PS:过滤器分为显示过滤器和捕获过滤器。捕获过滤器用来过滤捕获的封包,以免捕获到过多的数据。
           捕获过滤器的设置方式,capture->capture filters
    2. Packet List Pane(封包列表), 显示捕获到的封包, 有源地址和目标地址,端口号。 颜色不同,代表不同的协议。
    3. Packet Details Pane(封包详细信息), 显示封包中的字段
        各行信息说明如下:
             Frame:  物理层的数据帧概况
              Ethernet II:  数据链路层以太网帧头部信息
              Internet Protocol Version 4:  互联网层IP包头部信息
             Transmission Control Protocol:  传输层T的数据段头部信息
              Hypertext Transfer Protocol:  应用层的信息
    4. Dissector Pane(16进制数据)
         16进制数据查看面板,也叫做解析器。这里显示的内容与“封包详细信息”中相同,只是改为以16进制的格式表述。
    5. Miscellanous(地址栏)

    三次握手抓包过程分析
       首先来一张三次握手经典图解

    下面使用wireshark实际分析三次握手过程
    1.打开wireshark,打开浏览器输入网址blog.csdn.net/hello_yz并访问;
    2.停止捕获 ,红方块。不停止的话后面一直抓一直抓......;
    3.在封包列表中可以找到下图数据:
      
    在图中可以看到,访问blog.csdn.net/hello_yz网站过程中,wireshark截获到了三次握手的三个数据包,第四个包才是http的。这也说明http确实是使用TCP建立连接的。

    下面进行三个数据包的详细分析。
    首先对 封包详细信息分析说明
    选中一条TCP协议数据包,它的封包详细信息如下图:

    第一次握手数据包,可以看到客户端发送一个TCP,标志位为SYN,序列号为0, 代表客户端请求建立连接。如下图:

    第二次握手数据包,可以看到服务器发回确认包, 标志位为 SYN,ACK. 将确认序号ACK设置为1.如下图:

    第三次握手数据包,可以看到客户端再次发送确认包(ACK) ,标志位为ACK,将sequence+1.如下图:

    经过上述三次握手过程,即建立了HTTP连接。

    当三次握手无法顺利进行时,也就不能建立连接。
    为了避免抓到过多冗余数据,可以进行捕获过滤器设置
    在host文件中添加如下数据便于测试
    102.54.94.97      www.oa.com
    捕获过滤器设置如下图:
    capture->capture filter->new

    Filter name自己随意取,host www.oa.com表示只捕获主机名为www.oa.com的数据包
    然后,capture->option,选好之后start

    抓到的数据包如下所示,可以看到在客户端发出第一次握手的请求后,没有得到服务器的应答,握手失败,无法建立连接。

  • 相关阅读:
    Java-单机版的书店管理系统(练习设计模块和思想_系列 二 )
    HDOJ 1279 验证角谷猜想
    HDOJ 1266 Reverse Number(数字反向输出题)
    lucas定理
    CRT && exCRT模板
    exgcd模板
    洛谷P4774 屠龙勇士
    洛谷P1477 假面舞会
    洛谷P2704 炮兵阵地
    CF1080
  • 原文地址:https://www.cnblogs.com/dyllove98/p/3192083.html
Copyright © 2011-2022 走看看