Материал просмотрен 2,215 раз(а)

В одной из предыдущих статей я рассматривал генерацию произвольных пакетов в сеть. Программа Ostinato неплоха, но есть и аналоги, один из которых я и хотел бы рассмотреть сейчас. Речь пойдёт о программе Cat KARAT. 🙂

Внешний вид программы весьма понятен. Панель инструментов, список интерфейсов (1). Выбирать “шумящую” карточку можно двойным кликом. Справа – редактор потока. Выбираем уровни OSI, через какие модификаторы пройдёт пакет, прежде чем выйдет наружу. Я выставил (2) -> IPv4 (3) -> UDP  (4)->.

Внизу (5), во вкладках, начинаем редактировать параметры пакетов.

Общий вид

Общий вид

На вкладке Control мы можем изменить количество генерируемых пакетов (1) и паузу между ними (2)

Параметры передачи

Параметры передачи

Следующая вкладка – 2-ой уровень OSI. Выставляем аппаратные адреса источника и получателя. Для удобства есть быстрые кнопки, записать свой MAC-адрес и в назначение поставить бродкаст, то есть широковещательный пакет, который получат все устройства сегмента.

Источник и получатель

Источник и получатель

Следующая вкладка – редактирование параметров IP протокола (3 уровень). Здесь мы можем изменить IP источника и IP получателя. Опять же, есть кнопки быстрого заполнения полей адресов – свой и широковещательный. Помимо этого здесь можно редактировать некоторые параметры пакета, фрагментацию, протокол инкапсулированного уровня, QoS-флаги…

Редактируем IP пакет

Редактируем IP пакет

Далее меняем поля UDP-пакета. Здесь не так уж и много вариантов – порты источника и получения, контрольная сумма и длина пакета.

Параметры UDP

Параметры UDP

При выборе других путей следования потока (например протокол ARP или DHCP) будут появляться другие вкладки, где можно редактировать параметры:

ARP протокол

ARP протокол

Но вернемся к UDP. Послать пакет в сеть можно нажав кнопку “Play”. Я настроил виртуальную машину с Linux Microcore на втором конце и посадил туда tcpdump:

Пакет пришел

Пакет пришел

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

А вот то же самое, но в виндовом WireShark на машине-источнике (отправил 2 раза):

Виндовый вайр-шарк

Виндовый вайр-шарк

Адрес получателя – широковещательный. Адрес источника – мой MAC. Ip адреса соответствуют указанным. Ну и порты точно так же, соответствуют.

Возможно эта программа вам понравится не меньше, чем Остинато.