Как WireShark узнает, что сохраненные файлы Pcap включают FCS или нет?

Я использую Wireshark. Я перехватывал пакеты с помощью FCS, используя wireshark, и сохранял их в файл pcap на жестком диске. Во время выполнения он может знать, включена FCS или нет. Но я сомневаюсь, что когда я открываю сохраненный файл pcap с помощью wireshark, как он узнает, захвачен ли сохраненный файл с помощью FCS или нет? Как wireshark различает файлы с помощью FCS? Есть ли какая-либо переменная в файле pcap, чтобы знать это?


person Sathish Reddy    schedule 28.05.2015    source источник


Ответы (1)


когда я открываю сохраненный файл pcap с помощью wireshark, как он узнает, захвачен ли сохраненный файл с помощью FCS или нет?

Он не знает. Он предполагает на основе:

  • какова длина фактического пакета, отправляемого через Ethernet (например, пакеты IPv4 имеют поле «общая длина»);
  • длина пакета Ethernet (он может быть длиннее, чем требуется для фактического пакета, поскольку пакеты Ethernet должны иметь длину не менее 64 октетов, включая заголовок Ethernet, полезную нагрузку Ethernet и FCS).

Если пакет Ethernet выглядит на 4 октета длиннее, чем он был бы без FCS, Wireshark предполагает, что эти 4 октета и есть FCS.

Как wireshark различает файлы с помощью FCS?

Некоторые форматы файлов всегда включают FCS, некоторые форматы файлов никогда не включают FCS, а некоторые форматы файлов, такие как pcap, могут включать или не включать FCS. Код, обрабатывающий различные форматы файлов захвата, указывает на это коду в Wireshark, который фактически считывает файлы.

Есть ли какая-либо переменная в файле pcap, чтобы знать это?

К сожалению, нет, поэтому Wireshark приходится догадываться.

В случае 802.11 существуют пакеты управления, мы не можем знать точную длину пакетов, поскольку существуют информационные элементы переменной длины. В таком случае, как Wireshark угадывает FCS?

Это не так.

Для 802.11, как и для Ethernet, некоторые форматы файлов всегда включают FCS, некоторые форматы файлов никогда не включают FCS, а некоторые форматы файлов, такие как pcap, могут включать или не включать FCS. Код, обрабатывающий различные форматы файлов захвата, указывает на это коду в Wireshark, который фактически считывает файлы.

Для форматов файлов, которые могут включать или не включать FCS:

  • если в пакетах нет заголовка метаданных radiotap перед заголовком 802.11, Wireshark проверяет предпочтение, которое пользователь должен установить (вы не можете указать это в файле);
  • если пакеты есть, имеют заголовок radiotap и включают Flags, Wireshark проверяет флаг «кадр включает FCS» в этом поле.
person Community    schedule 28.05.2015
comment
Спасибо за ответ ... В случае 802.11 существуют пакеты управления, мы не можем знать точную длину пакетов, потому что существуют информационные элементы переменной длины. В таком случае, как Wireshark угадывает FCS? - person Sathish Reddy; 29.05.2015