решение1
Для каждого поля, которое вы хотите добавить в качестве столбца, проще всего сначала выбрать поле, скажем,«Код функции»в качестве примера. Когда вы его выберете, вы заметите, что строка состояния в нижней части окна Wireshark покажет вам, какой фильтр отображения Wireshark используется для этого поля, и в этом примере это будет modbus.func_code
. Это один из способов узнать фильтр отображения для заданного поля.
Теперь, если вы щелкните правой кнопкой мыши по полю, вы можете выбратьПрименить как столбец. Поле будет добавлено как новый столбец. После добавления вы можете перетащить поле в любое желаемое место столбца. Вы также можете добавлять столбцы через главное меню, но если вы добавляете их таким образом, вам нужно будет знать имя фильтра отображения Wireshark, чтобы ввести его при добавлении, что можно сделать следующим образом:Правка -> Настройки -> Столбцы -> + -> [Дважды щелкните заголовок нового столбца по умолчанию и переименуйте его, дважды щелкните тип числа по умолчанию и выберите «Пользовательский», дважды щелкните в разделе «Поля» и введите фильтр отображения, например, modbus.func_code].
Если вы не знаете название фильтра отображения, вы можете найти его как минимум тремя способами:
- Wireshark-программаСсылка на фильтр отображенияна странице перечислены все фильтры отображения и указано, к каким версиям Wireshark относится каждый фильтр отображения.
- Из графического интерфейса Wireshark: Редактировать ->Вид -> Внутреннее устройство -> Поддерживаемые протоколы -> Modbus -> [Развернуть]
- Вы также можете использовать
tshark
для их отображения, например:
В Windows:
tshark -G fields | findstr "modbus\."
На *nix:
tshark -G fields | grep "modbus\."
Вы можете повторить этот процесс для любого количества полей, которое вы хотите. Перед добавлением полей, специфичных для Modbus, в столбцы, возможно, стоит сначала создать новый"Модбус"профиль, поэтому эти поля будут отображаться только как столбцы, когда вы изучаете пакеты Modbus. Добавьте новый профиль, щелкнув правой кнопкой мыши по профилю в правом нижнем углу строки состояния и выбравНовыйилиУправление профилями. Вы также можете добавить новый профиль через главное меню:Редактировать -> Профили конфигурации.
Я уже упоминал tshark
выше; это эквивалент Wireshark для командной строки, и он позволяет вам печатать только нужные вам поля, затем вы можете перенаправить этот вывод в текстовый файл, который затем можно импортировать в другие программы для дальнейшей обработки. Пример:
tshark -r file.pcap -Y "modbus" -T fields -E separator=/t -e frame.number -e modbus.func_code -e modbus.byte_cnt > file.txt
tshark
имеет множество опций, поэтому обязательно прочтите страницу руководства, чтобы лучше понять, как его использовать.
Если вы не используете tshark
, то экспортируйте данные из графического интерфейса Wireshark с помощью:Файл -> Экспортировать разборы пакетов -> Как CSV... -> [Выберите/отмените выбор нужных параметров, выберите имя файла и нажмите «Сохранить»].
Наконец, WiresharkГид пользователятакже является отличным источником информации.