Тюнинг Wireshark

Анализатор пакетов Wireshark является мощным инструментом как для сбора, так и для анализа трафика. Ранее мы уже рассматривали использование Wireshark для работы с пакетами DNS. В этой статье мы рассмотрим различные приемы гибкой настройки данного инструмента для того, чтобы сделать работу с ним более удобной и эффективной.

Настройки Wireshark спрятаны в разделе Edit → Preferences… Здесь нам доступно множество различных настроек и подробно останавливаться на каждой мы не будем. В разделе Appearance мы можем указать различные настройки для визуального отображения: шрифты, используемые цвета, сохранение размеров и расположения основного окна и многое другое.

Добавляем столбцы

Также во вкладке Columns мы можем добавить или удалить дополнительные столбцы.

73b985b2229a18974ab8d6370021251f.png

Нажимаем + и выбираем из списка нужный столбец. Например, можно выбрать отображение MAC адресов или другое значение.

eac9f915997a11449f905f96dd75da66.png

В итоге получаем отображение содержимого дополнительных столбцов. Удобно для кастомной настройки.

9e3f9b3311af61c4625e3b3f7fa8e9ee.png

В вкладке Layout мы можем поменять расположение панелей, поместив их например вертикально:

70c27caf389317f83e60455a4b8f7978.png

Возможно, кому такое отображение будет удобнее.

Собственные фильтры

В разделе Filter Buttons мы можем составить собственный фильтр для поиска пакетов и поместить кнопку, вызывающую этот фильтр на основной экран. Для этого также нажимаем + и указываем название кнопки в поле Button Label, а в поле Filter Expression пишем выражение, по которому должна осуществляться выборка.

В примере ниже мы фильтруем пакеты, в которых присутствуют порты 80 и 443.

60334c5d2996023dd5ae95fbb2045938.png

В результате на рабочем столе у нас есть соответствующая кнопка, при нажатии на которую автоматически применяется соответствующий фильтр.

c71481555dec7dcb37dc1a064c857e6e.png

Настройка протоколов

Работая со специфичными прикладными протоколами можно столкнуться с ситуацией, когда Wireshark не совсем корректно разбирает тот или иной протокол. Типичной проблемой является то, что он не видит конкретный прикладной протокол и отображает его пакеты просто как TCP, несмотря на то, что на основании номера порта он должен бы помечать данный протокол как прикладной.

Для борьбы с этим в первую очередь можно заглянуть в раздел Protocols и там попробовать найти нужный протокол. Например, посмотрим настройки протокола MySQL.

6e6668612870c5749b29da9a3951cc42.png

Здесь мы видим в настройках возможность поменять номер порта. Возможно, в вашей сети для соединения используется другой номер порта. Также здесь есть дополнительные опции, которые при необходимости можно включить или выключить. Так, здесь нам предлагается пересобирать буфферы из нескольких сегментов и отображать запросы в поле INFO.

Меняем раскраску

Продолжая тему работы с различными протоколами в Wireshark давайте посмотрим, как можно изменить внешний вид для тех или иных пакетов. Как вы уже видели ранее различные пакеты отображаются различными цветами. Так пакеты, связанные с потенциальным разрывом соединения раскрашиваются в красный цвет, пакеты сетевого уровня в желтый и т.д.

Работая со специфичными протоколами нам было бы удобно визуально помечать их в подходящую цветовую гамму, позволяющую их быстро увидеть в общем потоке трафика. Здесь нам потребуется вкладка Edit и раздел Coloring Rules. Далее с помощью уже знакомой нам кнопки + добавляем запись.

9f029f460908638be263bd1151146ec4.png

При этом мы указываем название и выражение для фильтра. Не забываем выбрать галочку, для того, чтобы сделать правило активным.

Цветовую гамму мы выбираем с помощью кнопок Background и Foreground соответственно. Кстати готовые настройки можно экспортировать для того, чтобы затем применить на другой машине.

Свой профиль

Мы уже настроили много всего интересного, однако на практике часто бывает так, что для выполнения разных задач необходимы разные настройки. Тогда для того, чтобы не включать каждый раз нужные настройки мы можем воспользоваться профилями.

В профиле конфигурации Wireshark хранится следующее.

  • Глобальные параметры настройки

  • Фильтры перехвата

  • Фильтры отображения

  • Правила выделения цветом

  • Запрещенные сетевые протоколы

  • Принудительные раскодировки

  • Недавние установки, в том числе размеры панелей, настройки представления меню и ширина столбцов

  • Характерные для протоколов таблицы

Для работы с профилями выберем в меню Edit раздел Configuration Profiles…

a224e1bc3886fbcbb8ca83f9bc152386.png

По умолчанию здесь уже есть профили Default, Bluetooth, Classic, No Reassembly. И используемым профилем является Default.

Для создания нового профиля просто нажимаем уже знакомый нам + и даем название новому профилю. Тип этого профиля должен быть Personal.

8cad8f0dd27389d323571d40de3a98a4.png

Теперь мы можем легко переключиться в этот профиль, просто нажав Profile в правой нижней части экрана, и использовать те настройки параметры, которые были в нем сохранены.

16b36d6bd9b60e87d943b11436239900.png

Профили также можно экспортировать и импортировать на другие машины.

Заключение

В этой статье мы рассмотрели некоторые полезные настройки кастомизации Wireshark, которые позволят инженерам DevOps эффективнее работать с трафиком.

В завершение напоминаю об открытом уроке, который пройдет в OTUS 15 мая: «Технология контейнеризации. Введение в Docker». Вы узнаете, что такое контейнеры, как они работают и чем отличаются от виртуальных машин. Записаться бесплатно можно по ссылке.

© Habrahabr.ru