编者按:如果你想用Sniffer捕帧,并解决网络问题,那网络协议就一定要相对了解,本文就从局域网协议入手,解决Sniffer捕帧问题。
局域网的几种协议,主要包括以太网第二版、IEEE802系列、令牌环网和SNAP等(之所以加个“等”字,是因为我只知道这几种,如果还有其他的,欢迎朋友们给我补充)。而最为常见的,也就是以太网第二版和IEEE802系列,我们也主要去了解这两种(IEEE802包括好多种,我们也不一一介绍,只对其中常见做研究)。
一,以太网(V2)
以太网第二版是早期的版本,是由DEC、Intel和Xerox联合首创,简称DIX。帧格式如下图:
前导信息:采用1和0的交替模式,在每个数据包起始处提供5MHZ的时钟信号,以充许接收设备锁定进入的位流。
目标地址:数据传输的目标MAC地址。
源 地 址:数据传输的源MAC地址。
以太网类型:标识了帧中所含信息的上层协议。
数据加填充位:这一帧所带有的数据信息。(以太网帧的大小是可变的。每个帧包括一个1 4字节的报头和一个4字节的帧校验序列域。这两个域增加了1 8字节的帧长度。帧的数据部分可以包括从4 6字节到1 5 0 0字节长的信息(如果传输小于4 6字节的数据,则网络将对数据部分填充填充位直到长度为4 6字节)。因此,以太网帧的最小长度为1 8 + 4 6,或6 4个字节,最大长度为1 8 + 1 5 0 0,或1 5 1 8个字节。)
F C S : 帧校验序列( F C S,Frame Check Sequence)域确保接收到的数据与发送时的数据一样。当源节点发送数据时,它执行一种称为循环冗余校验( C R C,Cyclical Redundancy Check)的算法。C R C利用帧中前面所有域的值生成一个惟一的4字节长的数,即F C S。当目标节点接收数据帧时,它通过C R C破解F C S并确定帧的域与它们原有的形式一致。如果这种比较失败,则接收节点认为帧已经在发送过程中被破坏并要求源节点重发该数据。
[1] [2] [3] 下一页