简介
????Ethernet II协议位于五层OSI模型中的第二层,属于链路层的协议。
一、协议
1、协议结构
前导包 | 目的mac地址(DMac) | 源mac地址 (SMac) | 类型(Type) | 数据(Playload) | 校验(FCS) |
---|
8 Byte 0 1间隔 | 6 Byte 目的地址 | 6 Byte 源地址 | 2 Byte | 46 ~ 1500 Byte | 4 Byte CRC检验 |
- 前导包: 占8个字节,0 1 相间隔组成。其作用是用于给基站识别即将到来的数据。
- 目的mac地址: 接收设备的mac地址
- 源mac地址: 发送设备的mac地址
- 类型: 占2个字节,用于标记数据(playload)的协议类型。假设收到的是ARP数据,那么Type就是0x0806
类型(Type) | Playload中的协议类型 |
---|
0x0800 | IPv4(Internet Protocol Version 4) | 0x0806 | ARP (Address Resulotion Protocol) | 0x0835 | RARP (Resever Address Resulotion Protocol) | 0x86DD | IPv6 (Internet Protocol Version 6) |
- 数据: 46-1500个字节
- 校验: 4个字节,具体算法暂不深入研究,用于核对数据是否接收正确
二、抓包分析
Wireshark抓包: 图中数据可以发现看不到前导包与校验(FCS),因为网卡进来的数据是已经校验正确的数据包,会相应的处理掉了前导包和FCS,数据不正确的包已经被丢弃了。
分析数据可以得出:
- 数据是由mac为2c:f0:5d:56:70:20 ? ec:41:18:1d:97:93的设备,mac填充为高位字节在前。
- Playload装载的是IPv4协议。
总结
1、Ethernet II是目的mac地址在前,源mac地址在后。 2、Type用于表示Playload的数据类型,分别有IPv4(0x0800)、ARP(0x0806)、RARP(0x0835)、IPv6(0x86DD) 3、Wireshark接收到的数据包均为网卡校验正确的数据包,所以没有了前导包与校验(FCS)数据。
|