Введение
В этом практическом занятии (лабораторной работе) вы научитесь эффективным методам обработки больших файлов с пакетными захватами с использованием командной строки tshark из Wireshark. Вы научитесь открывать файлы PCAP с помощью параметра -r, ограничивать количество пакетов с помощью -c, фильтровать трафик с помощью -Y и экспортировать подмножества пакетов с помощью -w.
Путем выполнения практических упражнений вы овладеете обработкой больших наборов данных, применяя ограничения на количество пакетов, фильтры по протоколам и сегментацию файлов. Эти навыки являются важными для сценариев сетевого устранения неполадок, которые требуют оптимизации ресурсов и точного извлечения данных.
Открыть файл с помощью -r large.pcap
На этом этапе вы научитесь открывать и изучать файл с пакетным захватом (PCAP) с использованием командной строки tshark из Wireshark. Файлы PCAP содержат данные о сетевом трафике, захваченные с сетевого интерфейса. Опция -r означает "читать" и указывает tshark, какой файл необходимо обработать.
Сначала нам нужно перейти в каталог, содержащий файл с пакетным захватом. В терминале выполните следующую команду:
cd ~/projectЭта команда изменяет текущий рабочий каталог на тот, где хранится файл
large.pcap. Важно находиться в правильном каталоге, чтобыtsharkмог найти файл.Теперь откроем и отобразим содержимое файла
large.pcapс помощью следующей команды:tshark -r large.pcapЭта команда считывает файл и выводит данные о пакетах в терминал. Каждая строка представляет собой один сетевой пакет, который был захвачен.
Вывод показывает несколько важных столбцов информации для каждого пакета:
- Номер пакета: Порядковый номер пакета в захвате.
- Временная метка (Timestamp): Время, когда пакет был захвачен.
- IP-адреса источника и назначения: Откуда пришел пакет и куда он направлен.
- Протокол: Используемый сетевой протокол (например, TCP, UDP, HTTP).
- Длина: Размер пакета в байтах.
- Информация (Info): Дополнительные детали о содержимом пакета.
Поскольку большие файлы PCAP могут генерировать огромный объем вывода, можно упростить его чтение, используя конвейер (pipe) к
less:tshark -r large.pcap | lessЭто позволяет прокручивать вывод по страницам с помощью стрелочных клавиш. Чтобы выйти из просмотрщика и вернуться к командной строке, нажмите
q.
Ограничить обработку с помощью -c 10000
На этом этапе мы рассмотрим, как контролировать объем обрабатываемых данных из больших файлов с пакетными захватами. При работе с сетевым анализом вы часто будете сталкиваться с очень большими файлами PCAP, которые могут содержать миллионы пакетов. Обработка всех пакетов сразу может быть затратной по времени и ресурсам. Именно здесь опция -c в tshark становится полезной.
Флаг -c позволяет вам точно указать, сколько пакетов вы хотите обработать с начала файла. Это особенно полезно, когда вы только тестируете подход к анализу или когда вам нужно рассмотреть только репрезентативную выборку трафика.
Сначала убедимся, что мы находимся в правильном рабочем каталоге, где расположен наш файл с захватом:
cd ~/projectТеперь обработаем только первые 10 000 пакетов из файла
large.pcap. Структура команды проста: укажите входной файл с помощью-rи ограничение по количеству пакетов с помощью-c:tshark -r large.pcap -c 10000После завершения выполнения команды вы увидите подтверждение, что именно 10 000 пакетов были обработаны. Вывод четко будет указывать:
10000 packets capturedПоскольку даже 10 000 пакетов могут генерировать значительный объем вывода, мы можем направить результаты в
lessдля более удобного просмотра. Это позволит вам прокручивать вывод по страницам:tshark -r large.pcap -c 10000 | lessПрактические сценарии, в которых ограничение обработки пакетов является полезным, включают:
- Быстрый анализ больших файлов без ожидания полной обработки.
- Проверка правильности синтаксиса фильтра перед применением его ко всему файлу.
- Экономия системных ресурсов, когда вам нужна только выборка трафика.
- Тестирование скриптов анализа на управляемом наборе данных перед масштабированием.
Фильтровать IP-трафик с помощью -Y "ip"
На этом этапе мы сосредоточимся на фильтрации сетевого трафика для отображения только IP-пакетов с использованием мощной опции отображения фильтра -Y в Tshark. Это особенно полезно при работе с большими файлами с захватами, когда вам нужно быстро выделить трафик определенного протокола.
Сначала перейдем в каталог проекта, где хранится наш файл с захватом. Это гарантирует, что мы работаем с правильным файлом:
cd ~/projectТеперь используем фильтр
-Yдля отображения только IP-трафика из нашего файла с захватом. Следующая команда считывает файл 'large.pcap' и применяет наш фильтр:tshark -r large.pcap -Y "ip"После выполнения этой команды вы заметите, что вывод показывает только пакеты, которые соответствуют следующим критериям:
- Используют либо протокол IPv4, либо IPv6.
- Содержат правильные IP-заголовки в своей структуре.
- Исключают не-IP-трафик, такой как ARP (Address Resolution Protocol) или STP (Spanning Tree Protocol).
Для более удобной работы с большими файлами мы можем комбинировать этот фильтр с другими опциями, которые мы уже изучили. В этом примере обработка ограничена 10 000 пакетами, и вывод направляется в
lessдля более удобного просмотра:tshark -r large.pcap -c 10000 -Y "ip" | lessФильтр
-Yиспользует синтаксис отображения фильтра Wireshark, который предоставляет множество возможностей, включая:- Фильтрацию на основе протокола (ip, tcp, udp).
- Фильтрацию по адресам источника/назначения (ip.src, ip.dst).
- Фильтрацию по номерам портов (tcp.port, udp.port).
Сохранить подмножество с помощью -w small.pcap
На этом этапе вы узнаете, как извлечь и сохранить определенную часть сетевого трафика из большого файла с захватами. Это особенно полезно при работе с огромными файлами PCAP, анализ которых целиком может потребовать слишком много ресурсов.
Сначала перейдите в каталог проекта, где хранятся ваши файлы с захватами. Это гарантирует, что все операции с файлами будут выполняться в правильном месте:
cd ~/projectСледующая команда демонстрирует, как объединить несколько функций Tshark для создания управляемого подмножества файла. Здесь мы читаем из файла 'large.pcap', но сохраняем только первые 10 000 IP - пакетов:
tshark -r large.pcap -c 10000 -Y "ip" -w small.pcapРазберем эту команду по частям:
-r large.pcapуказывает входной файл.-c 10000ограничивает обработку первыми 10 000 пакетами.-Y "ip"применяет фильтр отображения, чтобы включить только IP - трафик.-w small.pcapзаписывает отфильтрованные результаты в новый файл.
После выполнения команды убедитесь, что выходной файл был успешно создан. Команда
lsс флагами-lhпоказывает размер файла в человекочитаемом формате (например, КБ/МБ) вместе с другими деталями:ls -lh small.pcapТеперь вы можете работать с этим меньшим, отфильтрованным файлом более эффективно. Чтобы просмотреть его содержимое, направьте вывод в
less, которое позволяет прокручивать пакеты:tshark -r small.pcap | lessЭто намного быстрее, чем обработка исходного большого файла, при этом в файле содержится только IP - трафик, который вы указали.
Резюме
В этом лабораторном занятии вы изучили ключевые методы для эффективной обработки больших файлов с захватами пакетов с использованием командной строки tshark из Wireshark. Вы практиковались в открытии файлов с помощью -r, ограничении количества пакетов с помощью -c, применении фильтров отображения с помощью -Y и экспорте подмножеств с помощью -w для эффективного управления большими наборами данных.
В упражнениях были продемонстрированы практические навыки для анализа в терминале, включая навигацию по выводу с помощью less и целенаправленное извлечение пакетов. Эти возможности являются важными для сетевых специалистов, работающих с обширными захватами трафика, при оптимизации использования системных ресурсов.


