Изучая работу сниффера Wireshark я задумался о том, что было бы неплохо иметь инструмент, который не просто просматривает информацию о пакетах в сети, но и умеет их генерировать. То есть посылать в среду передачи сформированные кадры с произвольными значениями.
Где это может быть необходимо:
- Тестирование правил файрволла. Посылая пакеты с нужной нам частотой и нужным содержимым можем точно понять, какие данные будут фильтроваться, а какие нет;
- Тестирование ACL в Cisco.
- Тестирование отказоустойчивовсти разных сервисов;
- Изучение особенностей стека TCP/IP и модели OSI на примерах;
- …
Да мало ли чего ещё! Одним словом, генерация произвольного пакета это очень нужный навык в сетевом деле. И вот такой инструмент найден! Выкладываю его. Совершенно бесплатен:
Ostinato Trafic Generator (6 Mb), который выложу ниже. Решите, нужен ли вам этот инструмент.
Видеоролик
Интерфейс программы:

После запуска мы увидим это окно. Слева – список всех интерфейсов, через которые возможно пересылать данные. Снизу – статистика по ним (количество переданных/полученных фреймов, скорость передачи и т.д.). Справа – редактор “очередей”. Создавать можно несколько очередей, которые выстреливают пакеты. После истощения первой очереди (например 10 ICMP-пакетов) можно запустить 10 TCP пакетов, и т.д. Очередь можно зациклить.
Настройки очереди:

Собственно настраиваются все уровни OSI, включая тег VLAN, метод инкапсуляции, протоколы низкого уровня (IPv4, IPv6, ARP), протоколы 4-го уровня (TCP, ICMP), а так же содержимое пакета, которое может быть текстом, например.
Данные протоколов: с самого низкого уровня, начинаем задавать MAC-адреса источника и назначения.

Версия протокола IP, флаги, смещения, адрес назначения и источника. Одним словом редактируем все поля.

В настройках TCP, например, можно выставить флаги, установить номер пакета, номера портов и т.д.
Далее – настройка передачи:
Устанавливаются, как будут передаваться данные. Пакетами или взрывом, количество пакетов и скорость передачи пакетов в секунду. Ну и действие, что будет происходить после передачи всех пакетов.

Последнее окно – финальный вид пакета. Вывод очень поход на вывод Wireshark-а.

Чтобы понять, как работать с программой – просмотрите моё видео в начале статьи! Удачи в освоении!
Comments: