22-以太网帧分析实验
00 分钟
2023-11-20

实验目的

  1. 深入理解以太网技术及其框架结构。
  1. 分析MAC地址和以太网帧的构成,以及通过WireShark软件抓取和分析MAC数据包。
  1. 掌握以太网的基本工作原理和数据包在网络中的传输过程。

实验原理

以太网是一种广泛应用的计算机局域网技术,基于IEEE 802.3标准。它包括物理层连线、电子信号传输和介质访问层协议。
以太网利用MAC地址进行设备识别,采用总线型拓扑结构和CSMA/CD技术。
MAC地址(Media Access Control address)是网络设备在网络层面进行通信时使用的一个唯一标识符。它与设备的物理网络接口紧密关联,通常是在制造时预先烧录到网络硬件(如网卡或以太网接口)中的。MAC地址由48位(6个字节)组成,常常以12个十六进制数字表示,通常按每两个数字分隔,如00:1A:2B:3C:4D:5E。前24位(前3个字节)称为OUI(Organizationally Unique Identifier),由IEEE指派给制造商。后24位(后3个字节)是由制造商指定的,确保其旗下每个网络接口的唯一性。
实验中还将涉及到以太网帧结构的详细分析,包括前导码、帧开始符、源地址、目标地址、以太类型字段、帧校验码等。

实验设备

  • 操作系统:Windows 11
  • 网络环境:局域网
  • 软件:Cisco Packet Tracer虚拟实验环境

实验步骤

  1. 按照下图所示,连接电线构成网络
    1. notion image
  1. 配置路由器Router0的接口
    1. 可以在CLI中输入以下命令进行配置,也可以使用图形化界面
  1. 在Router0中输入以下命令,以配置DHCP左右两边的网络
    1. 点击模拟ICMP包,查看相关数据,分析在Packet tracer中模拟ICMP(ping 命令),ICMP数据包转发过程中MAC地址变化情况
        • 点击Simulation,在PC0的终端中输入ping 192.168.2.11即PC2的地址,之后点击Capture/Forward单步执行,也可以使用Auto Capture/Play进行自动执行
        • 点击Even List的Info可以查看相关信息
        notion image
    1. 安装WireShark
    1. 查看本机的MAC地址
      1. 在本机命令行中输入ipconfig/all即可看到本机的MAC地址(物理地址)
        notion image
    1. 用WireShark抓取MAC数据包:打开WireShark,选择需要抓包的方式(本机使用WLAN连接网络,故在此处选用WLAN)
      1. notion image
    1. 查看MAC数据包字段内容,并解读
    点击相应的条目即可得到其MAC数据包

    实验现象

    1. 模拟ICMP包,查看相关数据
      1. notion image
        • 第一幅:显示了从PC0到Router0的入站PDU细节
          • Layer 1: 数据包在物理层通过FastEthernet端口接收。
          • Layer 2: 数据包的以太网II帧头信息,包括源MAC地址和目标MAC地址。
          • Layer 3: IP层的信息,显示了源IP地址和目的IP地址,以及ICMP消息类型。
        • 第二幅:展示了在Router0的PDU格式,解释了以太网II帧的结构
          • 以太网II帧: 有前导码、目标MAC地址、源MAC地址、类型、数据和帧校验序列(FCS)。
          • IP: 包含头部长度、服务类型、总长度、标识、标志、片偏移、生存时间(TTL)、协议、头校验和、源IP和目的IP。
          • ICMP: 显示了类型、代码、校验和、标识符和序列号。
        • 第三幅:展示了Router0处理完入站PDU后,它将如何创建出站PDU,并将其发送到下一个目标
          • Layer 2: 目标MAC地址已经被更新为下一个目标设备的MAC地址。
          • Layer 3: IP层信息保持不变,这表明IP层是端到端的,不会在通过路由器传输时改变。
    1. ICMP数据包转发过程中MAC地址变化情况(PC0 ping PC2的情况)
      1. 其中DEST MAC是目的MAC地址,SRC MAC是源MAC地址
        NO
        Last Device
        At Device
        DEST MAC
        SRC MAC
        1
        --
        PC0
        000A.419D.4601
        0060.479E.44D7
        2
        PC0
        Switch0
        000A.419D.4601
        0060.479E.44D7
        3
        Switch0
        Router1
        0005.5ED9.6CAA
        000A.419D.4602
        4
        Router1
        Switch1
        0005.5ED9.6CAA
        000A.419D.4602
        5
        Switch1
        PC2
        000A.419D.4602
        0005.5ED9.6CAA
        6
        PC2
        Switch1
        000A.419D.4602
        0005.5ED9.6CAA
        7
        Switch1
        Router1
        0060.479E.44D7
        000A.419D.4601
        8
        Router1
        Switch0
        0060.479E.44D7
        000A.419D.4601
        9
        Switch0
        PC0
        0060.479E.44D7
        000A.419D.4601
        10
        PC0
        Switch0
        000A.419D.4601
        0060.479E.44D7
        ...
        ...
        ...
        ...
        ...
    1. MAC数据包字段内容的解读
      1. notion image
        这是一个连接终止请求,同时包含了一个对之前收到的TCP段的确认。是TCP连接终止握手过程中的一部分,表明发送方想要关闭连接。
        • Frame (帧信息)
          • Number: 数据包编号,这里为12。
          • Length: 数据包长度,显示为54字节。
          • Protocols in frame: 数据包所包含的协议层,这里是以太网(Ethernet II)、IP(Internet Protocol)和TCP(Transmission Control Protocol)。
        • Ethernet II (以太网II)
          • Destination MAC Address: 目标MAC地址XIAOMIElectr_d2:9b:5b,指定了数据包的目的物理地址。
          • Source MAC Address: 源MAC地址IntelCor_93:6f:c5(本机MAC地址),指定了发送数据包的设备的物理地址。
          • Type: 数据包类型,这里是IPv4 (0x0800),表示这是一个IPv4网络层数据包。
        • Internet Protocol Version 4 (IPv4)
          • Source IP Address: 源IP地址192.168.31.20,发送数据包的设备的逻辑地址。
          • Destination IP Address: 目的IP地址175.6.93.46,数据包的目的地的逻辑地址。
          • Total Length: 整个IP数据包的总长度。
          • Time To Live (TTL): 数据包在网络上的生存时间,这里是128,表示数据包在被丢弃前可以经过的最大路由跳数。
        • Transmission Control Protocol (TCP)
          • Source Port (源端口): 50176,这是发送数据包的设备使用的本地端口号。
          • Destination Port (目的端口): 80,这是数据包目标设备上的端口号,端口80通常与HTTP服务关联。
          • Sequence Number (序列号): 1,这是数据包的序列号,它用于确保数据的有序接收。
          • Acknowledgment Number (确认号): 1,这是接收方期望接收的下一个序列号,同时也是确认收到发送方的特定序列号的一个信号。
          • Header Length (头部长度): 20 bytes (5),指TCP头部的长度,20字节,或称为5个32位字。
          • Flags (标志):0x011 (FIN, ACK),这是TCP头部中的控制位,其中:
            • FIN: 表示发送方已经完成发送数据,并想要结束连接。
            • ACK: 表示这个段是一个确认响应,通常是对先前收到的段的回应。
          • Window (窗口大小): 32329,这是接收窗口的大小,表示接收方还可以接收的字节数,用于流量控制。
          • Checksum (校验和): 0xec0b,这是一个用于错误检测的校验值,未经验证表示该数据包的校验和尚未被确认是否正确。
          • Urgent Pointer (紧急指针): 0,用于指出数据包中的紧急数据,数值为0表示数据包中没有紧急数据。

    分析讨论

    1. MAC地址与IP地址的区别与联系
      1. MAC媒体访问控制地址(Media Access Control address),唯一标识一个网络接口在局域网(LAN)内的地址;IP互联网协议地址(Internet Protocol address)
        • 区别
          • 地址类型:MAC地址是硬件地址,与设备的物理网络接口相关;IP地址是逻辑地址,与网络拓扑结构相关。
          • 作用范围:MAC地址主要用于局域网内的数据链路层;IP地址用于跨网络的网络层。
          • 分配方法:MAC地址由制造商分配且通常不变;IP地址可以是静态分配的也可以是动态分配的(如通过DHCP)。
        • 联系
          • 相互依赖:在数据从一个设备传输到另一个设备的过程中,通常会同时使用MAC地址和IP地址。例如,当数据包离开一个设备时,它会具有源和目标的IP地址,以及当前网络段内的源和目标MAC地址。
          • 协同工作:网络上的设备使用ARP(地址解析协议)将IP地址转换为MAC地址,以便在本地网络层内正确地发送数据包。
        简而言之,MAC地址和IP地址都是网络通信中不可或缺的部分,它们使得网络设备能够在复杂的网络环境中进行精准的数据交换。
    1. 产生ICMP数据包转发过程中MAC地址变化情况的原因
        • 当数据在同一网络层内转发时(例如,从PC0到Switch0,然后到Router1),源MAC保持不变,而目的MAC会更新为下一个设备的MAC地址。
        • 当数据通过路由器传送到另一个网络层时(例如,从Switch0到Router1再到Switch1),源MAC和目的MAC都会发生变化,因为路由器在不同网络层间转发数据包时会更改这些值。
        notion image
        上图为PC0的IPv6的链接本地地址,其采用EUI-64格式的自动配置方法,在EUI-64方法中,MAC地址被分成两部分,中间插入了FFFE(在某些情况下可能是其他值),并且MAC地址的第七位(从左边数的第二位)会被反转(如果是1变成0,如果是0变成1),经过逆变换后,47FF:FE9E:44D7可以变为0060.479E.44D7
        NO
        Last Device
        At Device
        DEST MAC
        SRC MAC
        1
        --
        PC0
        Switch0接口的MAC地址
        PC0的MAC地址
        2
        PC0
        Switch0
        Switch0接口的MAC地址
        PC0的MAC地址
        3
        Switch0
        Router1
        Router1的MAC地址
        Switch0的MAC地址
        4
        Router1
        Switch1
        Switch1接口的MAC地址
        Router1的MAC地址
        5
        Switch1
        PC2
        PC2的MAC地址
        Switch1接口的MAC地址
        6
        PC2
        Switch1
        PC2的MAC地址
        Switch1接口的MAC地址
        7
        Switch1
        Router1
        PC0的MAC地址
        Switch0接口的MAC地址
        8
        Router1
        Switch0
        PC0的MAC地址
        Switch0接口的MAC地址
        9
        Switch0
        PC0
        PC0的MAC地址
        Switch0接口的MAC地址
        10
        PC0
        Switch0
        Switch0接口的MAC地址
        PC0的MAC地址
        ...
        ...
        ...
        ...
        ...

    评论
    Loading...