上文我们已经知道环境实验的配置,有不懂的可以去查看我的上一篇文章,链接放这里了。华为hcia------Datacom实验指南------以太网帧和IPV4数据包格式(一)
这篇文章我们重点分析这些数据包。
以太网格式
首先以太网是数据链路层的东西,帧是数据链路层的数据单元,当源设备和目的设备在同一个网段下,以太网帧头部封装的是源设备的mac地址信息,目的设备的mac信息,当源设备和目的设备不在同一个网段下,封装的是源mac地址信息和下一跳路由设备接口的mac地址信息。
其中数据帧每经过一个ip网段,它的源mac地址信息和目的mac地址信息都会变化。
目前主要的帧格式有两种一种是Ethernet II帧还有一种是IEEE 802.3帧。其中Ethernet II是目前主要用的。
Ethernet II帧
Ethernet II帧的结构
其中DMAC里面封装的是目的设备的MAC地址信息,SMAC里面分装的是源设备的MAC地址信息,TYPE是类型用来标示上层协议类型,列如IPV4(0X800),DATA里面包含了所有上层协议数据,FCS是用来对帧的完整性进行校验,因为校验帧是在物理层进行的,校验完成后就会删除掉FCS,所以在数据链路层中不会显示出来。
还有一种带vlan标签的数据帧,这种帧会在SMAC和TYPE之间加上一个4Byte的tag,里面会带有vlanID的标签,TPID标签协议标识

抓包分析
不带vlan标签的数据帧

我们用客户端ping服务器,对LSW1交换机的1号端口进行抓包分析,我们看到在这个数据包中很明显的可以看到包含了DMAC,SMAC,TYPE的信息,目的设备的MAC地址是(00:e0:fc:bc:27:fc),源设备的MAC地址是(54:89:98:f8:73:47),上层协议是IPV4。
带vlan标签的数据帧
我们抓一个从LSW1交换机2号端口发出来的数据帧,这里我们可以很明显的看到有个802.1Q的内容,里面有VLAN 10,符合我们设置的。

IEEE 802.3帧
这个帧主要用在各种配置报文上面,因为不是主流,所以不做太多分析。
直接抓包

我们可以看到在这个包里面,原本Ethernet II中的type变成了length,然后多了LLC字段
IPV4数据包格式
Header Length(报头长度)
这个字段仅表示IPV4报头部分字节数,包括了选填和填充,但是不包括data,IPV4长度固定是20,加上选填和填充不能超过60字节。
Total Length(总长度)
是整个IPV4数据包的字节数,包括报头和data部分,一共16位,可表示最大的65535,也就是64KB,没有最小长度限制,超过1500字节就要进行分片。
Flags(标志)
包括3个标志位,仅对经过分片的IPv4数据包有意义,000,第一位必须为0,第二位表示是否允许分片,允许为0,不允许为1,第三位表示是否是最后一个分片,如果是则为0,不是为1,
所以可以有的组合为3种
010,表示可以不可以分片,也没有被分片
001,表示可以分片,且这个为其中的一个,后面还有分片
000,表示可以分片,这个是最后一个分片或者没有被分片
注意:011不可以存在,逻辑上就不通顺,不能即表示不可以分片,又表示这是其中的一个分片,后面还有,相互矛盾。
Fragment Offsrt(分片偏移)
仅对有分片的有效,有8位,第一个分片为0,之后的分片递加,越大的值分片越靠后,
抓包分析

我们可以分析这个包,首先它的报头长度是20字节,总长度是60字节,也就是说data有4
0字节,flags标志是000,表示可以分片且是最后一个分片或者是可以分片但是没有被分片,portocol是icmp协议也就是ping命令。