Wireshark представляет собой удобный инструмент для анализа сетевых пакетов и траблшутинга (поиска неисправностей в сети). Среди множества доступных инструментов в самой программе очень легко запутаться. Кроме того, при частом анализе той или иной проблемы в сети приходится заново настраивать фильтры, окружение и прочие переменные.
Чтобы облегчить жизнь сетевым инженерам и администраторам разработчики реализовали возможность кастомизации программы под анализ различного рода трафика. Пользователи могут создать свой собственный профиль, настроить различные фильтры, параметры и сохранить в созданном профиле. Профили могут быть разные, например, для анализа TCP пакетов, Wi-Fi или HTTP трафика, процесса обмена ключами в VPN и так далее.
При необходимости можно переключиться на нужный профиль и использовать заранее подготовленные настройки.
Итак, рассмотрим что можно настроить в программе.
Профиль
Для начала создадим требуемый профиль. После установки программы пользователям доступны несколько профилей.
Чтобы создать новый профиль перейдем Edit → Configuration profiles … и перед нами откроется менеджер профилей.
Добавим профиль и введем название. Возможно программа запросит перезагрузиться. После перезапуска в качестве текущего будет установлен только что созданный профиль.
Теперь настроим другие параметры, которые будут автоматически сохранены в текущем профиле.
Слои
Для отображения пакетов используются 3 слоя: Список пакетов, Детальное отображение пакетов, Байты.
По умолчанию они располагаются горизонтально один за другим. Однако данное расположение можно изменить для удобства восприятия пакетов. Откройте Edit → Configuration Profiles… → Layout
Выбирайте схему, которая вам больше по душе.
Фильтры
В статье “Фильтры захвата и отображения в Wireshark” мы рассматривали как настроить и сохранить фильтры захвата и отображения. Кроме того, мы также научились добавлять кнопки, с помощью которых можно вызвать тот или иной фильтр отображения. Настройте необходимые фильтры и данные настройки будут сохранены и доступны только в текущем профиле.
Колонки
По умолчанию в программе уже настроены некоторые колонки. Однако мы можем их отредактировать и добавить новые. Существуют 2 способа добавить колонки.
1-й способ
Наведите курсор мыши на название колонок и откройте контекстное меню. Выберете Column preferences …
В открывшемся окне удалите или добавьте требуемую колонку. В поле Title введите название, в поле Type выберете тип параметра.
Новый объект сразу отобразится в основном окне Wireshark.
Чтобы отредактировать уже существующий элемент снова откройте контекстное меню и выберите Edit Column.
Для сортировки пакетов по определенному параметру достаточно кликнуть на название соответствующей колонки.
2-й способ
Допустим вы анализируете TCP пакет и хотите отобразить определенный параметр в отдельной колонке, например, номер потока TCP. Для этого выберете любой TCP пакет, раскройте его и выделите требуемый параметр. Откройте контекстное меню и выберете опцию Apply as Column.
Теперь при желании мы можем отсортировать пакеты по номеру потока и времени поступления и визуально представить TCP пакеты от различных приложений (это не единственный способ визуального наблюдения за потоками TCP, в одном из уроков мы рассмотрим другие методы).
Время
Wireshark отображает время захвата каждого пакета в соответствии с установками на вашей системе. Формат отображения времени можно поменять через View → Time Display Format.
Думаю многие опции понятны и говорят сами за себя. Рассмотрим подробнее Seconds Since Previous Captured Packet и Seconds Since Previous Displayed Packet.
Seconds Since Previous Captured Packet означает относительное время с момента захвата предыдущего пакета. Самый первый пакет отображается со значением 0.00000. Значение для второго пакета вычисляется по формуле: абсолютное время принятия второго пакета минус абсолютное время принятия первого пакета.
Seconds Since Previous Displayed Packet тоже относительное время, однако в этот раз в качестве точки отсчета берется предыдущий отображенный пакет (не захваченный). Данная опция полезна, если используются фильтры и требуется отобразить относительное время между 2-мя пакетами одного протокола. Например, вы анализируете DNS запросы и хотите определить задержку между запросом и ответом.
Кстати, для анализа относительного времени между захваченными и отображаемыми пакетами можно добавить дополнительную колонку с параметрами Delta time и Delta time displayed соответственно.
Цвета
Программа Wireshark используют различные цвета для отображения определенных пакетов. Например, пакеты с неправильной контрольной суммой отображаются черным цветом, TCP и UDP пакеты — голубым цветом.
Мы можем добавить новые правила подсветки пакетов. Например, отобразим DNS запросы желтым цветом, а DNS ответы — красным. Для этого откроем менеджер настройки цветов через View → Coloring Rules… и добавим новое правило. В левой части вписываем название, а в правой — фильтр отображения.
Подобным образом мы можем “окрасить” и любые другие пакеты, например, OSPF или EIGRP.