WireShark如何知道保存的Pcap文件是否包括FCS?

时间:2015-05-28 13:29:45

标签: wireshark sniffer

我正在使用wireshark。我使用wireshark用FCS嗅探数据包并保存到HardDisk中的pcap文件中。在运行时,它可以知道是否包含FCS。但我怀疑的是,当我使用wireshark打开一个保存的pcap文件时,它是如何知道是否使用FCS捕获保存的文件? wireshark如何通过FCS区分文件? pcap文件中是否有任何变量可以知道这个?

1 个答案:

答案 0 :(得分:1)

  

当我使用wireshark打开保存的pcap文件时,它是如何知道是否使用FCS捕获保存的文件?

不知道猜测,基于:

  • 通过以太网发送实际数据包的时间长度(例如,IPv4数据包具有“总长度”字段);
  • 以太网数据包的长度(可能比实际数据包所需的时间长,因为以太网数据包必须至少为64个八位字节长,包括以太网报头,以太网有效负载和FCS)。

如果以太网数据包看起来比没有 FCS的那么长4个八位字节,那么Wireshark认为这4个八位字节是FCS。

  

wireshark如何使用FCS区分文件?

某些文件格式始终包含FCS,某些文件格式从不包含FCS,某些文件格式(如pcap)可能包含也可能不包含FCS。处理不同捕获文件格式的代码表示实际读取文件的Wireshark中的代码。

  

pcap文件中是否有任何变量可以知道这个?

不幸的是,不,没有,这就是为什么Wireshark必须猜测的。

  

如果802.11存在管理数据包,我们无法知道数据包的确切长度,因为存在可变长度的信息元素。在那种情况下,Wireshark如何猜测FCS?

没有。

对于802.11,与以太网一样,某些文件格式始终包含FCS,某些文件格式从不包含FCS,某些文件格式(如pcap)可能包含也可能不包含FCS。处理不同捕获文件格式的代码表示实际读取文件的Wireshark中的代码。

对于可能包含或不包含FCS的文件格式:

  • 如果数据包在802.11标头之前没有radiotap元数据标头,Wireshark会检查用户必须设置的首选项(您无法在文件中指明它) );
  • 如果数据包有一个radiotap标头,并且它包含一个Flags字段,Wireshark会检查该字段中的“frame includes FCS”标志。